121 Commits

Author SHA1 Message Date
Surya Paolo
e47772ab34 Revert "Aggiornamento a 0.6.1"
This reverts commit 701e1f1968.
2023-04-07 18:01:09 +02:00
Surya Paolo
0365c58326 cambio nome ai circuiti 2023-03-23 15:37:28 +01:00
Surya Paolo
eb53557090 filter visible if selected, different from friends, hosp, and services 2023-03-23 00:42:57 +01:00
Surya Paolo
c28c6c4d8b - Cerca Amici persone: filtro per Regione o Provincia 2023-03-23 00:09:59 +01:00
Surya Paolo
9745133e81 - Find Friends by Region or Province 2023-03-22 22:45:00 +01:00
Surya Paolo
396028748d circuito 2023-03-22 18:10:37 +01:00
Surya Paolo
79cde5c905 - fixed ordinamento tabelle 2023-03-22 16:55:57 +01:00
Surya Paolo
175bba7720 - Provincia obbligatoria, chiedo conferma se non vuole entrare nel circuito. 2023-03-22 15:54:56 +01:00
Surya Paolo
59af1d0b8b - Il circuito viene creato in automatico, quando scegli una provincia. 2023-03-21 18:12:06 +01:00
Surya Paolo
de937c73f7 province visible 2023-03-18 01:27:04 +01:00
Surya Paolo
422a3b6e88 show table movements 2023-03-18 00:57:43 +01:00
Surya Paolo
af04e022eb - Visu Saldo su Home
- SendRisTo
- Movimenti conto Comunitario
- Profilo
2023-03-17 19:07:43 +01:00
Surya Paolo
37c2f08510 - qualifica non ci stava
- lista invia ris ok
2023-03-11 01:29:39 +01:00
Surya Paolo
80610b3627 - Invia Ris a e Ricevi Ris
- Tutorial Guidato Passi da Compiere
- Provincia in cui vivi
- Policy aggiornata
2023-03-11 01:01:23 +01:00
Surya Paolo
7a9689125b - fix: se salvavo un record 'settable' e non era completo con tutti i campi, andava a troncare gli altri precedentemente inseriti
- ordinamento Circuiti per stato e numiscritti e descr
2023-03-05 22:04:28 +01:00
Surya Paolo
3f808189e3 ver 0.5.73:
- corretto invia monete da Conto Collettivo a Utente
- Aggiunto Provincia (tutorial).. in corso...
2023-03-04 10:20:49 +01:00
Surya Paolo
a250700c8b ver 0.5.71:
- Info Conto
- Admin: poter modificare Fido e QtaMax, sia per i Conti Collettivi sia per gli Utenti.
2023-02-23 17:20:54 +01:00
Surya Paolo
c8e0f7922f ver 0.5.71:
- Info Conto
- Admin: poter modificare Fido e QtaMax.
2023-02-23 16:07:52 +01:00
Surya Paolo
19860aa438 - Info sul Conto Collettivo
- HomePage
2023-02-20 02:20:00 +01:00
Surya Paolo
1f5be4624f Lista Richieste e Rifiutati dei Conti Collettivi 2023-02-16 20:13:55 +01:00
Surya Paolo
239cfbe835 Unsubscribe 2023-02-15 21:40:10 +01:00
Surya Paolo
d59eb86d0c fix img profile 2023-02-06 23:50:55 +01:00
Surya Paolo
5c2b28939b - pagine admin: Accounts, Movements e Circuits.
- add change min e max range circuiti (per tutti i record).
2023-02-06 22:58:18 +01:00
Surya Paolo
0234e2323a fix Conti Collettivi + messaggi 2023-02-02 13:53:09 +01:00
Surya Paolo
f79c3b1d77 fix nametoshow 2023-02-02 02:52:27 +01:00
Surya Paolo
d5831e3dbf ver: 0.5.62
Conti Collettivi visibili solo se sei admin...
2023-02-02 02:31:09 +01:00
Surya Paolo
cfa2457147 Invio RIS da User a Conto Comunitario
- Visu movimenti OK
2023-02-01 23:50:58 +01:00
Surya Paolo
97ee2a1129 Conti Comunitari e Collettivi 2023-02-01 16:36:17 +01:00
Surya Paolo
f62ac90b34 go on Conto Comunitario 2023-02-01 01:19:58 +01:00
Surya Paolo
8176902363 Pagina "Attività" non compare bene la scritta Beni e Servizi... ?! 2023-01-29 22:22:41 +01:00
Surya Paolo
23fd5fc5ef Istruzioni per installare l'APP: Android, iOS 2023-01-25 20:52:47 +01:00
Surya Paolo
e58f7249a6 Sulla foto della notifica il click non funziona
check App
2023-01-25 11:55:06 +01:00
Surya Paolo
567f7b4be7 Possibilità di scrivere l'username anche con la chiocciola @ 2023-01-25 10:47:52 +01:00
Surya Paolo
98c0218ef7 Conto Comunitario all'interno di un Circuito 2023-01-21 19:02:26 +01:00
Surya Paolo
42d68eb4b8 fix button registration disabled
Conto Comunitario... passo 2
2023-01-13 12:29:34 +01:00
Surya Paolo
3d77cf671d Conto Comunitario... 2023-01-12 01:03:19 +01:00
Surya Paolo
2acf161d5d 0.5.56 2023-01-09 18:26:27 +01:00
Surya Paolo
b98cda2110 fix SdM
share link
2023-01-09 15:55:18 +01:00
Surya Paolo
a9367d5aef fix strette di mano 2023-01-09 04:05:18 +01:00
Surya Paolo
d684d7a46f Ver 0.5.55
Strette di Mano OK
2023-01-09 02:39:53 +01:00
Surya Paolo
815ca0d565 Stringi la mano (fase prima) 2023-01-08 19:20:25 +01:00
Surya Paolo
4d40efc73a ++Strette di Mano 2023-01-08 02:17:15 +01:00
Surya Paolo
865e1ad738 strette di mano 2023-01-06 15:51:58 +01:00
Surya Paolo
d5d005a714 pagina Attivita + Video e PDF Presentazione 2023-01-05 01:37:25 +01:00
Surya Paolo
98dcea5526 poter visualizzare i propri beni e servizi anche se non sei registrato alla app ! 2023-01-04 02:09:51 +01:00
Surya Paolo
ce4bf65fc4 ver 0.5.51 2023-01-03 16:51:45 +01:00
Surya Paolo
3f9f608d4e Correggere lista circuiti (non compare il titolo e il num. di persone) 2022-12-23 17:12:57 +01:00
Surya Paolo
61451ef994 Fare procedura per cambiare gli username in giro nelle varie tabelle
fix icon Android "Badge" black and white.
2022-12-23 00:37:22 +01:00
Surya Paolo
a8677dc644 Registrazione: far comparire tutti i campi una volta inseriti... cosi comparirà l'errore 2022-12-22 16:48:57 +01:00
Surya Paolo
98fa879112 altro 2022-12-20 21:23:05 +01:00
Surya Paolo
af71b17f1f ancora 2022-12-20 21:22:45 +01:00
Surya Paolo
c1a7baf50d quarto 2022-12-20 18:54:08 +01:00
Surya Paolo
15cd3300e2 sec 2022-12-20 12:35:46 +01:00
Surya Paolo
ef1c82cbb4 prova 2022-12-20 12:35:00 +01:00
Surya Paolo
dbdfa01711 test 2022-12-20 11:58:14 +01:00
Surya Paolo
2a97456c0f fix isAppRunning 2022-12-20 10:58:55 +01:00
Surya Paolo
3aaa94c33e fix: messages and notif Friends Accepteded 2022-12-17 22:12:18 +01:00
Surya Paolo
3c2fc4c806 Fix Registration 2022-12-17 14:12:04 +01:00
Surya Paolo
2b44dfbcb6 Registrazione con scelta se Telegram o Email.
(anche da link personale)
2022-12-16 00:47:05 +01:00
Surya Paolo
b1ec0b6a67 ++ su "Friends" la ricerca per username Telegram e nome e cognome 2022-12-15 21:57:44 +01:00
Surya Paolo
a5e86926e3 fix search memebers
calendar se vuoto non mostrare
2022-12-15 21:14:59 +01:00
Surya Paolo
1291ad319f fix Richieste e Rifiutati (Circuiti) 2022-12-15 18:09:50 +01:00
Surya Paolo
fbcd076705 ++ DebugOn status (to see what happened)
fix visu activities
2022-12-14 22:07:23 +01:00
Surya Paolo
bd0eab53ae Added Button.
Stats
2022-12-14 13:13:28 +01:00
Surya Paolo
97b0a72bb0 Registrazione: scegliere se Telegram o Email 2022-12-12 18:25:19 +01:00
Surya Paolo
ac01af43cb fix pagine che non comparivano immagini 2022-12-11 18:34:01 +01:00
Surya Paolo
c743977b66 Richiesta Cambio Password: ti manda il codice a 6 cifre e poterlo inserire sulla APP. 2022-12-11 18:04:11 +01:00
Surya Paolo
cf990db03a ++ diffusori
fixed user chip
2022-12-11 02:57:45 +01:00
Surya Paolo
955c4daaa1 show last access in profile 2022-12-10 02:42:07 +01:00
Surya Paolo
a521161ae9 show last access in profile 2022-12-10 02:23:56 +01:00
Surya Paolo
cd31d2d020 + Registered Users
+ UsersList Online
2022-12-10 02:01:26 +01:00
Surya Paolo
aeeba5a6b9 editor non si aggiornava se non ero in edit 2022-12-09 13:44:12 +01:00
Surya Paolo
6a42df7861 Aggio App 2022-12-09 03:09:16 +01:00
Surya Paolo
771271fda2 Registrazione senza Telegram 2022-12-09 01:03:52 +01:00
Surya Paolo
56411a4539 2) REGISTRARSI : A) TRAMITE TELEGRAM B) TRAMITE EMAIL. 2022-12-08 10:09:33 +01:00
Surya Paolo
944d121943 - Installa APP: Messaggio in CIMA
- in sistemazione: select compare la scelta di prima.
2022-12-07 18:16:23 +01:00
Surya Paolo
077c2dbd9e Entra circuito se hai aggiunto bene o servizio 2022-12-04 19:50:07 +01:00
Surya Paolo
0498ba891a fix activities 2022-12-03 03:48:53 +01:00
Surya Paolo
5af082ac29 Img Home 2022-12-03 03:32:23 +01:00
Surya Paolo
686dc585e6 Attivare gli scambi RIS solo se si è aggiunto almeno 1 bene o 1 servizio. 2022-12-03 03:14:19 +01:00
Surya Paolo
556d933638 Aggiungere una campanellina in ogni pagina, dove poter aprire la configurazione delle notifiche 2022-12-03 01:58:15 +01:00
Surya Paolo
e11cf19149 Aggiunto la pagina dei Beni e Servizi della persona singola, separata dal profilo. 2022-12-03 01:32:48 +01:00
Surya Paolo
93abed1e8b Eventi: filtro data mettere da oggi ... (senza limite) 2022-12-02 13:31:47 +01:00
Surya Paolo
9b7b25e657 fix Cliccando sul Titolo dell'evento, si apre una pagina in una nuova finestra ! (non rimane sulla APP) 2022-12-02 13:24:20 +01:00
Surya Paolo
009735afad ComboBox q-select "menu" mode ! 2022-12-02 10:55:04 +01:00
Surya Paolo
7deb7b6414 Added Bar Selector City at the Top ! 2022-12-02 10:44:57 +01:00
Surya Paolo
07f5f1c4c9 Aggiunta del Bottone "Aggiungi" 2022-12-01 21:44:33 +01:00
Surya Paolo
bf1e9fc982 FILTRO CITTA Sopra ogni pagina ! 2022-12-01 16:55:22 +01:00
Surya Paolo
9010c0ff37 Click sul Logo -> Va alla HOME 2022-11-30 21:31:32 +01:00
Surya Paolo
f8b9209770 fixed: La modalità Tabella non funziona più ! (non si vede la lista dei movimenti) 2022-11-30 21:26:17 +01:00
Surya Paolo
d79ef8fed3 users list last reg , now can show their profile 2022-11-30 12:38:20 +01:00
Surya Paolo
2ab50779ea fixed tokenreg was not valid. created by date 2022-11-30 12:04:02 +01:00
Surya Paolo
3aff6a9c94 fix column changed value (fieldtype) 2022-11-30 11:36:48 +01:00
Surya Paolo
5a46821621 fixed error in link registration. + upgrade packages 2022-11-30 00:22:17 +01:00
Surya Paolo
92061fe530 Aggiungendo un Gruppo, non mi fa aggiungere l'immagine all'inizio (ma solo in modifica). 2022-11-29 17:40:58 +01:00
Surya Paolo
b8f2320c0a Il link di un gruppo non può contenere la barra... o altri caratteri speciali 2022-11-29 17:35:41 +01:00
Surya Paolo
d6f537473e Dark mode fix first page loading 2022-11-29 15:25:06 +01:00
Surya Paolo
1ab75a58f4 Others Elements for the Pages 2022-11-29 13:59:18 +01:00
Surya Paolo
9d32f92589 Updated riso.app with Site Configuration Parameter 2022-11-29 00:16:25 +01:00
Surya Paolo
58dc1dfdcc Site Configuration by Server Params (confsites and confpages) 2022-11-28 14:00:15 +01:00
Surya Paolo
fab0dbbb72 ++ Animation fixed in Home pic.
++"Dark Mode"
2022-11-23 23:57:21 +01:00
Surya Paolo
46bf74e9e2 Animations, Policy, Toolbar Colors 2022-11-23 10:27:36 +01:00
Surya Paolo
358bdd5d1e Animations in the WebEditor 2022-11-20 10:21:02 +01:00
Surya Paolo
a56ee80fbb CSS Animations 2022-11-18 18:54:30 +01:00
Surya Paolo
495abc33be Web Editor home made 2022-11-17 08:10:43 +01:00
Surya Paolo
711f1b515d HTML Editor go on 2022-11-13 22:39:25 +01:00
Surya Paolo
5076d72523 prova modif 2022-11-12 12:27:26 +01:00
Surya Paolo
3c20038c68 Altro 2022-11-12 11:52:20 +01:00
paoloar77
f3a2f2491e Merge remote-tracking branch 'origin/develop' into develop 2022-11-11 18:17:35 +01:00
paoloar77
a751c99237 Webpage Editor: Carousel Images 2022-11-11 18:16:28 +01:00
Surya
1dac8b032d Delete .env.test 2022-11-11 00:05:23 +01:00
Surya
2c1fc3be23 Delete .env.test 2022-11-11 00:05:12 +01:00
Surya
3f8ad4a777 Delete .env.test 2022-11-11 00:04:49 +01:00
Surya
f80108d243 Delete .env.development 2022-11-11 00:04:13 +01:00
paoloar77
9fe37c9f3c Webpage Editor functionality 2022-11-10 19:32:56 +01:00
paoloar77
2bd31200b4 image Home 2022-11-07 13:45:34 +01:00
paoloar77
3302d9c23e - Add saldo to member's list 2022-11-06 13:38:38 +01:00
paoloar77
5a3205ebda Togliere "in attesa di abilitazione"
Registrazione rapida (senza dover confermare, un link che scade dopo 48 ore.
2022-11-02 22:32:32 +01:00
paoloar77
83e6f92978 Version 0.5.25
Registration with no need to insert "invitante"
2022-11-02 14:59:32 +01:00
paoloar77
e76db7467f Iscrizione Conacreis e Arcadei 2022-10-29 17:05:19 +02:00
paoloar77
392c8bb6af Iscrizione Conacreis e Arcadei 2022-10-29 12:37:30 +02:00
577 changed files with 36584 additions and 11728 deletions

View File

@@ -1,23 +1,27 @@
APP_VERSION="0.5.24"
<<<<<<< HEAD
APP_VERSION="0.5.83"
=======
APP_VERSION="0.5.85"
>>>>>>> parent of 701e1f1 (Aggiornamento a 0.6.1)
SERVICE_WORKER_FILE="service-worker.js"
APP_ID="12"
APP_ID="13"
DIRECTORY_LOCAL="newfreeplanet"
DIRECTORY_SERVER="freeplanet_serverside"
SERVERDIR_WEBSITE=""
SERVERPW_WEBSITE=""
APP_URL="http://localhost"
URL_FACEBOOK="https://www.facebook.com/"
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="http://192.168.0.200:3000"
LOGO_REG='logo-full.png'
MONGODB_HOST="https://localhost:3000"
LOGO_REG='riso-logo-full.png'
TEST_NAME="Paolo"
TEST_SURNAME="Arena"
TEST_EMAIL="perseo@freeplanet.app"
TEST_USERNAME="paoloar773"
TEST_PASSWORD="passpao1fr@1A"
TEST_EMAIL=""
TEST_USERNAME=""
TEST_PASSWORD=""
TEST_APORTADOR=""
PUBLICKEY_PUSH='BDncvMiUZmjaCG2Kr1V9N0_33hOG-AuNSbHSvL24y2dzBiUjAxKm02emx5SeJvz2IGmtRf6YqCgopeQwCwUmZw8'
IN_CONSTRUCTION="0"
@@ -26,3 +30,5 @@ TELEGRAM_SUPPORT=""
PROJECT_ID_MAIN="5cc0a13fe5c9d156728f400a"
TEST_CELL=""
ISTEST=1
INLOCALE=1
BAK_MONGODB_HOST="http://192.168.0.200:3000"

View File

@@ -1,4 +1,8 @@
APP_VERSION="0.5.24"
<<<<<<< HEAD
APP_VERSION="0.5.83"
=======
APP_VERSION="0.5.85"
>>>>>>> parent of 701e1f1 (Aggiornamento a 0.6.1)
SERVICE_WORKER_FILE="service-worker.js"
APP_ID="13"
DIRECTORY_LOCAL=newfreeplanet

View File

@@ -1,25 +1,28 @@
APP_VERSION="0.5.24"
<<<<<<< HEAD
APP_VERSION="0.5.83"
=======
APP_VERSION="0.5.85"
>>>>>>> parent of 701e1f1 (Aggiornamento a 0.6.1)
SERVICE_WORKER_FILE="service-worker.js"
APP_ID="14"
APP_ID="13"
DIRECTORY_LOCAL=newfreeplanet
DIRECTORY_SERVER=test.freeplanet_serverside
SERVERDIR_WEBSITE="test.terradellavisione.app"
SERVERPW_WEBSITE="pwdadmin@1AOK"
APP_URL="https://test.terradellavisione.app"
SERVERDIR_WEBSITE="splendidus.it/riso"
APP_URL="https://riso.splendidus.it"
URL_FACEBOOK=""
PROVA_PAOLO=""
LANG_DEFAULT="it"
PAO_APP_ID="KKPPAA5KJK435J3KSS9F9D8S9F8SD98F9SDF"
MASTER_KEY="KKPPSS5KJK435J3KSS9F9D8S9F8SD3CR3T"
MONGODB_HOST="https://test.freeplanet.app:3001"
LOGO_REG='tdv-logo-full.png'
MONGODB_HOST="https://splendidus.it:3001"
LOGO_REG='riso-logo-full.png'
TEST_NAME=""
TEST_SURNAME=""
TEST_EMAIL=""
TEST_USERNAME=""
TEST_PASSWORD=""
TEST_APORTADOR=""
PUBLICKEY_PUSH="BNRBtL3iaLVGW-aQckwQBmh5uKKzcizOZsMjnzCtSuHkssEhbyioEN2E_CwItDLDShMO-OQ1uhK51ty6zG_gCT8"
PUBLICKEY_PUSH="BGXRf1TgcqocqD6J7qnRgCG7AvM2lxAoW7peb7UEzB4SxBb6DxGRdJ0UvD9ewnrB9KrSrh0-aDCODXBm7sZ1DDs"
IN_CONSTRUCTION="0"
DEBUG="1"
TELEGRAM_SUPPORT=""

5
.gitignore vendored
View File

@@ -36,3 +36,8 @@ yarn-error.log
!/_ALL_SITES/riso.app/.env.production
!/_ALL_SITES/riso.app/.env.development
key.pem
_ALL_SITES/kolibrilab.it/.env.development
_ALL_SITES/kolibrilab.it/.env.test
_ALL_SITES/arcadei.it/.env.development
public/upload/

41
.vscode/launch.json vendored Normal file
View File

@@ -0,0 +1,41 @@
{
// Usare IntelliSense per informazioni sui possibili attributi.
// Al passaggio del mouse vengono visualizzate le descrizioni degli attributi esistenti.
// Per altre informazioni, visitare: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"command": "npm run pwa",
"name": "PWA",
"request": "launch",
"type": "node-terminal",
"env": {
"NODE_ENV": "development"
}
},
{
"command": "npm run spa",
"name": "SPA",
"request": "launch",
"type": "node-terminal"
},
{
"command": "npm run spanorefresh",
"name": "SPA no Refresh",
"request": "launch",
"type": "node-terminal"
},
{
"type": "node",
"request": "launch",
"name": "Launch Program",
"skipFiles": [
"<node_internals>/**"
],
"program": "${workspaceFolder}/src/App.ts",
"outFiles": [
"${workspaceFolder}/**/*.js"
]
}
]
}

View File

@@ -53,7 +53,7 @@ Thanks to the Quasar Framework and TypeScript !
Clone this repository :
```bash
$ git clone git@github.com:paoloar77/newfreeplanet example
$ git clone git@gitlab.com:surya89/newfreeplanet example
$ cd example
$ yarn
```

View File

@@ -1,4 +1,4 @@
APP_VERSION="0.5.24"
APP_VERSION="0.5.27"
SERVICE_WORKER_FILE="service-worker.js"
APP_ID="15"
DIRECTORY_LOCAL="newfreeplanet"

View File

@@ -1,18 +1,18 @@
APP_VERSION="0.5.24"
APP_VERSION="0.5.28"
SERVICE_WORKER_FILE="service-worker.js"
APP_ID="15"
APP_ID="16"
DIRECTORY_LOCAL=newfreeplanet
DIRECTORY_SERVER=test.freeplanet_serverside
SERVERDIR_WEBSITE="arcadei.riso.app"
SERVERDIR_WEBSITE="test.kolibrilab.it"
SERVERPW_WEBSITE="pwdadmin@1AOK"
APP_URL="https://arcadei.riso.app"
APP_URL="https://test.kolibrilab.it"
URL_FACEBOOK=""
PROVA_PAOLO=""
LANG_DEFAULT="it"
PAO_APP_ID="KKPPAA5KJK435J3KSS9F9D8S9F8SD98F9SDF"
MASTER_KEY="KKPPSS5KJK435J3KSS9F9D8S9F8SD3CR3T"
MONGODB_HOST="https://test.freeplanet.app:3001"
LOGO_REG='arcadei-logo-full.png'
LOGO_REG='kolibrilab-logo-full.png'
TEST_NAME=""
TEST_SURNAME=""
TEST_EMAIL=""

View File

@@ -54,6 +54,7 @@ const msg_website_it = {
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',
SignUpArcadei: 'Aderisci ad Arcadei',
SignUp_alreadylista: 'Registrazione per quelli che erano già nella lista di Notevole (del 2019) !',
SignUp2: 'Registrazione',
SignUpBot: 'Registrati',
@@ -113,8 +114,10 @@ const msg_website_it = {
hours: 'Ore',
department: 'Uffici',
title: 'Titolo',
subtitle: 'SottoTitolo',
path: 'Percorso',
img1: 'Immagine 1',
imgsize: 'ImgSize',
contentfield: 'Testo 1',
video1: 'Video 1',
ratio1: 'Ratio 1',
@@ -209,27 +212,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>',
},
@@ -241,8 +233,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>'
descr: ''
+ '<strong>Grazie a Tutti per il sostegno</strong>. ',
},
titlecontatti: 'Contatti',

View File

@@ -1,475 +1,26 @@
import {
IListRoutes,
ILang,
IFunctionality,
IPreloadImages,
ISites,
} from '@model'
import { func } from '@store/Modules/fieldsTable'
const functionality: IFunctionality = {
PWA: false,
SHOW_USER_MENU: true, // Cambiare con true
SHOW_PROFILE: true,
SHOW_REG_BUTTON: true,
ENABLE_REGISTRATION: true,
ENABLE_REG_BY_BOT: false,
ENABLE_REG_NEED_TELEGRAM: false,
SHOW_NEWSLETTER: false,
SHOW_ONLY_POLICY: true,
ENABLE_TODOS_LOADING: false,
ENABLE_PROJECTS_LOADING: false,
SHOW_IF_IS_SERVER_CONNECTION: false,
SHOW_MESSAGES: false,
SHOW_NOTIF: false,
SHOW_COINS: false,
BOOKING_EVENTS: false,
ENABLE_ECOMMERCE: false,
ENABLE_REG_ISP: true,
ENABLE_GROUPS: false,
ENABLE_CIRCUITS: false,
SHOW_COMPETENZE: false,
ENABLE_VIEW_GROUPS: false,
ENABLE_VIEW_USERS: false,
ENABLE_VIEW_PROFILE: true,
const firstPage = {
active: true,
order: 5,
path: '/',
materialIcon: 'home',
name: 'pages.home',
component: () => import('@src/root/home/home.vue'),
reqauth: false,
inmenu: true,
infooter: true,
}
// const SHOW_PROJINTHEMENU = false
//
// let arrlistafavourite = []
// let arrlistaprojtutti = []
// let arrlistaprojmiei = []
// if (SHOW_PROJINTHEMENU) {
// arrlistaprojtutti = Projects.getters.listaprojects(RouteNames.projectsall)
// arrlistaprojmiei = Projects.getters.listaprojects(RouteNames.myprojects)
// arrlistafavourite = Projects.getters.listaprojects(RouteNames.favouriteprojects)
// }
// PROGETTI -> FAVORITI :
function getDynamicPages(site: ISites): IListRoutes[] {
// if (arrlistafavourite.length > 0) {
// arrMenu.push({
// icon: 'favorite_border',
// nametranslate: 'pages.' + RouteNames.favouriteprojects,
// urlroute: RouteNames.favouriteprojects,
// level_parent: 0.0,
// level_child: 0.5,
// routes2: arrlistafavourite,
// idelem: ''
// })
// }
const routes_todo: IListRoutes[] = []
const arrlista = [
{ nametranslate: 'personal', description: 'personal' },
{ nametranslate: 'work', description: 'work' },
{ nametranslate: 'shopping', description: 'shopping' },
]
const routes_admin: IListRoutes[] = [
{
active: true,
order: 10,
path: '/admin/sites',
materialIcon: 'event_seat',
name: 'pages.Sites',
component: () => import('@/rootgen/admin/sites/sites.vue'),
level_parent: 0.0,
level_child: 0.5,
inmenu: true,
submenu: true,
onlyAdmin: true
},
{
active: true,
order: 1000,
path: '/admin/cfgserv',
materialIcon: 'event_seat',
name: 'pages.Admin',
component: () => import('@/views/admin/cfgServer/cfgServer.vue'),
level_parent: 0.0,
level_child: 0.5,
inmenu: true,
submenu: true,
onlyAdmin: true
},
{
active: true,
order: 1020,
path: '/admin/dbop',
materialIcon: 'event_seat',
name: 'pages.dbop',
component: () => import('@/views/admin/dbop/dbop.vue'),
level_parent: 0.0,
level_child: 0.5,
inmenu: true,
submenu: true,
onlyAdmin: true
},
{
active: true,
order: 1040,
path: '/admin/importfile',
materialIcon: 'event_seat',
name: 'otherpages.manage.importfile',
component: () => import('@/rootgen/admin/importdata/importdata.vue'),
level_parent: 0.0,
level_child: 0.5,
inmenu: true,
submenu: true,
onlyAdmin: true
}
]
const routes_newsletter: IListRoutes[] = [
{
active: true,
order: 10,
name: 'newsletter.template', path: '/admin/newsletter/templemail', materialIcon: 'fas fa-users',
component: () => import('@/rootgen/admin/newsletter/newsletter.vue'),
inmenu: true, submenu: true, level_parent: 0.5, level_child: 0.5, onlyManager: true, noroute: true
},
{
active: true,
order: 20,
name: 'newsletter.sendemail', path: '/admin/newsletter/newnewsletter', materialIcon: 'fas fa-users',
component: () => import('@/rootgen/admin/newsletter/newsletter.vue'),
inmenu: true, submenu: true, level_parent: 0.5, level_child: 0.5, onlyManager: true, noroute: true
},
{
active: true,
order: 30,
name: 'newsletter.check', path: '/admin/newsletter/check', materialIcon: 'fas fa-users',
component: () => import('@/rootgen/admin/newsletter/newsletter.vue'),
inmenu: true, submenu: true, level_parent: 0.5, level_child: 0.5, onlyManager: true, noroute: true
},
{
active: true,
order: 40,
name: 'newsletter.sent', path: '/admin/newsletter/newslist', materialIcon: 'fas fa-users',
component: () => import('@/rootgen/admin/newsletter/newsletter.vue'),
inmenu: true, submenu: true, level_parent: 0.5, level_child: 0.5, onlyManager: true, noroute: true
},
{
active: true,
order: 50,
name: 'newsletter.mailinglist', path: '/admin/newsletter/mailinglist', materialIcon: 'fas fa-users',
component: () => import('@/rootgen/admin/newsletter/newsletter.vue'),
inmenu: true, submenu: true, level_parent: 0.5, level_child: 0.5, onlyManager: true, noroute: true
},
{
active: true,
order: 60,
name: 'newsletter.settings', path: '/admin/newsletter/settings', materialIcon: 'fas fa-users',
component: () => import('@/rootgen/admin/newsletter/newsletter.vue'),
inmenu: true, submenu: true, level_parent: 0.5, level_child: 0.5, onlyManager: true, noroute: true
},
{
active: true,
order: 70,
name: 'newsletter.serversettings', path: '/admin/newsletter/main_settings', materialIcon: 'fas fa-users',
component: () => import('@/rootgen/admin/newsletter/newsletter.vue'),
inmenu: true, submenu: true, level_parent: 0.5, level_child: 0.5, onlyManager: true, noroute: true
},
{
active: true,
order: 80,
name: 'newsletter.others', path: '/admin/newsletter/events', materialIcon: 'fas fa-users',
component: () => import('@/rootgen/admin/newsletter/newsletter.vue'),
inmenu: true, submenu: true, level_parent: 0.5, level_child: 0.5, onlyManager: true, noroute: true
}
]
const routes_ris: IListRoutes[] = [
{
active: true,
order: 10,
path: '/admin/ris/circuitslist',
materialIcon: 'fas fa-users',
name: 'otherpages.admin.circuitslist',
component: () => import('@/rootgen/admin/circuitsList/circuitsList.vue'),
inmenu: true,
submenu: true,
level_parent: 0.5,
level_child: 0.5,
onlyManager: true,
onlyFacilitatore: true
},
{
active: true,
order: 20,
path: '/admin/ris/accountslist',
materialIcon: 'fas fa-users',
name: 'otherpages.admin.accountslist',
component: () => import('@/rootgen/admin/accountsList/accountsList.vue'),
inmenu: true,
submenu: true,
level_parent: 0.5,
level_child: 0.5,
onlyManager: true,
onlyFacilitatore: true
},
{
active: true,
order: 30,
path: '/admin/ris/movslist',
materialIcon: 'fas fa-users',
name: 'otherpages.admin.movslist',
component: () => import('@/rootgen/admin/movsList/movsList.vue'),
inmenu: true,
submenu: true,
level_parent: 0.5,
level_child: 0.5,
onlyManager: true,
onlyFacilitatore: true
},
]
const routes_manager: IListRoutes[] = [
{
active: functionality.BOOKING_EVENTS,
order: 70,
path: '/admin/usereventlist',
materialIcon: 'edit',
name: 'otherpages.admin.usereventlist',
component: () => import('@/rootgen/admin/eventlist/eventlist.vue'),
inmenu: functionality.BOOKING_EVENTS,
submenu: functionality.BOOKING_EVENTS,
level_parent: 0,
level_child: 0.5,
infooter: false,
onlyManager: true,
onlyConsiglio: true,
onlyAdmin: true
},
{
active: true,
order: 10,
path: '/admin/userlist',
materialIcon: 'fas fa-users',
name: 'otherpages.admin.userlist',
component: () => import('@/rootgen/admin/usersList/usersList.vue'),
inmenu: true,
submenu: true,
level_parent: 0,
level_child: 0.5,
onlyManager: true,
onlyFacilitatore: true
},
{
active: true,
order: 10,
path: '/admin/userpanel',
materialIcon: 'fas fa-users',
name: 'otherpages.admin.userpanel',
component: () => import('@/rootgen/admin/userPanel/userPanel.vue'),
inmenu: true,
submenu: true,
level_parent: 0,
level_child: 0.5,
onlyManager: true,
onlyFacilitatore: true
},
/*
{
active: true,
order: 10,
path: '/admin/iscritticonacreis',
materialIcon: 'fas fa-users',
name: 'otherpages.admin.iscritticonacreis',
component: () => import('@/rootgen/admin/iscritticonacreis/iscritticonacreis.vue'),
inmenu: true,
submenu: true,
level_parent: 0,
level_child: 0.5,
onlyManager: true,
onlyFacilitatore: true
},
*/
{
active: true,
path: '/admin/ris',
order: 60,
faIcon: 'fa fa-list-alt',
materialIcon: 'fas fa-users',
name: 'otherpages.admin.monete',
routes2: routes_ris,
inmenu: false,
submenu: true,
level_parent: 0.5,
level_child: 0.5,
solotitle: true,
onlyAdmin: true,
onlyManager: true
},
{
active: false,
order: 10,
path: '/admin/zoomlist',
materialIcon: 'fas fa-users',
name: 'otherpages.admin.zoomlist',
component: () => import('@/rootgen/admin/zoomList/zoomList.vue'),
inmenu: true,
submenu: true,
level_parent: 0,
level_child: 0.5,
onlyManager: true,
onlyFacilitatore: false
},
{
active: true,
order: 27,
path: '/admin/tableslist',
materialIcon: 'fas fa-users',
name: 'otherpages.admin.tableslist',
component: () => import('@/rootgen/admin/tablesList/tablesList.vue'),
inmenu: true,
submenu: true,
level_parent: 0,
level_child: 0.5,
onlyAdmin: true,
onlyManager: true
},
{
active: true,
order: 30,
path: '/admin/pages',
materialIcon: 'fas fa-file-alt',
name: 'otherpages.admin.pages',
component: () => import('@/rootgen/admin/pages/pages.vue'),
inmenu: true,
submenu: true,
level_parent: 0,
level_child: 0.5,
onlyManager: true,
onlyEditor: true
},
{
active: true,
order: 30,
path: '/admin/bot',
materialIcon: 'fas fa-file-alt',
name: 'otherpages.admin.bot',
component: () => import('@/rootgen/admin/bot/bot.vue'),
inmenu: true,
submenu: true,
level_parent: 0,
level_child: 0.5,
onlyManager: true,
onlyEditor: true
},
{
active: true,
order: 30,
path: '/admin/confsite',
materialIcon: 'fas fa-file-alt',
name: 'otherpages.admin.confsite',
component: () => import('@/rootgen/admin/confsite/confsite.vue'),
inmenu: true,
submenu: true,
level_parent: 0,
level_child: 0.5,
onlyManager: true,
onlyEditor: true
},
{
active: true,
path: '/admin/newsletter',
order: 60,
faIcon: 'fa fa-list-alt',
materialIcon: 'fas fa-users',
name: 'otherpages.admin.newsletter',
routes2: routes_newsletter,
inmenu: false,
submenu: true,
level_parent: 0.5,
level_child: 0.5,
solotitle: true,
onlyAdmin: true,
onlyManager: true
},
/*
{
active: functionality.ENABLE_ECOMMERCE,
path: '/admin/ecommerce',
order: 31,
faIcon: 'fa fa-list-alt',
materialIcon: 'next_week',
name: 'pages.admin_ecommerce',
routes2: routes_admin_ecommerce,
inmenu: false,
submenu: true,
level_parent: 0.5,
level_child: 0.5,
solotitle: true,
onlyAdmin: true,
onlyManager: true,
onlyDepartment: true
},
*/
{
active: true,
order: 35,
path: '/admin/msg_template',
materialIcon: 'fas fa-file-alt',
name: 'msgs.messages',
component: () => import('@/rootgen/admin/msg_template/msg_template.vue'),
inmenu: true,
submenu: true,
level_parent: 0,
level_child: 0.5,
onlyAdmin: true,
onlyManager: true
// onlyFacilitatore: true
},
{
active: true,
order: 1030,
path: '/admin/sendpushnotif',
materialIcon: 'event_seat',
name: 'otherpages.manage.sendpushnotif',
component: () => import('@/rootgen/admin/sendpushnotif/sendpushnotif.vue'),
level_parent: 0.0,
level_child: 0.5,
inmenu: true,
submenu: true,
onlyAdmin: true,
onlyManager: true,
},
{
active: true,
order: 40,
path: '/admin/gallery',
materialIcon: 'fas fa-file-alt',
name: 'otherpages.admin.gallery',
component: () => import('@/rootgen/admin/gallery/gallery.vue'),
inmenu: true,
submenu: true,
level_parent: 0,
level_child: 0.5,
onlyAdmin: true,
onlyManager: true
},
{
active: true,
order: 50,
path: '/admin/media',
materialIcon: 'fas fa-file-alt',
name: 'otherpages.admin.media',
component: () => import('@/rootgen/admin/uploader/uploader.vue'),
inmenu: true,
submenu: true,
level_parent: 0,
level_child: 0.5,
onlyAdmin: true,
onlyManager: true
},
]
const baseroutes: IListRoutes[] = [
const baseroutes: IListRoutes[] = [
{
active: true,
order: 5,
@@ -481,7 +32,7 @@ const baseroutes: IListRoutes[] = [
inmenu: true,
infooter: true,
},
{
/*{
active: true,
order: 120,
path: '/myprofile',
@@ -491,7 +42,7 @@ const baseroutes: IListRoutes[] = [
meta: { requiresAuth: true },
inmenu: true,
infooter: true,
},
},*/
{
active: true,
order: 120,
@@ -503,286 +54,6 @@ const baseroutes: IListRoutes[] = [
inmenu: false,
infooter: false,
},
{
active: functionality.ENABLE_GROUPS,
order: 132,
path: '/groups',
materialIcon: 'fas fa-users',
name: 'mypages.groups',
component: () => import('@/views/user/mygroups/mygroups.vue'),
meta: { requiresAuth: true },
inmenu: true,
infooter: true,
},
{
active: functionality.ENABLE_CIRCUITS,
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,
},
{
active: true,
order: 135,
path: '/my/:username',
materialIcon: 'fas fa-user',
name: 'pages.profile2',
component: () => import('@/views/user/myprofile/myprofile.vue'),
meta: { requiresAuth: true },
inmenu: false,
infooter: false,
},
{
active: true,
order: 136,
path: '/grp/:groupname',
materialIcon: 'fas fa-user',
name: 'proj.group2',
component: () => import('@/views/user/mygroup/mygroup.vue'),
meta: { requiresAuth: true, newpage: true },
inmenu: false,
infooter: false,
},{
active: true,
order: 137,
path: '/circuit/:path',
materialIcon: 'fas fa-user',
name: 'proj.circuit2',
component: () => import('@/views/user/mycircuit/mycircuit.vue'),
meta: { requiresAuth: true, newpage: true },
inmenu: false,
infooter: false,
},
{
active: true,
order: 130,
path: '/mypage/:idBacheca',
materialIcon: 'fas fa-user',
name: 'pages.mypage2',
component: () => import('@/views/user/mypagebacheca/mypagebacheca.vue'),
meta: { requiresAuth: true, newpage: true },
inmenu: false,
infooter: false,
},
{
active: true,
order: 130,
path: '/myservice/:idSkill',
materialIcon: '',
name: 'pages.myservice2',
component: () => import('@/views/user/myservice/myservice.vue'),
meta: { requiresAuth: true, newpage: true },
inmenu: false,
infooter: false,
},
{
active: true,
order: 135,
path: '/myhosps/:idHosp',
materialIcon: '',
name: 'pages.myhosps2',
component: () => import('@/views/user/mypagehosp/mypagehosp.vue'),
meta: { requiresAuth: true, newpage: true },
inmenu: false,
infooter: false,
},
{
active: true,
order: 132,
path: '/mygood/:idGood',
materialIcon: '',
name: 'pages.mygood2',
component: () => import('@/views/user/mypagegood/mypagegood.vue'),
meta: { requiresAuth: true, newpage: true },
inmenu: false,
infooter: false,
},
{
active: true,
order: 150,
path: '/fundraising',
materialIcon: 'fas fa-hand-holding-heart',
name: 'pages.fundraising',
component: () => import('@src/root/fundraising/fundraising.vue'),
inmenu: true,
infooter: true,
},
{
active: true,
order: 200,
path: '/notifs',
materialIcon: 'fas fa-user',
name: 'pages.notifs',
component: () => import('@/views/user/usernotifs/usernotifs.vue'),
meta: { requiresAuth: true },
inmenu: false,
infooter: false,
},
{
active: true,
order: 400,
path: '/test',
materialIcon: 'fas fa-test',
name: 'mypages.test',
component: () => import('@/views/testServer/testServer.vue'),
inmenu: false,
infooter: false,
},
{
active: true,
order: 400,
path: '/testlocal',
materialIcon: 'fas fa-test',
name: 'mypages.TestLocal',
component: () => import('@/views/test/test.vue'),
meta: { requiresAuth: true },
inmenu: false,
infooter: false,
},
{
active: true,
order: 2000,
path: '/admin',
materialIcon: 'fas fa-user-shield',
name: 'otherpages.admin.menu',
inmenu: true,
routes2: routes_admin,
solotitle: true,
infooter: false,
onlyAdmin: true
},
...routes_admin,
{
active: true,
order: 2110,
path: '/manage',
materialIcon: 'fas fa-users-cog',
name: 'otherpages.manage.menu',
inmenu: true,
routes2: routes_manager,
solotitle: true,
infooter: false,
onlyAdmin: true,
onlyManager: true,
onlyFacilitatore: true,
onlyEditor: true
},
...routes_manager,
{
active: true,
order: 1000,
path: '/404error',
materialIcon: 'fas fa-calendar-plus',
name: 'otherpages.error404',
component: () => import('@/root/My404page/My404page.vue'),
inmenu: false,
infooter: false
},
{
active: true,
order: 2000,
path: '/policy',
materialIcon: 'fas fa-user',
name: 'pages.policy',
component: () => import('@src/root/policy/policy.vue'),
inmenu: false,
infooter: true
},
{
active: functionality.ENABLE_REG_BY_BOT,
order: 1000,
path: '/bot',
materialIcon: 'how_to_reg',
name: 'pages.SignUpBot',
inmenu: functionality.ENABLE_REG_BY_BOT,
infooter: functionality.ENABLE_REG_BY_BOT,
separator: false
},
{
active: functionality.ENABLE_REGISTRATION && !functionality.ENABLE_REG_NEED_TELEGRAM,
order: 1000,
path: '/signup',
materialIcon: 'how_to_reg',
name: 'pages.SignUp',
component: () => import('@/views/login/signup_noteleg/signup_noteleg.vue'),
inmenu: false,
infooter: false,
separator: false
},
{
active: true,
order: 1001,
path: '/signup/:invited',
materialIcon: 'how_to_reg',
name: 'pages.SignUp2',
component: () => import('@/views/login/signup/signup.vue'),
inmenu: false,
infooter: false,
separator: false
},
{
active: functionality.ENABLE_REGISTRATION,
order: 2000,
path: '/regok',
materialIcon: 'how_to_reg',
name: 'pages.regok',
component: () => import('@/views/login/regok/regok.vue'),
inmenu: false,
infooter: false,
separator: false,
},
{
active: true,
order: 1000,
path: '/signin',
materialIcon: 'account_circle',
name: 'pages.SignIn',
component: () => import('@/views/login/signin_noreg/signin_noreg.vue'),
inmenu: true,
infooter: true
},
// --- NOT IN MENU: ---
{
active: true,
order: 1000,
path: '/vreg',
name: 'pages.vreg',
component: () => import('@/views/login/vreg/vreg.vue')
},
{
active: true,
order: 1000,
path: '/requestresetpwd',
name: 'pages.requestresetpwd',
component: () => import('@/views/requestresetpwd/requestresetpwd.vue')
},
{
active: true,
order: 1000,
path: '/updatepassword',
name: 'pages.updatepassword',
component: () => import('@/views/updatepassword/updatepassword.vue')
},
{
active: true,
order: 1000,
path: '/offline',
name: 'Offline',
component: () => import('@/views/offline/offline.vue')
},
{
active: true,
path: '/separator',
name: 'separator',
order: 35,
isseparator: true,
inmenu: true,
},
{
active: true,
order: 80,
@@ -796,42 +67,19 @@ const baseroutes: IListRoutes[] = [
},
{
active: true,
order: 1000,
path: '/admin/newsletter/:idparam',
materialIcon: 'event',
name: 'pages.newsletter.menu',
component: () => import('@/rootgen/admin/newsletter/newsletter.vue'),
inmenu: false,
infooter: false
order: 55,
path: '/iscrizione',
materialIcon: 'how_to_reg',
name: 'pages.SignUpArcadei',
component: () => import('@/views/login/iscrizionearcadei/iscrizionearcadei.vue'),
inmenu: true,
infooter: true,
separator: false,
onlyNotSoci: false,
},
{
active: true,
order: 90,
path: '/event/:typol/:eventid',
materialIcon: 'event',
name: 'pages.evento',
component: () => import('@/root/evento/evento.vue'),
inmenu: false,
infooter: false
},
{
active: true,
order: 110,
path: '/event/:typol',
materialIcon: 'event',
name: 'pages.eventodef',
component: () => import('@/root/evento/evento.vue'),
inmenu: false,
infooter: false
},
]
const arrLangUsed = [
'it',
// 'enUs',
// 'es',
]
]
return baseroutes
}
export function firstimagehome() {
@@ -839,34 +87,20 @@ export function firstimagehome() {
return img
}
const lang_available: ILang[] = [
{
label: 'Italiano', icon: 'fa-flag-it', value: 'it', image: '../images/it.png', short: 'IT',
},
/*{
label: 'English', icon: 'fa-flag-us', value: 'enUs', image: '../images/gb.png', short: 'EN',
},
{
label: 'Español', icon: 'fa-flag-es', value: 'es', image: '../images/es.png', short: 'ES',
},
*/
// { label: 'Français', icon: 'fa-facebook', value: 'fr', image: '../public/images/fr.png', short: 'FR' }
// { label: 'German', icon: 'fa-flag-de', value: 'de', image: '../public/images/de.png', short: 'DE' },
]
const preLoadImages: IPreloadImages[] = []
export const lang_available: ILang[] = []
export const arrLangUsed: string[] = []
export const preloadedimages = []
export const routes = baseroutes
export const routes: IListRoutes[] = [firstPage]
export const static_data = {
baseroutes,
routes,
functionality,
arrLangUsed,
getDynamicPages,
lang_available,
preLoadImages,
arrLangUsed,
preloadedimages,
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -37,7 +37,9 @@ 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'],
boot: ['i18n', 'axios', 'vee-validate',
'myconfig', 'local-storage', 'error-handler', 'globalroutines',
'calendar'],
// https://v2.quasar.dev/quasar-cli/quasar-conf-js#Property%3A-css
css: [

View 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;
}

View File

@@ -0,0 +1,54 @@
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, CMyElem, 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, CMyElem },
setup() {
const userStore = useUserStore()
const globalStore = useGlobalStore()
const { setValDb, getValDb } = MixinBase()
function getheightgallery() {
if (tools.isMobile())
return '400px'
else
return '600px'
}
function created() {
//
}
created()
return {
tools,
toolsext,
static_data,
getheightgallery,
getValDb,
globalStore,
}
},
})

View File

@@ -0,0 +1,18 @@
<template>
<q-page>
<CMyPage title="Home">
<span v-for="(myelem, ind) in globalStore.getMyElems('home')" :key="ind">
<CMyElem v-if="myelem.active" :myelem="myelem">
</CMyElem>
</span>
</CMyPage>
</q-page>
</template>
<script lang="ts" src="./home_arcadei.ts">
</script>
<style lang="scss" scoped>
@import './home_arcadei.scss';
</style>

View File

@@ -28,11 +28,6 @@ export default defineComponent({
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()

View File

@@ -31,20 +31,6 @@ const msg_website_enUs = {
Admin: 'Admin',
Test1: 'Test1',
Test2: 'Test2',
statusreg: {
reg: 'Participants',
passeggeri: 'Passengers Ships',
giainlista: 'Already in the List',
newreg: 'New registrations:',
nationality: 'Nationality',
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',
},
},
msg: {
myAppDescription: '',

View File

@@ -439,14 +439,6 @@ export const Province = [
label: 'Viterbo',
value: 'VT',
},
{
label: 'Estero',
value: 'EST',
},
{
label: 'On Line',
value: 'ONL',
},
]
export const Comuni = [

View File

@@ -0,0 +1,89 @@
import { IEvents } from '../model';
export const db_data = {
URL_FACEBOOK: 'https://www.facebook.com/associazioneshen',
userdata: {
calendar_editable: false,
},
events: [
{
title: 'Scambi Reiki',
details: 'Nelle serate esperienziali è possibile <span class="boldhigh">Dare e Ricevere</span> un trattamento completo.<br />'
+ 'Possono partecipare le persone che hanno già preso parte al <span class="boldhigh">seminario di 1° livello</span>, ma anche <span class="boldhigh">tutti quelli che hanno il desiderio di conoscere il Reiki</span> e sperimentarlo per la prima volta: in questo caso invitiamo gli interessati a contattarci per un appuntamento prima dellinizio della serata per ricevere le informazioni pratiche.',
date: '2019-07-11',
time: '21:00',
duration: 120,
side: 'left',
bgcolor: 'orange',
icon: 'fas fa-praying-hands',
img: 'images/reiki/reikisfondo.jpg',
where: 'Centro Shen',
// whereicon: 'shen.png',
teacher: 'Cristina Barattoni',
avatar: 'cristina.png',
infoextra: '',
linkpdf: 'files/eventi/Reiki_aMICHI.pdf',
},
{
title: 'Scambi Reiki',
details: 'Nelle serate esperienziali è possibile <span class="boldhigh">Dare e Ricevere</span> un trattamento completo.<br />'
+ 'Possono partecipare le persone che hanno già preso parte al <span class="boldhigh">seminario di 1° livello</span>, ma anche <span class="boldhigh">tutti quelli che hanno il desiderio di conoscere il Reiki</span> e sperimentarlo per la prima volta: in questo caso invitiamo gli interessati a contattarci per un appuntamento prima dellinizio della serata per ricevere le informazioni pratiche.',
date: '2019-07-20',
time: '21:00',
duration: 120,
side: 'left',
bgcolor: 'orange',
icon: 'fas fa-praying-hands',
img: 'images/reiki/reikisfondo.jpg',
where: 'Centro Shen',
// whereicon: 'shen.png',
teacher: 'Cristina Barattoni',
avatar: 'cristina.png',
infoextra: '',
linkpdf: '',
},
{
title: 'Seminario Reiki 1° Livello',
details: 'I seminari vengono organizzati volutamente in gruppi poco numerosi.\n'
+ 'Si crea così un ambiente accogliente e tranquillo con un atmosfera conviviale.<br />'
+ ''
+ 'Per info vedi <a href="reiki/seminari">Seminari Reiki</a>',
date: '2019-07-22',
days: 2,
time: '9:00',
side: 'left',
bgcolor: 'red',
icon: 'fas fa-chalkboard-teacher',
img: 'images/reiki/reikisfondo.jpg',
where: 'Centro Shen',
// whereicon: 'shen.png',
teacher: 'Cristina Barattoni',
avatar: 'cristina.png',
teacher2: 'Elisa Ghizzardi',
avatar2: 'elisa.png',
infoextra: 'sabato e domenica dalle 10.00 alle 18.00',
linkpdf: '',
},
{
title: 'Presentazione Corsi per Operatori del Massaggio del Benessere',
details: 'Vieni alla presentazione dei Corsi!<br>10 settembre a Ravenna, 17 settembre a Lugo',
date: '2019-09-10',
time: '20:30',
duration: 120,
side: 'left',
bgcolor: 'blue',
icon: 'fas fa-praying-hands',
img: 'images/scuolaopbenessere/img1.jpg',
where: 'Centro Shen',
// whereicon: 'shen.png',
teacher: 'Operatori',
avatar: 'cristina.png',
avatar2: 'elisa.png',
infoextra: '',
linkpdf: '',
},
],
}

View File

@@ -3,9 +3,11 @@ const msg_website = {
pages: {
home: 'Principale',
SignUp: 'Registrazione',
SignUp2: 'Registrazione2',
SignIn: 'Login',
vreg: 'Verifica Reg',
Test: 'Test',
TestLocal: 'TestLocal',
Category: 'Categorie',
Todo: 'Todo',
personal: 'Personale',
@@ -33,8 +35,8 @@ const msg_website = {
},
homepage: {
descrapp_title1: 'Uniti per Evolvere e Sperimentare',
descrapp_pag1: 'Riscopri come il valore della <strong>Condivisione</strong> e della <strong>Cooperazione</strong>, possa aiutarci a ritrovare il profondo '
+ 'senso della <strong>Vita</strong>, perduto in questa società consumista, e riporti quei <strong>Sani Pricìpi Naturali</strong> ed Umani di <strong>Fratellanza</strong>'
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 '
@@ -115,7 +117,7 @@ const msg_website = {
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>'
+ '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',

View File

@@ -41,6 +41,8 @@ const msg_website_de = {
dbop: 'Operazioni',
statusreg: {
reg: 'Partecipanti',
verifieds: 'Verificati',
autorizzati: 'Autorizzati',
passeggeri: 'Passeggeri Navi',
giainlista: 'Gia in Lista',
newreg: 'Ultime Registrazioni:',

View File

@@ -0,0 +1,159 @@
const msg_website_enUs = {
ws: {
sitename: 'Riso',
siteshortname: 'RISO',
botname: 'Riso BOT',
},
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;

View File

@@ -0,0 +1,158 @@
const msg_website_es = {
ws: {
sitename: 'Riso',
siteshortname: 'RISO',
botname: 'Riso BOT',
},
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;

View File

@@ -1,8 +1,8 @@
const msg_website_fr = {
ws: {
sitename: 'AYNI',
siteshortname: 'Ayni',
botname: 'AYNI BOT',
sitename: 'Riso',
siteshortname: 'RISO',
botname: 'Riso BOT',
},
homepage: {
titlecontatti: 'CONTACTS',

View File

@@ -1,8 +1,9 @@
const msg_website_it = {
ws: {
sitename: 'PopoloDelNuovoMondo',
siteshortname: 'PDNM',
botname: 'PdNM',
sitename: 'KolibriLab',
siteshortname: 'KolibriLab',
description: '',
keywords: '',
},
products: {
quantity: 'Quantità',
@@ -25,6 +26,11 @@ const msg_website_it = {
profile: 'Profilo',
profile2: 'ProfiloU',
mypage2: 'mypage2',
myservice2: 'myservice2',
myhosps2: 'myhosps2',
mygood2: 'mygood2',
fundraising: 'Sostieni il Progetto',
notifs: 'Configura le Notifiche',
test: 'Test',
projects: 'Progetti',
report: 'Report Ore',
@@ -44,10 +50,15 @@ const msg_website_it = {
presentazione: 'Presentazione',
presentazione2: 'Presentazione',
invita: 'Invita Persone',
SignUp: 'Nuova Registrazione',
SignUp: 'Modulo di Registrazione:',
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',
SignUpArcadei: 'Aderisci ad Arcadei',
SignUp_alreadylista: 'Registrazione per quelli che erano già nella lista di Notevole (del 2019) !',
SignUp2: 'Registrazione',
SignUp4: 'Reg',
SignUpBot: 'Registrati',
SignIn: 'Login',
status: 'Statistiche',
nextzoom: 'Conferenze',
@@ -81,6 +92,10 @@ const msg_website_it = {
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: 'Ultime Registrazioni:',
@@ -100,8 +115,10 @@ const msg_website_it = {
hours: 'Ore',
department: 'Uffici',
title: 'Titolo',
subtitle: 'SottoTitolo',
path: 'Percorso',
img1: 'Immagine 1',
imgsize: 'ImgSize',
contentfield: 'Testo 1',
video1: 'Video 1',
ratio1: 'Ratio 1',
@@ -128,8 +145,8 @@ const msg_website_it = {
color: 'Colore',
},
msg: {
myAppName: 'FreePlanet',
myAppDescription: 'Il primo Vero Social Libero, Equo e Solidale, dove Vive Consapevolezza e Aiuto Comunitario. Gratuito e senza Pubblicità',
myAppName: 'Arcadei',
myAppDescription: 'Modello Comunitario',
underconstruction: 'App in costruzione...',
myDescriz: '',
sottoTitoloApp: 'Il primo Vero Social',
@@ -139,14 +156,14 @@ const msg_website_it = {
},
homepage: {
descrapp_title1: 'Uniti per Evolvere e Sperimentare',
descrapp_pag1: 'Riscopri come il valore della <strong>Condivisione</strong> e della <strong>Cooperazione</strong>, possa aiutarci a ritrovare il profondo '
+ 'senso della <strong>Vita</strong>, perduto in questa società consumista, e riporti quei <strong>Sani Pricìpi Naturali</strong> ed Umani di <strong>Fratellanza</strong>'
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.',
freesocial: {
title: 'Free Social',
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>, '
@@ -155,39 +172,26 @@ const msg_website_it = {
+ ' e realizzare insieme i <strong>Cambiamenti</strong> necessari alla nostra Società.',
},
freetalent: {
title: 'Free Talent',
title: 'Beni e Servizi',
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.',
+ '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> grazie ad un sistema di baratto organizzato, in cui la comunità stessa si pone come garante.'
},
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>',
coin: {
title: 'RIS - Credito Alternativo',
descr: '<strong>Stiamo lavorando</strong> anche per creare una sorta di "moneta alternativa" per conteggiare gli scambi che avvengono tra di noi, quando il semplice baratto risulta non applicabile.<br>' +
'Partendo dalle basi del <strong>Si.Cre.Na.C.C - Sistema di Credito Naturale a Copertura Certa</strong>.<br>' +
'<em>Ciascun operatore potrà creare moneta all\'occorrenza, se il saldo del suo conto non sarà sufficiente a coprire la spesa. Potrà quindi mandare il suo conto in "scoperto", accollandosi il conseguente' +
' Debito, accreditando l\'equivalente somma all\'operatore ricevente, il quale la annovera nel suo conto in qualità di Credito. ' +
'L\'equilibrio tra il credito dell\'uno ed il debito dell\'altro ha come conseguenza che il debitore dovrà lavorare per rifondere il debito, mentre il ricevente potrà usare il credito come moneta.</em><br>' +
'Per maggiori informazioni consultare il libro gratuito <a href="https://sicrenacc.info/" target="_blank">cliccando qui</a>.'
},
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>.',
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 vicinato, come giá viene praticato in piccolo, in numerosi <strong>Ecovillaggi</strong> e Comunità del mondo.',
},
freecollabora: {
@@ -199,29 +203,50 @@ const msg_website_it = {
+ '<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?',
title: 'Come Sostenere il progetto <strong>Riso.app</strong>?',
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>',
+ '<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>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>' +
'<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>' +
'' +
'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>' +
'Grazie Mille per l\'Aiuto ed il Supporto' +
'<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',
descr: 'E\' compatibile con Google Chrome, Firefox, Opera, Safari, iPhone, Android e PC. L\'Applicazione s\'installa facilmente, senza passare dallo store. '
+ 'basta entrare sul sito <strong>www.riso.app</strong>.<br>'
+ 'Dopo la registrazione chiederà di aggiungerlo allo schermo (o cliccare sul menu del browser "Installa APP")',
},
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>'
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>'
+ '<strong>Grazie a Tutti per il sostegno</strong>. ',
},
titlecontatti: 'Contatti',

View File

@@ -1,8 +1,8 @@
const msg_website_pt = {
ws: {
sitename: 'CNM',
siteshortname: 'CNM',
botname: 'CNM BOT',
sitename: 'Riso',
siteshortname: 'RISO',
botname: 'Riso BOT',
},
pages: {
home: 'Home',

View File

@@ -1,8 +1,8 @@
const msg_website_si = {
ws: {
sitename: 'AYNI',
siteshortname: 'Ayni',
botname: 'AYNI BOT',
sitename: 'Riso',
siteshortname: 'RISO',
botname: 'Riso BOT',
},
pages: {
home: 'Domača stran',

View File

@@ -0,0 +1,73 @@
import {
IListRoutes,
ILang,
IPreloadImages,
ISites,
} from '@model'
const firstPage = {
active: true,
order: 5,
path: '/',
materialIcon: 'home',
name: 'pages.home',
component: () => import('@src/root/home/home.vue'),
reqauth: false,
inmenu: true,
infooter: true,
}
function getDynamicPages(site: ISites): IListRoutes[] {
const baseroutes: IListRoutes[] = [
firstPage,
{
active: true,
order: 120,
path: '/editprofile',
materialIcon: 'fas fa-user',
name: 'pages.profile3',
component: () => import('@/views/user/editprofile/editprofile.vue'),
meta: { requiresAuth: true },
inmenu: false,
infooter: false,
},
{
active: true,
order: 135,
path: '/my/:username',
materialIcon: 'fas fa-user',
name: 'pages.profile2',
component: () => import('@/views/user/myprofile/myprofile.vue'),
meta: { requiresAuth: true },
inmenu: false,
infooter: false,
},
]
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,
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -0,0 +1,4 @@
[Dolphin]
PreviewsShown=true
Timestamp=2022,9,21,18,57,21
Version=4

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 92 KiB

View File

@@ -0,0 +1,139 @@
{
"name": "kolibrilab",
"version": "0.5.3",
"description": "kolibrilab",
"productName": "kolibrilab",
"author": "Surya Paolo",
"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",
"spanorefresh": "NODE_ENV=development NODE_OPTIONS=--max_old_space_size=4096 DEBUG=v8:* quasar dev -m spa",
"test": "echo \"No test specified\" && exit 0",
"generate-sw": "workbox generateSW workbox-config.js"
},
"dependencies": {
"@quasar/extras": "^1.15.5",
"@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",
"@vue/eslint-config-standard": "7.0.0",
"@vuelidate/core": "^2.0.0",
"@vuelidate/validators": "^2.0.0",
"acorn": "^8.8.1",
"animate.css": "^4.1.1",
"autoprefixer": "^10.4.13",
"axios": "^1.1.3",
"bcryptjs": "^2.4.3",
"chart.js": "^3.9.1",
"core-js": "^3.26.0",
"date-fns": "^2.29.3",
"dotenv": "^16.0.3",
"echarts": "^5.4.0",
"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",
"js-cookie": "^3.0.1",
"localforage": "^1.10.0",
"lodash": "^4.17.21",
"normalize.css": "^8.0.1",
"npm": "^9.1.1",
"nprogress": "^0.2.0",
"pinia": "^2.0.23",
"prerender-spa-plugin": "^3.4.0",
"quasar": "^2.10.1",
"quasar-extras": "^2.0.9",
"register-service-worker": "^1.7.2",
"vee-validate": "^4.7.2",
"vue": "^3.2.45",
"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-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-svgicon": "^4.0.0-alpha.3",
"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.2.2",
"@types/js-cookie": "^3.0.2",
"@types/node": "18.11.9",
"@types/nprogress": "^0.2.0",
"@types/vue-tel-input": "^2.1.2",
"@types/vuelidate": "^0.7.15",
"@typescript-eslint/eslint-plugin": "^5.42.1",
"@typescript-eslint/parser": "^5.42.1",
"eslint": "^8.27.0",
"eslint-config-prettier": "^8.5.0",
"eslint-plugin-import": "^2.26.0",
"eslint-plugin-node": "^11.1.0",
"eslint-plugin-promise": "^6.1.1",
"eslint-plugin-vue": "^9.7.0",
"file-loader": "^6.2.0",
"html-webpack-plugin": "^5.5.0",
"http-proxy-middleware": "^2.0.6",
"jest": "^29.3.1",
"json-loader": "^0.5.7",
"node-sass": "7.0.1",
"npm-check-updates": "^16.3.25",
"optimize-css-assets-webpack-plugin": "^6.0.1",
"postcss": "^8.4.19",
"postcss-loader": "^7.0.1",
"sass-loader": "^13.2.0",
"strip-ansi": "=7.0.1",
"ts-jest": "^29.0.3",
"ts-loader": "^9.4.1",
"tslint": "^6.1.3",
"tslint-config-standard": "^9.0.0",
"tslint-loader": "^3.5.4",
"typescript": "^4.8.4",
"vue-cli-plugin-element-ui": "^1.1.4",
"vueify": "^9.4.1",
"webpack": "^5.75.0",
"workbox-webpack-plugin": "^6.5.4"
},
"browser": {
"crypto": false
},
"browserslist": [
"last 16 Chrome versions",
"last 16 Firefox versions",
"last 4 Edge versions",
"last 13 Safari versions",
"last 16 Android versions",
"last 16 ChromeAndroid versions",
"last 16 FirefoxAndroid versions",
"last 12 iOS versions",
"last 7 Opera versions"
],
"engines": {
"node": ">= 16.14.0",
"npm": ">= 6.14.8",
"yarn": ">= 1.21.1"
}
}

View File

@@ -3,7 +3,7 @@
* the ES6 features that are supported by your Node version. https://node.green/
*/
// Configuration for your app
// Configuration for your appanimated
// https://v2.quasar.dev/quasar-cli/quasar-conf-js
/* eslint-env node */
@@ -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'],
boot: ['i18n', 'axios', 'vee-validate', 'myconfig', 'local-storage', 'error-handler', 'globalroutines', 'calendar'],
// https://v2.quasar.dev/quasar-cli/quasar-conf-js#Property%3A-css
css: [
@@ -147,9 +147,9 @@ module.exports = configure((ctx) => ({
},
devServer: {
https: false,
port: 8083,
port: 8090,
open: false, // opens browser window automatically
liveReload: false,
// vueDevtools: true,
},
// https://v2.quasar.dev/quasar-cli/quasar-conf-js#Property%3A-framework
@@ -204,6 +204,7 @@ module.exports = configure((ctx) => ({
'QBanner',
'QInnerLoading',
'QSpinnerGears',
'QSpinnerDots',
'QDate',
'QTime',
'QSlideTransition',
@@ -241,14 +242,15 @@ module.exports = configure((ctx) => ({
'Notify',
'Cookies',
'Loading',
'AppVisibility',
],
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: {
@@ -274,49 +276,6 @@ module.exports = configure((ctx) => ({
},
// https://v2.quasar.dev/quasar-cli/developing-pwa/configuring-pwa
pwa: {
workboxPluginMode: 'InjectManifest', // 'GenerateSW' or 'InjectManifest'
workboxOptions: {}, // only for GenerateSW
// 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: 'PopoloDelNuovoMondo',
short_name: 'PdNM',
description: 'Popolo del Nuovo Mondo',
display: 'standalone',
orientation: 'portrait',
background_color: '#ffffff',
theme_color: '#027be3',
icons: [
{
src: 'images/pdnm-android-icon-96x96.png',
sizes: '96x96',
type: 'image/png',
},
{
src: 'images/pdnm-android-icon-144x144.png',
sizes: '144x144',
type: 'image/png',
},
{
src: 'images/pdnm-android-icon-192x192.png',
sizes: '192x192',
type: 'image/png',
},
{
src: 'images/pdnm-android-icon-512x512.png',
sizes: '512x512',
type: 'image/png',
},
],
},
},
// Full list of options: https://v2.quasar.dev/quasar-cli/developing-cordova-apps/configuring-cordova
cordova: {
@@ -330,37 +289,5 @@ module.exports = configure((ctx) => ({
// 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: 'firstproj',
},
// "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
},
},
}))

View 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;
}

View 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,
}
},
})

View 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">
&nbsp;
</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">
&nbsp;
</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="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>

View 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;
}

View 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,
}
},
})

View 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">
&nbsp;
</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">
&nbsp;
</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>

View File

@@ -1,73 +0,0 @@
const msg_website_enUs = {
ws: {
sitename: 'Comunità Nuovo Mondo',
siteshortname: 'CNM',
botname: 'CNM BOT',
},
pages: {
home: 'Home',
profile: 'Profile',
payment: 'Payments',
regok: 'Registration Confirmed',
presentazione: 'Presentation',
presentazione2: 'Presentation',
invita: 'Invite People',
SignUp: 'Registration',
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',
Test1: 'Test1',
Test2: 'Test2',
statusreg: {
reg: 'Participants',
passeggeri: 'Passengers Ships',
giainlista: 'Already in the List',
newreg: 'New registrations:',
nationality: 'Nationality',
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',
},
},
msg: {
myAppDescription: '',
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;

View File

@@ -1,77 +0,0 @@
const msg_website_es = {
ws: {
sitename: 'AYNI',
siteshortname: 'Ayni',
botname: 'AYNI BOT',
},
pages: {
home: 'Home',
profile: 'Perfil',
payment: 'Paiements',
regok: 'Registro confirmado',
presentazione: 'Presentación',
presentazione2: 'Presentación',
invita: 'Invitar a la gente',
SignUp: 'Registro',
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',
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',
chisiamo: 'Chi Siamo',
linkamici: 'Link Amici',
dovesiamo: 'Dove Siamo',
calendarioeventi: 'Calendario Eventi',
Category: 'Categorie',
Admin: 'Admin',
Test1: 'Test1',
Test2: 'Test2',
statusreg: {
reg: 'Participantes',
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',
},
},
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;

View File

@@ -1,721 +0,0 @@
import {
IListRoutes,
ILang,
IFunctionality,
IPreloadImages,
} from '@model'
const functionality: IFunctionality = {
PWA: true,
SHOW_USER_MENU: true, // Cambiare con true
SHOW_PROFILE: true,
SHOW_REG_BUTTON: false,
ENABLE_REGISTRATION: true, // Cambiare con true
ENABLE_REG_NEED_TELEGRAM: false,
SHOW_NEWSLETTER: false,
SHOW_ONLY_POLICY: false,
ENABLE_TODOS_LOADING: false,
ENABLE_PROJECTS_LOADING: false,
SHOW_IF_IS_SERVER_CONNECTION: false,
SHOW_MESSAGES: false,
BOOKING_EVENTS: true,
ENABLE_ECOMMERCE: false,
ENABLE_REG_ISP: true,
ENABLE_GROUPS: false,
}
// const SHOW_PROJINTHEMENU = false
//
// let arrlistafavourite = []
// let arrlistaprojtutti = []
// let arrlistaprojmiei = []
// if (SHOW_PROJINTHEMENU) {
// arrlistaprojtutti = Projects.getters.listaprojects(RouteNames.projectsall)
// arrlistaprojmiei = Projects.getters.listaprojects(RouteNames.myprojects)
// arrlistafavourite = Projects.getters.listaprojects(RouteNames.favouriteprojects)
// }
// PROGETTI -> FAVORITI :
// if (arrlistafavourite.length > 0) {
// arrMenu.push({
// icon: 'favorite_border',
// nametranslate: 'pages.' + RouteNames.favouriteprojects,
// urlroute: RouteNames.favouriteprojects,
// level_parent: 0.0,
// level_child: 0.5,
// routes2: arrlistafavourite,
// idelem: ''
// })
// }
const routes_todo: IListRoutes[] = []
const arrlista = [
{ nametranslate: 'personal', description: 'personal' },
{ nametranslate: 'work', description: 'work' },
{ nametranslate: 'shopping', description: 'shopping' },
]
const routes_admin: IListRoutes[] = [
{
active: true,
order: 10,
path: '/admin/sites',
materialIcon: 'event_seat',
name: 'pages.Sites',
component: () => import('@/rootgen/admin/sites/sites.vue'),
level_parent: 0.0,
level_child: 0.5,
inmenu: true,
submenu: true,
onlyAdmin: true
},
{
active: true,
order: 1000,
path: '/admin/cfgserv',
materialIcon: 'event_seat',
name: 'pages.Admin',
component: () => import('@/views/admin/cfgServer/cfgServer.vue'),
level_parent: 0.0,
level_child: 0.5,
inmenu: true,
submenu: true,
onlyAdmin: true
},
{
active: true,
order: 1020,
path: '/admin/dbop',
materialIcon: 'event_seat',
name: 'pages.dbop',
component: () => import('@/views/admin/dbop/dbop.vue'),
level_parent: 0.0,
level_child: 0.5,
inmenu: true,
submenu: true,
onlyAdmin: true
},
{
active: true,
order: 1030,
path: '/admin/sendpushnotif',
materialIcon: 'event_seat',
name: 'otherpages.manage.sendpushnotif',
component: () => import('@/rootgen/admin/sendpushnotif/sendpushnotif.vue'),
level_parent: 0.0,
level_child: 0.5,
inmenu: true,
submenu: true,
onlyAdmin: true
},
{
active: true,
order: 1040,
path: '/admin/importfile',
materialIcon: 'event_seat',
name: 'otherpages.manage.importfile',
component: () => import('@/rootgen/admin/importdata/importdata.vue'),
level_parent: 0.0,
level_child: 0.5,
inmenu: true,
submenu: true,
onlyAdmin: true
}
]
const routes_newsletter: IListRoutes[] = [
{
active: true,
order: 10,
name: 'newsletter.template', path: '/admin/newsletter/templemail', materialIcon: 'fas fa-users',
component: () => import('@/rootgen/admin/newsletter/newsletter.vue'),
inmenu: true, submenu: true, level_parent: 0.5, level_child: 0.5, onlyManager: true
},
{
active: true,
order: 20,
name: 'newsletter.sendemail', path: '/admin/newsletter/newnewsletter', materialIcon: 'fas fa-users',
component: () => import('@/rootgen/admin/newsletter/newsletter.vue'),
inmenu: true, submenu: true, level_parent: 0.5, level_child: 0.5, onlyManager: true
},
{
active: true,
order: 30,
name: 'newsletter.check', path: '/admin/newsletter/check', materialIcon: 'fas fa-users',
component: () => import('@/rootgen/admin/newsletter/newsletter.vue'),
inmenu: true, submenu: true, level_parent: 0.5, level_child: 0.5, onlyManager: true
},
{
active: true,
order: 40,
name: 'newsletter.sent', path: '/admin/newsletter/newslist', materialIcon: 'fas fa-users',
component: () => import('@/rootgen/admin/newsletter/newsletter.vue'),
inmenu: true, submenu: true, level_parent: 0.5, level_child: 0.5, onlyManager: true
},
{
active: true,
order: 50,
name: 'newsletter.mailinglist', path: '/admin/newsletter/mailinglist', materialIcon: 'fas fa-users',
component: () => import('@/rootgen/admin/newsletter/newsletter.vue'),
inmenu: true, submenu: true, level_parent: 0.5, level_child: 0.5, onlyManager: true
},
{
active: true,
order: 60,
name: 'newsletter.settings', path: '/admin/newsletter/settings', materialIcon: 'fas fa-users',
component: () => import('@/rootgen/admin/newsletter/newsletter.vue'),
inmenu: true, submenu: true, level_parent: 0.5, level_child: 0.5, onlyManager: true
},
{
active: true,
order: 70,
name: 'newsletter.serversettings', path: '/admin/newsletter/main_settings', materialIcon: 'fas fa-users',
component: () => import('@/rootgen/admin/newsletter/newsletter.vue'),
inmenu: true, submenu: true, level_parent: 0.5, level_child: 0.5, onlyManager: true
},
{
active: true,
order: 80,
name: 'newsletter.others', path: '/admin/newsletter/events', materialIcon: 'fas fa-users',
component: () => import('@/rootgen/admin/newsletter/newsletter.vue'),
inmenu: true, submenu: true, level_parent: 0.5, level_child: 0.5, onlyManager: true
}
]
const routes_manager: IListRoutes[] = [
{
active: functionality.BOOKING_EVENTS,
order: 70,
path: '/admin/usereventlist',
materialIcon: 'edit',
name: 'otherpages.admin.usereventlist',
component: () => import('@/rootgen/admin/eventlist/eventlist.vue'),
inmenu: true,
submenu: true,
level_parent: 0,
level_child: 0.5,
infooter: true,
onlyManager: true,
onlyConsiglio: true,
onlyAdmin: true
},
{
active: true,
order: 10,
path: '/admin/userlist',
materialIcon: 'fas fa-users',
name: 'otherpages.admin.userlist',
component: () => import('@/rootgen/admin/usersList/usersList.vue'),
inmenu: true,
submenu: true,
level_parent: 0,
level_child: 0.5,
onlyManager: true,
onlyFacilitatore: true
},
/*
{
active: true,
order: 10,
path: '/admin/iscritticonacreis',
materialIcon: 'fas fa-users',
name: 'otherpages.admin.iscritticonacreis',
component: () => import('@/rootgen/admin/iscritticonacreis/iscritticonacreis.vue'),
inmenu: true,
submenu: true,
level_parent: 0,
level_child: 0.5,
onlyManager: true,
onlyFacilitatore: true
},
*/
{
active: true,
order: 10,
path: '/admin/zoomlist',
materialIcon: 'fas fa-users',
name: 'otherpages.admin.zoomlist',
component: () => import('@/rootgen/admin/zoomList/zoomList.vue'),
inmenu: true,
submenu: true,
level_parent: 0,
level_child: 0.5,
onlyManager: true,
onlyFacilitatore: false
},
{
active: true,
order: 27,
path: '/admin/tableslist',
materialIcon: 'fas fa-users',
name: 'otherpages.admin.tableslist',
component: () => import('@/rootgen/admin/tablesList/tablesList.vue'),
inmenu: true,
submenu: true,
level_parent: 0,
level_child: 0.5,
onlyAdmin: true,
onlyManager: true
},
{
active: true,
order: 30,
path: '/admin/pages',
materialIcon: 'fas fa-file-alt',
name: 'otherpages.admin.pages',
component: () => import('@/rootgen/admin/pages/pages.vue'),
inmenu: true,
submenu: true,
level_parent: 0,
level_child: 0.5,
onlyManager: true,
onlyEditor: true
},
{
active: true,
order: 30,
path: '/admin/bot',
materialIcon: 'fas fa-file-alt',
name: 'otherpages.admin.bot',
component: () => import('@/rootgen/admin/bot/bot.vue'),
inmenu: true,
submenu: true,
level_parent: 0,
level_child: 0.5,
onlyManager: true,
onlyEditor: true
},
{
active: true,
path: '/admin/newsletter',
order: 60,
faIcon: 'fa fa-list-alt',
materialIcon: 'fas fa-users',
name: 'otherpages.admin.newsletter',
routes2: routes_newsletter,
inmenu: false,
submenu: true,
level_parent: 0.5,
level_child: 0.5,
solotitle: true,
onlyAdmin: true,
onlyManager: true
},
/*
{
active: functionality.ENABLE_ECOMMERCE,
path: '/admin/ecommerce',
order: 31,
faIcon: 'fa fa-list-alt',
materialIcon: 'next_week',
name: 'pages.admin_ecommerce',
routes2: routes_admin_ecommerce,
inmenu: false,
submenu: true,
level_parent: 0.5,
level_child: 0.5,
solotitle: true,
onlyAdmin: true,
onlyManager: true,
onlyDepartment: true
},
*/
{
active: true,
order: 35,
path: '/admin/msg_template',
materialIcon: 'fas fa-file-alt',
name: 'msgs.messages',
component: () => import('@/rootgen/admin/msg_template/msg_template.vue'),
inmenu: true,
submenu: true,
level_parent: 0,
level_child: 0.5,
onlyAdmin: true,
onlyManager: true
// onlyFacilitatore: true
},
{
active: true,
order: 40,
path: '/admin/gallery',
materialIcon: 'fas fa-file-alt',
name: 'otherpages.admin.gallery',
component: () => import('@/rootgen/admin/gallery/gallery.vue'),
inmenu: true,
submenu: true,
level_parent: 0,
level_child: 0.5,
onlyAdmin: true,
onlyManager: true
},
{
active: true,
order: 50,
path: '/admin/media',
materialIcon: 'fas fa-file-alt',
name: 'otherpages.admin.media',
component: () => import('@/rootgen/admin/uploader/uploader.vue'),
inmenu: true,
submenu: true,
level_parent: 0,
level_child: 0.5,
onlyAdmin: true,
onlyManager: true
},
]
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: 10,
path: '/events',
materialIcon: 'fas fa-bullhorn',
name: 'mypages.events',
component: () => import('@/root/eventi/eventi.vue'),
meta: { requiresAuth: true },
inmenu: true,
infooter: true,
},
{
active: true,
order: 12,
path: '/goods',
materialIcon: 'fas fa-briefcase',
name: 'mypages.goods',
component: () => import('@/root/goods/goods.vue'),
meta: { requiresAuth: true },
inmenu: true,
infooter: true,
},
{
active: true,
order: 15,
path: '/services',
materialIcon: 'fas fa-briefcase',
name: 'mypages.services',
component: () => import('@/root/services/services.vue'),
meta: { requiresAuth: true },
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,
path: '/myprofile',
materialIcon: 'fas fa-user',
name: 'pages.profile',
component: () => import('@/views/user/myprofile/myprofile.vue'),
meta: { requiresAuth: true },
inmenu: true,
infooter: true,
},
{
active: true,
order: 120,
path: '/editprofile',
materialIcon: 'fas fa-user',
name: 'pages.profile3',
component: () => import('@/views/user/editprofile/editprofile.vue'),
meta: { requiresAuth: true },
inmenu: false,
infooter: false,
},
{
active: true,
order: 130,
path: '/friends',
materialIcon: 'fas fa-user-friends',
name: 'mypages.friends',
component: () => import('@/views/user/myfriends/myfriends.vue'),
meta: { requiresAuth: true },
inmenu: true,
infooter: true,
},
{
active: functionality.ENABLE_GROUPS,
order: 132,
path: '/groups',
materialIcon: 'fas fa-users',
name: 'mypages.groups',
component: () => import('@/views/user/mygroups/mygroups.vue'),
meta: { requiresAuth: true },
inmenu: true,
infooter: true,
},
{
active: true,
order: 135,
path: '/my/:username',
materialIcon: 'fas fa-user',
name: 'pages.profile2',
component: () => import('@/views/user/myprofile/myprofile.vue'),
meta: { requiresAuth: true },
inmenu: false,
infooter: false,
},
{
active: true,
order: 136,
path: '/grp/:groupname',
materialIcon: 'fas fa-user',
name: 'proj.group2',
component: () => import('@/views/user/mygroup/mygroup.vue'),
meta: { requiresAuth: true },
inmenu: false,
infooter: false,
},
{
active: true,
order: 130,
path: '/mypage/:idBacheca',
materialIcon: '',
name: 'pages.mypage2',
component: () => import('@/views/user/mypagebacheca/mypagebacheca.vue'),
meta: { requiresAuth: true },
inmenu: false,
infooter: false,
},
{
active: true,
order: 130,
path: '/myservice/:idSkill',
materialIcon: '',
name: 'pages.myservice2',
component: () => import('@/views/user/myservice/myservice.vue'),
meta: { requiresAuth: true },
inmenu: false,
infooter: false,
},
{
active: true,
order: 400,
path: '/test',
materialIcon: 'fas fa-test',
name: 'mypages.test',
component: () => import('@/views/testServer/testServer.vue'),
meta: { requiresAuth: true },
inmenu: false,
infooter: false,
},
{
active: true,
order: 2000,
path: '/admin',
materialIcon: 'fas fa-user-shield',
name: 'otherpages.admin.menu',
inmenu: true,
routes2: routes_admin,
solotitle: true,
infooter: true,
onlyAdmin: true
},
...routes_admin,
{
active: true,
order: 2110,
path: '/manage',
materialIcon: 'fas fa-users-cog',
name: 'otherpages.manage.menu',
inmenu: true,
routes2: routes_manager,
solotitle: true,
infooter: true,
onlyAdmin: true,
onlyManager: true,
onlyFacilitatore: true,
onlyEditor: true
},
...routes_manager,
{
active: true,
order: 1000,
path: '/404error',
materialIcon: 'fas fa-calendar-plus',
name: 'otherpages.error404',
component: () => import('@/root/My404page/My404page.vue'),
inmenu: false,
infooter: false
},
// --- NOT IN MENU: ---
/*{
order: 8,
path: '/policy',
name: 'pages.policy',
component: () => import('@src/root/policy/policy.vue'),
},*/
{
active: functionality.ENABLE_REGISTRATION,
order: 1000,
path: '/signup/:invited',
materialIcon: 'how_to_reg',
name: 'pages.SignUp',
component: () => import('@/views/login/signup/signup.vue'),
inmenu: false,
infooter: false,
separator: false
},
{
active: functionality.ENABLE_REGISTRATION,
order: 2000,
path: '/regok',
materialIcon: 'how_to_reg',
name: 'pages.regok',
component: () => import('@/views/login/regok/regok.vue'),
inmenu: false,
infooter: false,
separator: false,
},
{
active: true,
order: 1000,
path: '/signin',
materialIcon: 'account_circle',
name: 'pages.SignIn',
component: () => import('@/views/login/signin_noreg/signin_noreg.vue'),
inmenu: true,
infooter: true
},
{
active: true,
order: 1000,
path: '/vreg',
name: 'pages.vreg',
component: () => import('@/views/login/vreg/vreg.vue')
},
{
active: true,
order: 1000,
path: '/requestresetpwd',
name: 'pages.requestresetpwd',
component: () => import('@/views/requestresetpwd/requestresetpwd.vue')
},
{
active: true,
order: 1000,
path: '/updatepassword',
name: 'pages.updatepassword',
component: () => import('@/views/updatepassword/updatepassword.vue')
},
{
active: true,
order: 1000,
path: '/offline',
name: 'Offline',
component: () => import('@/views/offline/offline.vue')
},
{
active: true,
path: '/separator',
name: 'separator',
order: 35,
isseparator: true,
inmenu: true,
},
{
active: false,
order: 80,
path: '/calendario-eventi',
materialIcon: 'event',
name: 'pages.calendarioeventi',
component: () => import('@/root/calendarioeventi/calendarioeventi.vue'),
extraclass: 'isCalendar',
inmenu: true,
infooter: true
},
{
active: true,
order: 1000,
path: '/admin/newsletter/:idparam',
materialIcon: 'event',
name: 'pages.newsletter.menu',
component: () => import('@/rootgen/admin/newsletter/newsletter.vue'),
inmenu: false,
infooter: false
},
{
active: true,
order: 90,
path: '/event/:typol/:eventid',
materialIcon: 'event',
name: 'pages.evento',
component: () => import('@/root/evento/evento.vue'),
inmenu: false,
infooter: false
},
{
active: true,
order: 110,
path: '/event/:typol',
materialIcon: 'event',
name: 'pages.eventodef',
component: () => import('@/root/evento/evento.vue'),
inmenu: false,
infooter: false
},
]
const arrLangUsed = [
'it',
'enUs',
'es',
]
const lang_available: ILang[] = [
{
label: 'Italiano', icon: 'fa-flag-it', value: 'it', image: '../images/it.png', short: 'IT',
},
/*{
label: 'English', icon: 'fa-flag-us', value: 'enUs', image: '../images/gb.png', short: 'EN',
},
{
label: 'Español', icon: 'fa-flag-es', value: 'es', image: '../images/es.png', short: 'ES',
},
*/
// { label: 'Français', icon: 'fa-facebook', value: 'fr', image: '../public/images/fr.png', short: 'FR' }
// { label: 'German', icon: 'fa-flag-de', value: 'de', image: '../public/images/de.png', short: 'DE' },
]
const preLoadImages: IPreloadImages[] = []
export const preloadedimages = []
export const routes = baseroutes
export const static_data = {
baseroutes,
routes,
functionality,
lang_available,
preLoadImages,
arrLangUsed,
preloadedimages,
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 86 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 49 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 86 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 49 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 54 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 74 KiB

View File

@@ -1,135 +0,0 @@
{
"name": "popolodelnuovomondo",
"version": "0.0.8",
"description": "Popolo Del Nuovo Mondo",
"productName": "Popolo Del Nuovo Mondo",
"author": "Paolo Arena",
"private": true,
"keywords": [
],
"license": "MIT",
"scripts": {
"dev": "quasar dev",
"build": "quasar build",
"buildpwa": "quasar build -m pwa",
"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",
"test": "echo \"No test specified\" && exit 0",
"generate-sw": "workbox generateSW workbox-config.js"
},
"dependencies": {
"axios": "0.21.4",
"@vue/eslint-config-standard": "5.1.2",
"@quasar/extras": "^1.12.4",
"@quasar/quasar-ui-qcalendar": "^4.0.0-beta.12",
"@vue/compat": "^3.2.26",
"@vue/compiler-sfc": "^3.2.26",
"@vuelidate/core": "^2.0.0-alpha.34",
"@vuelidate/validators": "^2.0.0-alpha.26",
"acorn": "^8.7.0",
"autoprefixer": "^10.4.2",
"bcryptjs": "^2.4.3",
"core-js": "^3.20.3",
"crypto": "^1.0.1",
"date-fns": "^2.28.0",
"dotenv": "^11.0.0",
"echarts": "^5.2.2",
"eslint-plugin-quasar": "^1.1.0",
"eslint-plugin-standard": "^5.0.0",
"graphql": "^16.2.0",
"graphql-tag": "^2.12.6",
"gsap": "^3.9.1",
"jquery": "^3.6.0",
"js-cookie": "^3.0.1",
"localforage": "^1.10.0",
"lodash": "^4.17.21",
"normalize.css": "^8.0.1",
"npm": "^8.3.0",
"nprogress": "^0.2.0",
"pinia": "^2.0.9",
"prerender-spa-plugin": "^3.4.0",
"quasar": "^2.4.12",
"quasar-extras": "^2.0.9",
"register-service-worker": "^1.7.2",
"vee-validate": "^4.4.10",
"vue": "^3.2.26",
"vue-class-component": "^8.0.0-rc.1",
"vue-country-code": "^1.1.2",
"vue-echarts": "^6.0.0",
"vue-i18n": "^9.2.0-beta.26",
"vue-idb": "^0.2.0",
"vue-loader": "^16.5.0",
"vue-property-decorator": "^10.0.0-rc.3",
"vue-router": "^4.0.11",
"vue-scroll-reveal": "^1.0.11",
"vue-svgicon": "^4.0.0-alpha.3",
"vue2-dragula": "^2.5.5",
"vuex": "^4.0.1",
"vuex-router-sync": "^6.0.0-rc.1"
},
"devDependencies": {
"node-sass": "6.0.1",
"webpack": "^5.66.0",
"@quasar/app": "^3.2.9",
"@quasar/quasar-app-extension-qcalendar": "^4.0.0-beta.12",
"@types/bcryptjs": "^2.4.2",
"@types/dotenv": "^8.2.0",
"@types/googlemaps": "^3.43.3",
"@types/jest": "^27.0.3",
"@types/js-cookie": "^3.0.1",
"@types/node": "17.0.0",
"@types/nprogress": "^0.2.0",
"@types/vue-tel-input": "^2.1.2",
"@types/vuelidate": "^0.7.15",
"@typescript-eslint/eslint-plugin": "^5.10.0",
"@typescript-eslint/parser": "^5.10.0",
"eslint": "^8.7.0",
"eslint-config-prettier": "^8.3.0",
"eslint-plugin-import": "^2.25.4",
"eslint-plugin-node": "^11.1.0",
"eslint-plugin-promise": "^5.2.0",
"eslint-plugin-vue": "^8.3.0",
"file-loader": "^6.2.0",
"html-webpack-plugin": "^5.5.0",
"http-proxy-middleware": "^2.0.1",
"jest": "^27.4.5",
"json-loader": "^0.5.7",
"npm-check-updates": "^12.1.0",
"optimize-css-assets-webpack-plugin": "^6.0.1",
"postcss": "^8.4.5",
"postcss-loader": "^6.2.1",
"sass-loader": "^12.4.0",
"strip-ansi": "=7.0.1",
"ts-jest": "^27.1.2",
"ts-loader": "^9.2.6",
"tslint": "^6.1.3",
"tslint-config-standard": "^9.0.0",
"tslint-loader": "^3.5.4",
"typescript": "^4.5.5",
"vue-cli-plugin-element-ui": "^1.1.4",
"vueify": "^9.4.1",
"workbox-webpack-plugin": "^6.4.2"
},
"browser": {
"crypto": false
},
"browserslist": [
"last 10 Chrome versions",
"last 10 Firefox versions",
"last 4 Edge versions",
"last 7 Safari versions",
"last 8 Android versions",
"last 8 ChromeAndroid versions",
"last 8 FirefoxAndroid versions",
"last 10 iOS versions",
"last 5 Opera versions"
],
"engines": {
"node": ">= 14.17.0",
"npm": ">= 6.14.8",
"yarn": ">= 1.21.1"
}
}

View File

@@ -1,4 +1,8 @@
APP_VERSION="0.5.24"
<<<<<<< HEAD
APP_VERSION="0.5.83"
=======
APP_VERSION="0.5.85"
>>>>>>> parent of 701e1f1 (Aggiornamento a 0.6.1)
SERVICE_WORKER_FILE="service-worker.js"
APP_ID="13"
DIRECTORY_LOCAL="newfreeplanet"

View File

@@ -0,0 +1,31 @@
<<<<<<< HEAD
APP_VERSION="0.5.83"
=======
APP_VERSION="0.5.85"
>>>>>>> parent of 701e1f1 (Aggiornamento a 0.6.1)
SERVICE_WORKER_FILE="service-worker.js"
APP_ID="13"
DIRECTORY_LOCAL=newfreeplanet
DIRECTORY_SERVER=freeplanet_serverside
SERVERDIR_WEBSITE=riso.app
SERVERPW_WEBSITE=pwdadmin@1AOK
APP_URL="https://riso.app"
URL_FACEBOOK=""
PROVA_PAOLO=""
LANG_DEFAULT="it"
PAO_APP_ID="KKPPAA5KJK435J3KSS9F9D8S9F8SD98F9SDF"
MASTER_KEY="KKPPSS5KJK435J3KSS9F9D8S9F8SD3CR3T"
MONGODB_HOST="https://www.freeplanet.app:3000"
LOGO_REG='riso-logo-full.png'
TEST_NAME=""
TEST_SURNAME=""
TEST_EMAIL=""
TEST_USERNAME=""
TEST_PASSWORD=""
TEST_APORTADOR="------"
PUBLICKEY_PUSH="BNM-cEpTbPVc_ujXf3QOC8ggf7b-X44P44esfJUWqNOFq1XhWCoZJpOi71_cbXC5SnfO9HassQ6OouAYgtBA9Pw"
DEBUG="1"
TELEGRAM_SUPPORT=""
PROJECT_ID_MAIN="5cc0a13fe5c9d156728f400a"
TEST_CELL=""
ISTEST=0

View File

@@ -1,18 +1,18 @@
APP_VERSION="0.5.24"
APP_VERSION="0.5.28"
SERVICE_WORKER_FILE="service-worker.js"
APP_ID="13"
APP_ID="16"
DIRECTORY_LOCAL=newfreeplanet
DIRECTORY_SERVER=test.freeplanet_serverside
SERVERDIR_WEBSITE="test.riso.app"
SERVERDIR_WEBSITE="test.kolibrilab.it"
SERVERPW_WEBSITE="pwdadmin@1AOK"
APP_URL="https://test.riso.app"
APP_URL="https://test.kolibrilab.it"
URL_FACEBOOK=""
PROVA_PAOLO=""
LANG_DEFAULT="it"
PAO_APP_ID="KKPPAA5KJK435J3KSS9F9D8S9F8SD98F9SDF"
MASTER_KEY="KKPPSS5KJK435J3KSS9F9D8S9F8SD3CR3T"
MONGODB_HOST="https://test.freeplanet.app:3001"
LOGO_REG='riso-logo-full.png'
LOGO_REG='kolibrilab-logo-full.png'
TEST_NAME=""
TEST_SURNAME=""
TEST_EMAIL=""

View File

@@ -15,6 +15,7 @@ const msg_website_de = {
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',

View File

@@ -56,7 +56,10 @@ const msg_website_it = {
SignUpIscrizione: 'Diventa Socio CNM',
SignUp_alreadylista: 'Registrazione per quelli che erano già nella lista di Notevole (del 2019) !',
SignUp2: 'Registrazione',
SignUpBot: 'Registrati',
SignUp3: 'Reg',
SignUp4: 'Reg',
SignUp5: 'Reg',
SignUpBot: 'Registrati con Telegram',
SignIn: 'Login',
status: 'Statistiche',
nextzoom: 'Conferenze',
@@ -96,7 +99,9 @@ const msg_website_it = {
autorizzare: 'In attesa di Abilitazione',
passeggeri: 'Passeggeri Navi',
giainlista: 'Gia in Lista',
newreg: 'Ultime Registrazioni:',
newreg: 'Registrati',
onlineusers: 'OnLine',
diffusori: 'Diffusori',
nationality: 'Nazionalità',
nationality_born: 'Nazione di Nascita',
verified: 'Verificata',
@@ -145,10 +150,8 @@ const msg_website_it = {
myAppDescription: 'Il primo Vero Social Libero, Equo e Solidale, dove Vive Consapevolezza e Aiuto Comunitario. Gratuito',
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à',
sottoTitoloApp: 'Rete Italiana di Scambio Orizzontale',
sottoTitoloApp2: '',
},
homepage: {
descrapp_title1: 'Uniti per Evolvere e Sperimentare',

View File

@@ -1,37 +1,11 @@
import {
IListRoutes,
ILang,
IFunctionality,
IPreloadImages,
ISites,
} from '@model'
import { func } from '@store/Modules/fieldsTable'
const functionality: IFunctionality = {
PWA: true,
SHOW_USER_MENU: true, // Cambiare con true
SHOW_PROFILE: true,
SHOW_REG_BUTTON: true,
ENABLE_REGISTRATION: true,
ENABLE_REG_BY_BOT: true,
ENABLE_REG_NEED_TELEGRAM: true,
SHOW_NEWSLETTER: false,
SHOW_ONLY_POLICY: true,
ENABLE_TODOS_LOADING: false,
ENABLE_PROJECTS_LOADING: false,
SHOW_IF_IS_SERVER_CONNECTION: false,
SHOW_MESSAGES: false,
SHOW_NOTIF: true,
SHOW_COINS: true,
BOOKING_EVENTS: true,
ENABLE_ECOMMERCE: false,
ENABLE_REG_ISP: true,
ENABLE_GROUPS: true,
ENABLE_CIRCUITS: true,
SHOW_COMPETENZE: true,
ENABLE_VIEW_GROUPS: true,
ENABLE_VIEW_USERS: true,
ENABLE_VIEW_PROFILE: true,
}
// const SHOW_PROJINTHEMENU = false
//
@@ -57,419 +31,21 @@ const functionality: IFunctionality = {
// })
// }
const routes_todo: IListRoutes[] = []
const arrlista = [
{ nametranslate: 'personal', description: 'personal' },
{ nametranslate: 'work', description: 'work' },
{ nametranslate: 'shopping', description: 'shopping' },
]
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,
}
const routes_admin: IListRoutes[] = [
{
active: true,
order: 10,
path: '/admin/sites',
materialIcon: 'event_seat',
name: 'pages.Sites',
component: () => import('@/rootgen/admin/sites/sites.vue'),
level_parent: 0.0,
level_child: 0.5,
inmenu: true,
submenu: true,
onlyAdmin: true
},
{
active: true,
order: 1000,
path: '/admin/cfgserv',
materialIcon: 'event_seat',
name: 'pages.Admin',
component: () => import('@/views/admin/cfgServer/cfgServer.vue'),
level_parent: 0.0,
level_child: 0.5,
inmenu: true,
submenu: true,
onlyAdmin: true
},
{
active: true,
order: 1020,
path: '/admin/dbop',
materialIcon: 'event_seat',
name: 'pages.dbop',
component: () => import('@/views/admin/dbop/dbop.vue'),
level_parent: 0.0,
level_child: 0.5,
inmenu: true,
submenu: true,
onlyAdmin: true
},
{
active: true,
order: 1040,
path: '/admin/importfile',
materialIcon: 'event_seat',
name: 'otherpages.manage.importfile',
component: () => import('@/rootgen/admin/importdata/importdata.vue'),
level_parent: 0.0,
level_child: 0.5,
inmenu: true,
submenu: true,
onlyAdmin: true
}
]
function getDynamicPages(site: ISites): IListRoutes[] {
const routes_newsletter: IListRoutes[] = [
{
active: true,
order: 10,
name: 'newsletter.template', path: '/admin/newsletter/templemail', materialIcon: 'fas fa-users',
component: () => import('@/rootgen/admin/newsletter/newsletter.vue'),
inmenu: true, submenu: true, level_parent: 0.5, level_child: 0.5, onlyManager: true, noroute: true
},
{
active: true,
order: 20,
name: 'newsletter.sendemail', path: '/admin/newsletter/newnewsletter', materialIcon: 'fas fa-users',
component: () => import('@/rootgen/admin/newsletter/newsletter.vue'),
inmenu: true, submenu: true, level_parent: 0.5, level_child: 0.5, onlyManager: true, noroute: true
},
{
active: true,
order: 30,
name: 'newsletter.check', path: '/admin/newsletter/check', materialIcon: 'fas fa-users',
component: () => import('@/rootgen/admin/newsletter/newsletter.vue'),
inmenu: true, submenu: true, level_parent: 0.5, level_child: 0.5, onlyManager: true, noroute: true
},
{
active: true,
order: 40,
name: 'newsletter.sent', path: '/admin/newsletter/newslist', materialIcon: 'fas fa-users',
component: () => import('@/rootgen/admin/newsletter/newsletter.vue'),
inmenu: true, submenu: true, level_parent: 0.5, level_child: 0.5, onlyManager: true, noroute: true
},
{
active: true,
order: 50,
name: 'newsletter.mailinglist', path: '/admin/newsletter/mailinglist', materialIcon: 'fas fa-users',
component: () => import('@/rootgen/admin/newsletter/newsletter.vue'),
inmenu: true, submenu: true, level_parent: 0.5, level_child: 0.5, onlyManager: true, noroute: true
},
{
active: true,
order: 60,
name: 'newsletter.settings', path: '/admin/newsletter/settings', materialIcon: 'fas fa-users',
component: () => import('@/rootgen/admin/newsletter/newsletter.vue'),
inmenu: true, submenu: true, level_parent: 0.5, level_child: 0.5, onlyManager: true, noroute: true
},
{
active: true,
order: 70,
name: 'newsletter.serversettings', path: '/admin/newsletter/main_settings', materialIcon: 'fas fa-users',
component: () => import('@/rootgen/admin/newsletter/newsletter.vue'),
inmenu: true, submenu: true, level_parent: 0.5, level_child: 0.5, onlyManager: true, noroute: true
},
{
active: true,
order: 80,
name: 'newsletter.others', path: '/admin/newsletter/events', materialIcon: 'fas fa-users',
component: () => import('@/rootgen/admin/newsletter/newsletter.vue'),
inmenu: true, submenu: true, level_parent: 0.5, level_child: 0.5, onlyManager: true, noroute: true
}
]
const routes_ris: IListRoutes[] = [
{
active: true,
order: 10,
path: '/admin/ris/circuitslist',
materialIcon: 'fas fa-users',
name: 'otherpages.admin.circuitslist',
component: () => import('@/rootgen/admin/circuitsList/circuitsList.vue'),
inmenu: true,
submenu: true,
level_parent: 0.5,
level_child: 0.5,
onlyManager: true,
onlyFacilitatore: true
},
{
active: true,
order: 20,
path: '/admin/ris/accountslist',
materialIcon: 'fas fa-users',
name: 'otherpages.admin.accountslist',
component: () => import('@/rootgen/admin/accountsList/accountsList.vue'),
inmenu: true,
submenu: true,
level_parent: 0.5,
level_child: 0.5,
onlyManager: true,
onlyFacilitatore: true
},
{
active: true,
order: 30,
path: '/admin/ris/movslist',
materialIcon: 'fas fa-users',
name: 'otherpages.admin.movslist',
component: () => import('@/rootgen/admin/movsList/movsList.vue'),
inmenu: true,
submenu: true,
level_parent: 0.5,
level_child: 0.5,
onlyManager: true,
onlyFacilitatore: true
},
]
const routes_manager: IListRoutes[] = [
{
active: functionality.BOOKING_EVENTS,
order: 70,
path: '/admin/usereventlist',
materialIcon: 'edit',
name: 'otherpages.admin.usereventlist',
component: () => import('@/rootgen/admin/eventlist/eventlist.vue'),
inmenu: functionality.BOOKING_EVENTS,
submenu: functionality.BOOKING_EVENTS,
level_parent: 0,
level_child: 0.5,
infooter: false,
onlyManager: true,
onlyConsiglio: true,
onlyAdmin: true
},
{
active: true,
order: 10,
path: '/admin/userlist',
materialIcon: 'fas fa-users',
name: 'otherpages.admin.userlist',
component: () => import('@/rootgen/admin/usersList/usersList.vue'),
inmenu: true,
submenu: true,
level_parent: 0,
level_child: 0.5,
onlyManager: true,
onlyFacilitatore: true
},
{
active: true,
order: 10,
path: '/admin/userpanel',
materialIcon: 'fas fa-users',
name: 'otherpages.admin.userpanel',
component: () => import('@/rootgen/admin/userPanel/userPanel.vue'),
inmenu: true,
submenu: true,
level_parent: 0,
level_child: 0.5,
onlyManager: true,
onlyFacilitatore: true
},
/*
{
active: true,
order: 10,
path: '/admin/iscritticonacreis',
materialIcon: 'fas fa-users',
name: 'otherpages.admin.iscritticonacreis',
component: () => import('@/rootgen/admin/iscritticonacreis/iscritticonacreis.vue'),
inmenu: true,
submenu: true,
level_parent: 0,
level_child: 0.5,
onlyManager: true,
onlyFacilitatore: true
},
*/
{
active: true,
path: '/admin/ris',
order: 60,
faIcon: 'fa fa-list-alt',
materialIcon: 'fas fa-users',
name: 'otherpages.admin.monete',
routes2: routes_ris,
inmenu: false,
submenu: true,
level_parent: 0.5,
level_child: 0.5,
solotitle: true,
onlyAdmin: true,
onlyManager: true
},
{
active: false,
order: 10,
path: '/admin/zoomlist',
materialIcon: 'fas fa-users',
name: 'otherpages.admin.zoomlist',
component: () => import('@/rootgen/admin/zoomList/zoomList.vue'),
inmenu: true,
submenu: true,
level_parent: 0,
level_child: 0.5,
onlyManager: true,
onlyFacilitatore: false
},
{
active: true,
order: 27,
path: '/admin/tableslist',
materialIcon: 'fas fa-users',
name: 'otherpages.admin.tableslist',
component: () => import('@/rootgen/admin/tablesList/tablesList.vue'),
inmenu: true,
submenu: true,
level_parent: 0,
level_child: 0.5,
onlyAdmin: true,
onlyManager: true
},
{
active: true,
order: 30,
path: '/admin/pages',
materialIcon: 'fas fa-file-alt',
name: 'otherpages.admin.pages',
component: () => import('@/rootgen/admin/pages/pages.vue'),
inmenu: true,
submenu: true,
level_parent: 0,
level_child: 0.5,
onlyManager: true,
onlyEditor: true
},
{
active: true,
order: 30,
path: '/admin/bot',
materialIcon: 'fas fa-file-alt',
name: 'otherpages.admin.bot',
component: () => import('@/rootgen/admin/bot/bot.vue'),
inmenu: true,
submenu: true,
level_parent: 0,
level_child: 0.5,
onlyManager: true,
onlyEditor: true
},
{
active: true,
order: 30,
path: '/admin/confsite',
materialIcon: 'fas fa-file-alt',
name: 'otherpages.admin.confsite',
component: () => import('@/rootgen/admin/confsite/confsite.vue'),
inmenu: true,
submenu: true,
level_parent: 0,
level_child: 0.5,
onlyManager: true,
onlyEditor: true
},
{
active: true,
path: '/admin/newsletter',
order: 60,
faIcon: 'fa fa-list-alt',
materialIcon: 'fas fa-users',
name: 'otherpages.admin.newsletter',
routes2: routes_newsletter,
inmenu: false,
submenu: true,
level_parent: 0.5,
level_child: 0.5,
solotitle: true,
onlyAdmin: true,
onlyManager: true
},
/*
{
active: functionality.ENABLE_ECOMMERCE,
path: '/admin/ecommerce',
order: 31,
faIcon: 'fa fa-list-alt',
materialIcon: 'next_week',
name: 'pages.admin_ecommerce',
routes2: routes_admin_ecommerce,
inmenu: false,
submenu: true,
level_parent: 0.5,
level_child: 0.5,
solotitle: true,
onlyAdmin: true,
onlyManager: true,
onlyDepartment: true
},
*/
{
active: true,
order: 35,
path: '/admin/msg_template',
materialIcon: 'fas fa-file-alt',
name: 'msgs.messages',
component: () => import('@/rootgen/admin/msg_template/msg_template.vue'),
inmenu: true,
submenu: true,
level_parent: 0,
level_child: 0.5,
onlyAdmin: true,
onlyManager: true
// onlyFacilitatore: true
},
{
active: true,
order: 1030,
path: '/admin/sendpushnotif',
materialIcon: 'event_seat',
name: 'otherpages.manage.sendpushnotif',
component: () => import('@/rootgen/admin/sendpushnotif/sendpushnotif.vue'),
level_parent: 0.0,
level_child: 0.5,
inmenu: true,
submenu: true,
onlyAdmin: true,
onlyManager: true,
},
{
active: true,
order: 40,
path: '/admin/gallery',
materialIcon: 'fas fa-file-alt',
name: 'otherpages.admin.gallery',
component: () => import('@/rootgen/admin/gallery/gallery.vue'),
inmenu: true,
submenu: true,
level_parent: 0,
level_child: 0.5,
onlyAdmin: true,
onlyManager: true
},
{
active: true,
order: 50,
path: '/admin/media',
materialIcon: 'fas fa-file-alt',
name: 'otherpages.admin.media',
component: () => import('@/rootgen/admin/uploader/uploader.vue'),
inmenu: true,
submenu: true,
level_parent: 0,
level_child: 0.5,
onlyAdmin: true,
onlyManager: true
},
]
const baseroutes: IListRoutes[] = [
const baseroutes: IListRoutes[] = [
{
active: true,
order: 5,
@@ -581,7 +157,7 @@ const baseroutes: IListRoutes[] = [
infooter: true,
},
{
active: functionality.ENABLE_GROUPS,
active: site.confpages && site.confpages.enableGroups,
order: 132,
path: '/groups',
materialIcon: 'fas fa-users',
@@ -592,7 +168,7 @@ const baseroutes: IListRoutes[] = [
infooter: true,
},
{
active: functionality.ENABLE_CIRCUITS,
active: site.confpages && site.confpages.enableCircuits,
order: 133,
path: '/circuits',
materialIcon: 'fas fa-coins',
@@ -602,17 +178,6 @@ const baseroutes: IListRoutes[] = [
inmenu: true,
infooter: true,
},
{
active: true,
order: 135,
path: '/my/:username',
materialIcon: 'fas fa-user',
name: 'pages.profile2',
component: () => import('@/views/user/myprofile/myprofile.vue'),
meta: { requiresAuth: true },
inmenu: false,
infooter: false,
},
{
active: true,
order: 136,
@@ -623,7 +188,7 @@ const baseroutes: IListRoutes[] = [
meta: { requiresAuth: true, newpage: true },
inmenu: false,
infooter: false,
},{
}, {
active: true,
order: 137,
path: '/circuit/:path',
@@ -688,189 +253,6 @@ const baseroutes: IListRoutes[] = [
inmenu: true,
infooter: true,
},
{
active: true,
order: 200,
path: '/notifs',
materialIcon: 'fas fa-user',
name: 'pages.notifs',
component: () => import('@/views/user/usernotifs/usernotifs.vue'),
meta: { requiresAuth: true },
inmenu: false,
infooter: false,
},
{
active: true,
order: 400,
path: '/test',
materialIcon: 'fas fa-test',
name: 'mypages.test',
component: () => import('@/views/testServer/testServer.vue'),
inmenu: false,
infooter: false,
},
{
active: true,
order: 400,
path: '/testlocal',
materialIcon: 'fas fa-test',
name: 'mypages.TestLocal',
component: () => import('@/views/test/test.vue'),
meta: { requiresAuth: true },
inmenu: false,
infooter: false,
},
{
active: true,
order: 2000,
path: '/admin',
materialIcon: 'fas fa-user-shield',
name: 'otherpages.admin.menu',
inmenu: true,
routes2: routes_admin,
solotitle: true,
infooter: false,
onlyAdmin: true
},
...routes_admin,
{
active: true,
order: 2110,
path: '/manage',
materialIcon: 'fas fa-users-cog',
name: 'otherpages.manage.menu',
inmenu: true,
routes2: routes_manager,
solotitle: true,
infooter: false,
onlyAdmin: true,
onlyManager: true,
onlyFacilitatore: true,
onlyEditor: true
},
...routes_manager,
{
active: true,
order: 1000,
path: '/404error',
materialIcon: 'fas fa-calendar-plus',
name: 'otherpages.error404',
component: () => import('@/root/My404page/My404page.vue'),
inmenu: false,
infooter: false
},
{
active: true,
order: 2000,
path: '/policy',
materialIcon: 'fas fa-user',
name: 'pages.policy',
component: () => import('@src/root/policy/policy.vue'),
inmenu: false,
infooter: true
},
{
active: functionality.ENABLE_REGISTRATION && functionality.ENABLE_REG_NEED_TELEGRAM,
order: 1000,
path: '/signup/:invited/:usernameteleg/:idteleg',
materialIcon: 'how_to_reg',
name: 'pages.SignUp',
component: () => import('@/views/login/signup/signup.vue'),
inmenu: false,
infooter: false,
separator: false
},
{
active: functionality.ENABLE_REG_BY_BOT,
order: 1000,
path: '/bot',
materialIcon: 'how_to_reg',
name: 'pages.SignUpBot',
inmenu: functionality.ENABLE_REG_BY_BOT,
infooter: functionality.ENABLE_REG_BY_BOT,
separator: false
},
/*{
active: functionality.ENABLE_REGISTRATION && !functionality.ENABLE_REG_NEED_TELEGRAM,
order: 1000,
path: '/signup',
materialIcon: 'how_to_reg',
name: 'pages.SignUp',
component: () => import('@/views/login/signup/signup_noteleg.vue'),
inmenu: false,
infooter: false,
separator: false
},*/
{
active: true,
order: 1001,
path: '/signup/:invited',
materialIcon: 'how_to_reg',
name: 'pages.SignUp2',
component: () => import('@/views/login/signup/signup.vue'),
inmenu: false,
infooter: false,
separator: false
},
{
active: functionality.ENABLE_REGISTRATION,
order: 2000,
path: '/regok',
materialIcon: 'how_to_reg',
name: 'pages.regok',
component: () => import('@/views/login/regok/regok.vue'),
inmenu: false,
infooter: false,
separator: false,
},
{
active: true,
order: 1000,
path: '/signin',
materialIcon: 'account_circle',
name: 'pages.SignIn',
component: () => import('@/views/login/signin_noreg/signin_noreg.vue'),
inmenu: true,
infooter: true
},
// --- NOT IN MENU: ---
{
active: true,
order: 1000,
path: '/vreg',
name: 'pages.vreg',
component: () => import('@/views/login/vreg/vreg.vue')
},
{
active: true,
order: 1000,
path: '/requestresetpwd',
name: 'pages.requestresetpwd',
component: () => import('@/views/requestresetpwd/requestresetpwd.vue')
},
{
active: true,
order: 1000,
path: '/updatepassword',
name: 'pages.updatepassword',
component: () => import('@/views/updatepassword/updatepassword.vue')
},
{
active: true,
order: 1000,
path: '/offline',
name: 'Offline',
component: () => import('@/views/offline/offline.vue')
},
{
active: true,
path: '/separator',
name: 'separator',
order: 35,
isseparator: true,
inmenu: true,
},
{
active: true,
order: 80,
@@ -882,44 +264,10 @@ const baseroutes: IListRoutes[] = [
inmenu: true,
infooter: true
},
{
active: true,
order: 1000,
path: '/admin/newsletter/:idparam',
materialIcon: 'event',
name: 'pages.newsletter.menu',
component: () => import('@/rootgen/admin/newsletter/newsletter.vue'),
inmenu: false,
infooter: false
},
{
active: true,
order: 90,
path: '/event/:typol/:eventid',
materialIcon: 'event',
name: 'pages.evento',
component: () => import('@/root/evento/evento.vue'),
inmenu: false,
infooter: false
},
{
active: true,
order: 110,
path: '/event/:typol',
materialIcon: 'event',
name: 'pages.eventodef',
component: () => import('@/root/evento/evento.vue'),
inmenu: false,
infooter: false
},
]
]
const arrLangUsed = [
'it',
// 'enUs',
// 'es',
]
return baseroutes
}
export function firstimagehome() {
@@ -927,34 +275,20 @@ export function firstimagehome() {
return img
}
const lang_available: ILang[] = [
{
label: 'Italiano', icon: 'fa-flag-it', value: 'it', image: '../images/it.png', short: 'IT',
},
/*{
label: 'English', icon: 'fa-flag-us', value: 'enUs', image: '../images/gb.png', short: 'EN',
},
{
label: 'Español', icon: 'fa-flag-es', value: 'es', image: '../images/es.png', short: 'ES',
},
*/
// { label: 'Français', icon: 'fa-facebook', value: 'fr', image: '../public/images/fr.png', short: 'FR' }
// { label: 'German', icon: 'fa-flag-de', value: 'de', image: '../public/images/de.png', short: 'DE' },
]
const preLoadImages: IPreloadImages[] = []
export const lang_available: ILang[] = []
export const arrLangUsed: string[] = []
export const preloadedimages = []
export const routes = baseroutes
export const routes: IListRoutes[] = [firstPage]
export const static_data = {
baseroutes,
routes,
functionality,
arrLangUsed,
getDynamicPages,
lang_available,
preLoadImages,
arrLangUsed,
preloadedimages,
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.3 KiB

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 46 KiB

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 80 KiB

After

Width:  |  Height:  |  Size: 43 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 333 KiB

After

Width:  |  Height:  |  Size: 138 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.6 KiB

After

Width:  |  Height:  |  Size: 5.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 550 KiB

After

Width:  |  Height:  |  Size: 185 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 23 KiB

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 31 KiB

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 34 KiB

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 46 KiB

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 51 KiB

After

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 69 KiB

After

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.9 KiB

After

Width:  |  Height:  |  Size: 7.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 529 KiB

After

Width:  |  Height:  |  Size: 634 KiB

View File

@@ -22,56 +22,58 @@
"generate-sw": "workbox generateSW workbox-config.js"
},
"dependencies": {
"@quasar/extras": "^1.15.2",
"@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.38",
"@vue/compiler-sfc": "^3.2.38",
"@vue/compat": "^3.2.45",
"@vue/compiler-sfc": "^3.2.45",
"@vue/eslint-config-standard": "7.0.0",
"@vuelidate/core": "^2.0.0-alpha.44",
"@vuelidate/validators": "^2.0.0-alpha.31",
"acorn": "^8.8.0",
"autoprefixer": "^10.4.8",
"axios": "^0.27.2",
"@vuelidate/core": "^2.0.0",
"@vuelidate/validators": "^2.0.0",
"acorn": "^8.8.1",
"animate.css": "^4.1.1",
"autoprefixer": "^10.4.13",
"axios": "^1.2.0",
"bcryptjs": "^2.4.3",
"chart.js": "^3.9.1",
"core-js": "^3.25.0",
"core-js": "^3.26.1",
"crypto": "^1.0.1",
"date-fns": "^2.29.2",
"dotenv": "^16.0.2",
"date-fns": "^2.29.3",
"dotenv": "^16.0.3",
"echarts": "^5.3.3",
"eslint-plugin-quasar": "^1.1.0",
"eslint-plugin-standard": "^5.0.0",
"graphql": "^16.6.0",
"graphql-tag": "^2.12.6",
"gsap": "^3.11.1",
"gsap": "^3.11.3",
"jquery": "^3.6.1",
"js-cookie": "^3.0.1",
"localforage": "^1.10.0",
"lodash": "^4.17.21",
"normalize.css": "^8.0.1",
"npm": "^8.19.1",
"npm": "^9.1.2",
"nprogress": "^0.2.0",
"pinia": "^2.0.22",
"pinia": "^2.0.27",
"prerender-spa-plugin": "^3.4.0",
"quasar": "^2.7.7",
"quasar": "^2.10.2",
"quasar-extras": "^2.0.9",
"register-service-worker": "^1.7.2",
"vee-validate": "^4.6.7",
"vue": "^3.2.38",
"vee-validate": "^4.7.3",
"vue": "^3.2.45",
"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-i18n": "^9.2.2",
"vue-idb": "^0.2.0",
"vue-loader": "^17.0.0",
"vue-loader": "^17.0.1",
"vue-property-decorator": "^10.0.0-rc.3",
"vue-router": "^4.1.5",
"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",
"vue2-dragula": "^2.5.5",
"vuex": "^4.0.2",
"vuex": "^4.1.0",
"vuex-router-sync": "^6.0.0-rc.1"
},
"devDependencies": {
@@ -79,56 +81,56 @@
"@types/bcryptjs": "^2.4.2",
"@types/dotenv": "^8.2.0",
"@types/googlemaps": "^3.43.3",
"@types/jest": "^29.0.0",
"@types/jest": "^29.2.3",
"@types/js-cookie": "^3.0.2",
"@types/node": "18.7.15",
"@types/node": "18.11.9",
"@types/nprogress": "^0.2.0",
"@types/vue-tel-input": "^2.1.2",
"@types/vuelidate": "^0.7.15",
"@typescript-eslint/eslint-plugin": "^5.36.2",
"@typescript-eslint/parser": "^5.36.2",
"eslint": "^8.23.0",
"@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",
"eslint-plugin-node": "^11.1.0",
"eslint-plugin-promise": "^6.0.1",
"eslint-plugin-vue": "^9.4.0",
"eslint-plugin-promise": "^6.1.1",
"eslint-plugin-vue": "^9.8.0",
"file-loader": "^6.2.0",
"html-webpack-plugin": "^5.5.0",
"http-proxy-middleware": "^2.0.6",
"jest": "^29.0.2",
"jest": "^29.3.1",
"json-loader": "^0.5.7",
"node-sass": "7.0.1",
"npm-check-updates": "^16.1.0",
"npm-check-updates": "^16.4.3",
"optimize-css-assets-webpack-plugin": "^6.0.1",
"postcss": "^8.4.16",
"postcss-loader": "^7.0.1",
"sass-loader": "^13.0.2",
"postcss": "^8.4.19",
"postcss-loader": "^7.0.2",
"sass-loader": "^13.2.0",
"strip-ansi": "=7.0.1",
"ts-jest": "^28.0.8",
"ts-loader": "^9.3.1",
"ts-jest": "^29.0.3",
"ts-loader": "^9.4.1",
"tslint": "^6.1.3",
"tslint-config-standard": "^9.0.0",
"tslint-loader": "^3.5.4",
"typescript": "^4.8.2",
"typescript": "^4.9.3",
"vue-cli-plugin-element-ui": "^1.1.4",
"vueify": "^9.4.1",
"webpack": "^5.74.0",
"webpack": "^5.75.0",
"workbox-webpack-plugin": "^6.5.4"
},
"browser": {
"crypto": false
},
"browserslist": [
"last 16 Chrome versions",
"last 16 Firefox versions",
"last 20 Chrome versions",
"last 20 Firefox versions",
"last 4 Edge versions",
"last 13 Safari versions",
"last 16 Android versions",
"last 16 ChromeAndroid versions",
"last 16 FirefoxAndroid versions",
"last 12 iOS versions",
"last 7 Opera 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"
],
"engines": {
"node": ">= 16.14.0",

View File

@@ -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'],
boot: ['i18n', 'axios', 'vee-validate', 'myconfig', 'local-storage', 'error-handler', 'globalroutines', 'calendar', 'social-sharing'],
// https://v2.quasar.dev/quasar-cli/quasar-conf-js#Property%3A-css
css: [
@@ -149,6 +149,10 @@ module.exports = configure((ctx) => ({
https: false,
port: 8084,
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
@@ -278,7 +282,10 @@ module.exports = configure((ctx) => ({
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) {
@@ -320,6 +327,26 @@ module.exports = configure((ctx) => ({
sizes: '96x96',
type: 'image/png',
},
{
src: 'images/riso-apple-icon-120x120.png',
sizes: '120x120',
type: 'image/png',
},
{
src: 'images/riso-apple-icon-144x144.png',
sizes: '144x144',
type: 'image/png',
},
{
src: 'images/riso-apple-icon-152x152.png',
sizes: '152x152',
type: 'image/png',
},
{
src: 'images/riso-apple-icon-180x180.png',
sizes: '180x180',
type: 'image/png',
},
],
},
},

View 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;
}

View 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,
}
},
})

View 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">
&nbsp;
</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">
&nbsp;
</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>

View 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;
}

View 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,
}
},
})

View 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">
&nbsp;
</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">
&nbsp;
</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>

View File

@@ -1,4 +1,8 @@
APP_VERSION="0.5.24"
<<<<<<< HEAD
APP_VERSION="0.5.83"
=======
APP_VERSION="0.5.85"
>>>>>>> parent of 701e1f1 (Aggiornamento a 0.6.1)
SERVICE_WORKER_FILE="service-worker.js"
APP_ID="14"
DIRECTORY_LOCAL="newfreeplanet"

Binary file not shown.

Before

Width:  |  Height:  |  Size: 49 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 86 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.9 KiB

Some files were not shown because too many files have changed in this diff Show More