- DashBoard, Profile, Order Menu

This commit is contained in:
Paolo Arena
2019-12-31 00:45:06 +01:00
parent b70f0df084
commit 354d1c8b36
38 changed files with 846 additions and 193 deletions

View File

@@ -12,7 +12,7 @@ import { tools } from '@src/store/Modules/tools'
import { func_tools, toolsext } from '@src/store/Modules/toolsext'
import { Screen } from 'quasar'
import MixinMetaTags from '@src/mixins/mixin-metatags'
import { CCardCarousel, CEventsCalendar, CImgText, COpenStreetMap, CTitleBanner } from '@components'
import { CCardCarousel, CImgText, CTitleBanner } from '@components'
import MixinBase from '@src/mixins/mixin-base'
Vue.use(VueScrollReveal, {
@@ -30,7 +30,7 @@ Vue.use(VueScrollReveal, {
@Component({
mixins: [MixinBase],
components: { Logo, Footer, CMyPage, CCardCarousel, CEventsCalendar, COpenStreetMap, CTitleBanner, CImgText }
components: { Logo, Footer, CMyPage, CCardCarousel, CTitleBanner, CImgText }
})
export default class Home extends MixinBase {
public text: string = ''
@@ -59,7 +59,7 @@ export default class Home extends MixinBase {
label: '1',
value: 0,
title: {
it: '<strong>Giorno 1 - Contributore Finanziario</strong><br><br>' +
it: '<strong>Passo 1 - Contributore Finanziario</strong><br><br>' +
'Entro nella chat, dono <strong>33€</strong> e ho già <strong>trovato 2 persone</strong> che vogliono partecipare al gioco.',
es: '',
enUs: ''
@@ -70,8 +70,8 @@ export default class Home extends MixinBase {
label: '2',
value: 1,
title: {
it: '<strong>Giorno 2 - Contributore solidale</strong><br><br>' +
'Inserisco nella chat le mie 2 persone che verseranno i 33€.',
it: '<strong>Passo 2 - Contributore solidale</strong><br><br>' +
'Invio il link per registrarsi alle mie 2 persone, che cosí verseranno i 33€.',
es: '',
enUs: ''
},
@@ -82,7 +82,7 @@ export default class Home extends MixinBase {
label: '3',
value: 2,
title: {
it: '<strong>Giorno 3 - Tesoriere/segretario</strong><br><br>' +
it: '<strong>Passo 3 - Tesoriere/segretario</strong><br><br>' +
'Collaborare, aggiornare doni, fornire informazioni, ma anche conoscersi, condividere esperienze, passioni e sogni.',
es: '',
enUs: ''
@@ -95,8 +95,8 @@ export default class Home extends MixinBase {
label: '4',
value: 3,
title: {
it: '<strong>Giorno 4 - Apertura tua Billettera</strong><br>' +
'Creo il mio gruppo Whatsapp nel quale entrano i miei 2 ospiti, i 2 ospiti dei miei 2 ospiti, che porteranno altre 8 persone (4x2).<br>' +
it: '<strong>Passo 4 - Apertura tua Billettera</strong><br>' +
'Creo il mio gruppo Telegram nel quale entrano i miei 2 ospiti, i 2 ospiti dei miei 2 ospiti, che porteranno altre 8 persone (4x2).<br>' +
'<br>Ricevuti i 33€ da queste 8 persone (264€), mi tengo i mei <strong>iniziali 33€</strong> e <strong>dono 231 €</strong> alla Billettera "Mas Antigua".',
es: '',
enUs: ''
@@ -105,10 +105,10 @@ export default class Home extends MixinBase {
myicon2: 'fas fa-wallet'
},
{
label: '5-6-7-8',
label: '5',
value: 4,
title: {
it: '<strong>Giorno 5-6-7-8</strong><br>' +
it: '<strong>Passo 5</strong><br>' +
'Aspetto, da parte delle 8 nuove Billettere, le donazioni di 231€, per un totale di <strong>1848€</strong>.<br>' +
'<br>Ringrazio l\'<strong>Universo</strong> per il <strong>dono</strong> ricevuto e fornisco <strong>aiuto</strong> a chi ne ha bisogno.<br>' +
'Se desidero, posso <strong>ricominciare</strong> il gioco!',
@@ -146,18 +146,11 @@ export default class Home extends MixinBase {
public audiofiles = {
it: [
{
title: 'Elisa (1)',
title: 'Elisa (Audio 1)',
label: '1',
value: 0,
src: 'statics/audio/it/spiegazione_Billettera.mp3',
type: 'audio/mp3'
},
{
title: 'Altro',
label: '2',
value: 1,
src: 'statics/audio/it/spiegazione_Billettera_2.mp3',
type: 'audio/mp3'
}
]
}
@@ -200,7 +193,7 @@ export default class Home extends MixinBase {
public advise = [
{
title: {
it: 'La forza di questo gioco sono le Persone e la Collaborazione. Non siate timidi e scrivete agli amici su whatsapp, facebook, Telegram',
it: 'La forza di questo gioco sono le Persone e la Collaborazione.<br>Vincete la timidezza e scrivete agli amici su whatsapp, facebook, Telegram.',
es: '',
enUs: ''
},
@@ -209,9 +202,7 @@ export default class Home extends MixinBase {
},
{
title: {
it: 'È un lavoro di squadra ma in cui ognuno deve assolutamente fare la sua parte<br>' +
'La parte di ognuno in questo gioco è fare il dono e portare due persone<br>' +
'Se manca una di queste due parti il gioco si ferma',
it: 'È un lavoro di squadra, dove ognuno fa la sua parte.',
es: '',
enUs: ''
},
@@ -221,44 +212,16 @@ export default class Home extends MixinBase {
},
{
title: {
it: 'Per me personalmente la sto vivendo anche come una bellissima opportunità di risentire ' +
'vecchi amici che non sento da tempo, ed avere un intento comune, anche solo un giochino, ci ' +
'da di nuovo la possibilità di sentirci e di riconnetterci.<br>',
it: 'E\' un\'opportunità di risentire vecchi amici, ed avere un intento comune, per risentirci e di riconnetterci.<br>',
es: '',
enUs: ''
},
color: 'white',
icon: 'fas fa-hand-holding-heart',
textcolor: 'black'
},
{
title: {
it: 'Dietro ogni amico che anche non sentire da un bel pò, c\'è la possibilità di ' +
'riscoprire la gioia ed il motivo che vi ha fatti essere amici, anche molto tempo fa',
es: '',
enUs: ''
},
color: 'white',
icon: 'far fa-smile-beam',
textcolor: 'black'
},
{
title: {
it: 'Ieri sera sono entrati nella mia Billettera 1 persona, che ne ha portate subito altre 2, che ' +
'non sentivo da secoli, portando una gran gioia ed energia ed entusiasmo.<br> ' +
'E\' stato molto bello risentirli 😊 <br>' +
'Se non gli avessi scritto, non sarebbe mai successo.<br>',
es: '',
enUs: ''
},
color: 'white',
icon: 'far fa-sun',
textcolor: 'black'
},
}
]
constructor() {
super()
// console.log('Home constructor...')
@@ -308,7 +271,7 @@ export default class Home extends MixinBase {
this.arrvideo_mp4.push(this.getvideomp4src(index))
}
console.log(this.arrvideo_mp4)
// console.log(this.arrvideo_mp4)
GlobalStore.actions.prova()

View File

@@ -256,11 +256,12 @@
<div class="q-mx-md cltexth4">
1) Voglia di giocare, e desiderio di Donare 33 per aiutare un'altra persona a realizzare i propri
sogni.<br><br>
<div class="text-center row block">
<!--<div class="text-center row block">
<q-img src="/statics/images/it/Esempio_di_Billettera_di_Vera.jpg"
style="height: 400px; max-width: 400px;"></q-img>
</div>
2) L'impegno di seguire delle indicazioni nei tempi stabiliti all' interno di una chat whatsapp, dove ogni
</div>-->
2) L'impegno di seguire delle indicazioni nei tempi stabiliti all' interno di una chat, dove ogni
passaggio è spiegato e guidato.<br><br>
3) Parlare e condividere ai tuoi amici un messaggio dove spieghi questo sistema, impegnandoti così a trovare
2 persone interessate ad entrare.
@@ -289,113 +290,6 @@
</div>
</CTitleBanner>
<CTitleBanner class="q-pa-xs" :title="$t('text.testimonial')" bgcolor="bg-negative" clcolor="text-white"
mystyle="letter-spacing: 0.25rem; " canopen="true">
<q-carousel
v-model="myaudio"
transition-prev="slide-right"
transition-next="slide-left"
swipeable
animated
control-color="white"
padding
ref="myaudio"
height="150px"
class="text-white shadow-1 rounded-borders"
>
<template v-slot:control>
<q-carousel-control
position="top-left"
class="q-gutter-xs"
style="opacity: 0.6;">
<q-btn
push round color="white" text-color="black" icon="arrow_left"
@click="$refs.myaudio.previous()"></q-btn>
</q-carousel-control>
<q-carousel-control
position="top-right"
class="q-gutter-xs"
style="opacity: 0.6;">
<q-btn
push round color="white" text-color="black" icon="arrow_right"
@click="$refs.myaudio.next()"></q-btn>
</q-carousel-control>
</template>
<q-carousel-slide v-for="(recaudio, index) in getaudiofiles()" :key="index" :name="index"
class="column no-wrap flex-center">
<div class="q-pa-sm text-subtitle2 text-blue">{{ recaudio.title }}</div>
<q-media-player
type="audio"
:sources="[...recaudio]"
background-color="deep-purple-3"
:playback-rates="[ { label: 'Normal', value: 1 }, { label: '1.15x', value: 1.15 } ]"
></q-media-player>
</q-carousel-slide>
</q-carousel>
<div class="row justify-center">
<q-btn-toggle
glossy
v-model="myaudio"
:options="getaudiofiles()"
></q-btn-toggle>
</div>
<q-carousel
v-model="mytestimonianze"
transition-prev="slide-right"
transition-next="slide-left"
swipeable
animated
control-color="white"
padding
ref="mytestimonianze"
height="450px"
class="text-white shadow-1 rounded-borders"
>
<template v-slot:control>
<q-carousel-control
position="bottom-left"
class="q-gutter-xs"
style="opacity: 0.4;">
<q-btn
push round color="white" text-color="black" icon="arrow_left"
@click="$refs.mytestimonianze.previous()"></q-btn>
</q-carousel-control>
<q-carousel-control
position="bottom-right"
class="q-gutter-xs"
style="opacity: 0.4;">
<q-btn
push round color="white" text-color="black" icon="arrow_right"
@click="$refs.mytestimonianze.next()"></q-btn>
</q-carousel-control>
</template>
<q-carousel-slide v-for="(rec, index) in gettestimonianze()" :key="index" :name="index"
class="row flex-center">
<div class="q-pa-sm text-subtitle2 text-blue">{{ rec.title }}</div>
<div v-html="rec.text" class="text-black"></div>
</q-carousel-slide>
</q-carousel>
<div class="row justify-center">
<q-btn-toggle
glossy
v-model="mytestimonianze"
:options="gettestimonianze()"
></q-btn-toggle>
</div>
</CTitleBanner>
<CTitleBanner class="q-pa-xs" :title="$t('text.download')" bgcolor="bg-warning" clcolor="text-white"
mystyle="letter-spacing: 0.125rem;" canopen="true">
<div v-for="(rec, index) in todownload[toolsext.getLocale()]" :key="index" :name="index">
<div class="q-pa-xs text-center text-subtitle1"><a :href="rec.file" target="_blank">{{rec.title}}</a></div>
</div>
</CTitleBanner>
<!--<CTitleBanner class="q-pa-xs" :title="$t('text.faq')" bgcolor="bg-info" clcolor="text-white"
mystyle="letter-spacing: 0.125rem;">

View File

@@ -1,5 +1,5 @@
import Vue from 'vue'
import { Component, Prop } from 'vue-property-decorator'
import { Component, Prop, Watch } from 'vue-property-decorator'
import { GlobalStore, UserStore } from '@store'
import { tools } from '../../store/Modules/tools'
@@ -25,11 +25,16 @@ export default class Mypage extends MixinMetaTags {
public rec: IMyPage = {}
public mounted() {
console.log('this.$route.path', this.$route.path)
// console.log('this.$route.path', this.$route.path)
this.rec = GlobalStore.getters.getPage(this.$route.path)
console.log(this.rec)
}
@Watch('$route.path')
public changepage() {
this.rec = GlobalStore.getters.getPage(this.$route.path)
}
public meta() {
return tools.metafunc(this)
}

View File

@@ -0,0 +1,470 @@
.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(../../statics/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;
}
.subtitle_small {
font-weight: 600;
text-align: center;
letter-spacing: 0.125rem;
text-transform: uppercase;
font-size: 1rem;
margin: 0px;
}
.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(../../statics/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(../../statics/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(../../statics/images/foto1.jpg) no-repeat 50% fixed;
//transition: background-image 1s ease-in-out;
}
.homep-cover-img-2 {
background: #000 url(../../statics/images/foto2.jpg) no-repeat 50% fixed;
//transition: background-image 1s ease-in-out;
}
.homep-cover-img-3 {
background: #000 url(../../statics/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(../../statics/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(../../statics/images/cibo_sano.jpg);
background-size: 500px 500px !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;
}
.q-carousel__slide{
padding: 8px !important;
}
.step-text{
font-size: 1.15rem;
font-weight: 500;
}

View File

@@ -0,0 +1,116 @@
import Vue from 'vue'
import { Component } from 'vue-property-decorator'
import { GlobalStore, UserStore } from '@store'
import { Logo } from '../../components/logo'
import { Footer } from '../../components/Footer'
import { CMyPage } from '../../components/CMyPage/index'
import VueScrollReveal from 'vue-scroll-reveal'
import { tools } from '@src/store/Modules/tools'
import { func_tools, toolsext } from '@src/store/Modules/toolsext'
import { Screen } from 'quasar'
import MixinMetaTags from '@src/mixins/mixin-metatags'
import { CCardCarousel, CEventsCalendar, CImgText, COpenStreetMap, CTitleBanner } from '@components'
import MixinBase from '@src/mixins/mixin-base'
Vue.use(VueScrollReveal, {
class: 'v-scroll-reveal', // A CSS class applied to elements with the v-scroll-reveal directive; useful for animation overrides.
duration: 1200,
scale: 0.95,
distance: '10px',
rotate: {
x: 0,
y: 0,
z: 0
}
// mobile: true
})
@Component({
mixins: [MixinBase],
components: { CMyPage, CCardCarousel, CTitleBanner, CImgText }
})
export default class Testimonianze extends MixinBase {
public $t: any
public $q
public myaudio = 0
public mytestimonianze = 0
public audiofiles = {
it: [
{
title: 'Elisa (Audio 1)',
label: '1',
value: 0,
src: 'statics/audio/it/spiegazione_Billettera.mp3',
type: 'audio/mp3'
}
]
}
public testimonianze = {
it: [
{
title: '1. Giovanni',
label: '1',
value: 0,
text: '<p>Amici di questa meravigliosa Billettera, mi permetto di dare un mio punto di vista a ' +
'questo meraviglioso gruppo di amici che si stanno sostenendo a partecipare <strong>donando e ricevendo</strong> questo dono economico. ' +
'In questo progetto bisogna entrarci con il <strong>cuore</strong>, in questo gioco di economia circolare, e non con la mente.</p>' +
'<p>L\'ego mentale che ha costruito il giro di denaro sul potere, sul ricevere soldi dal lavoro, sull\'arrivismo, sullo scambiare ore della propria vita con denaro,' +
' e solitamente dalla competizione e dalla fatica, non può concepire che <strong>si può donare dei soldi ad amici conosciuti e sconosciuti e ricevere altrettanti doni indietro</strong>, ' +
'anche in denaro, da altri amici, che ti permetteranno di gioire di questa ricchezza economica che arriva solo da fatto che si possono utilizzare ' +
'i soldi anche con gesti di puro Amore.</p> ' +
'<p>Quando lo proponete ad amici è naturale che vi sentirete chiedere : <em>"Una piramide, dov\'è la fregatura?"</em><br>' +
'Personalmente io parlo della mia esperienza, che sono felice di fare un dono di 33€ e di riceverne altrettanti e non vedo dove sta il problema.<br> ' +
'Forse il sentirsi dire dei no, ci rimanda subito al mentale che si sente rifiutato ed entra subito nel giudizio negativo per se e verso gli altri,' +
'questo è un gioco che ci aiuterà a vedere tante facce dell\'ego che boicotterà, che ci depisterà, che ci illuderà, ma dietro a tutto questo ' +
'ci sta l\'Amore e la Consapevolezza che ci aiuteranno ad andare oltre e a procedere verso questa nuova esperienza di scambi di doni tra belle ' +
'anime che stanno già condividendo e sostenendosi a vicenda per portare una nuova visione sull\'<strong>economia circolare dei soldi</strong>.</p>' +
'<p>Insomma questa è una chance, per riprendere anche gli <strong>schemi già visti</strong> di scambi a diversi livelli, ma con tutta la nuova tecnologia che ' +
'abbiamo a disposizione, che ci aiuta a <strong>rimanere connessi continuamente</strong>, e con la nuova consapevolezza che finalmente l\'essere umano sta ' +
'raggiungendo, e di usarli, i network, per <strong>ridistribuire</strong>, anche se solo in piccola parte, <strong>un po\' di regali, gioia, amore, amicizia e denaro ' +
'sul pianeta</strong>.</p>' +
'<p>Questa billetera è una vera chance di <strong>cooperazione ad una ottava superiore</strong>, che porta con sé, anche molti <strong>regali</strong> di consapevolezza, ' +
'crescita correttezza, precisione, onestà, cooperazione, amore.</p>',
},
{
title: '2. Luca',
label: '2',
value: 1,
text: ''
}
]
}
public meta() {
return tools.metafunc(this)
}
get tools() {
return tools
}
public mounted() {
}
public beforeDestroy() {
}
public gettitle_advise(rec) {
return rec.title[tools.getLocale()]
}
public getaudiofiles() {
return this.audiofiles[tools.getLocale()]
}
public gettestimonianze() {
return this.testimonianze[tools.getLocale()]
}
}

View File

@@ -0,0 +1,126 @@
<template>
<q-page>
<CMyPage title="">
<div class="q-ma-md">
<span>{{ setmeta({
title: 'Home',
description: $t('msg.myAppDescription'),
keywords: $t('msg.keywords_base') } ) }}
</span>
<CTitleBanner class="q-pa-xs" :title="$t('text.testimonial')" bgcolor="bg-primary" clcolor="text-white"
mystyle="letter-spacing: 0.25rem; " canopen="true">
<q-carousel
v-model="mytestimonianze"
transition-prev="slide-right"
transition-next="slide-left"
swipeable
animated
control-color="white"
padding
ref="mytestimonianze"
height="100%"
class="text-white shadow-1 rounded-borders"
>
<template v-slot:control>
<q-carousel-control
position="bottom-left"
class="q-gutter-xs"
style="opacity: 0.4;">
<q-btn
push round color="white" text-color="black" icon="arrow_left"
@click="$refs.mytestimonianze.previous()"></q-btn>
</q-carousel-control>
<q-carousel-control
position="bottom-right"
class="q-gutter-xs"
style="opacity: 0.4;">
<q-btn
push round color="white" text-color="black" icon="arrow_right"
@click="$refs.mytestimonianze.next()"></q-btn>
</q-carousel-control>
</template>
<q-carousel-slide v-for="(rec, index) in gettestimonianze()" :key="index" :name="index"
class="row flex-center">
<div class="q-pa-sm text-subtitle2 text-blue">{{ rec.title }}</div>
<div v-html="rec.text" class="text-black"></div>
</q-carousel-slide>
</q-carousel>
<div class="row justify-center">
<q-btn-toggle
glossy
v-model="mytestimonianze"
:options="gettestimonianze()"
></q-btn-toggle>
</div>
</CTitleBanner>
<CTitleBanner class="q-pa-xs" :title="`AUDIO`" bgcolor="bg-primary" clcolor="text-white"
mystyle="letter-spacing: 0.25rem; " canopen="true">
<q-carousel
v-model="myaudio"
transition-prev="slide-right"
transition-next="slide-left"
swipeable
animated
control-color="white"
padding
ref="myaudio"
height="150px"
class="text-white shadow-1 rounded-borders"
>
<template v-slot:control>
<q-carousel-control
position="top-left"
class="q-gutter-xs"
style="opacity: 0.6;">
<q-btn
push round color="white" text-color="black" icon="arrow_left"
@click="$refs.myaudio.previous()"></q-btn>
</q-carousel-control>
<q-carousel-control
position="top-right"
class="q-gutter-xs"
style="opacity: 0.6;">
<q-btn
push round color="white" text-color="black" icon="arrow_right"
@click="$refs.myaudio.next()"></q-btn>
</q-carousel-control>
</template>
<q-carousel-slide v-for="(recaudio, index) in getaudiofiles()" :key="index" :name="index"
class="column no-wrap flex-center">
<div class="q-pa-sm text-subtitle2 text-blue">{{ recaudio.title }}</div>
<q-media-player
type="audio"
:sources="[...recaudio]"
background-color="deep-purple-3"
:playback-rates="[ { label: 'Normal', value: 1 }, { label: '1.15x', value: 1.15 } ]"
></q-media-player>
</q-carousel-slide>
</q-carousel>
<div class="row justify-center">
<q-btn-toggle
glossy
v-model="myaudio"
:options="getaudiofiles()"
></q-btn-toggle>
</div>
</CTitleBanner>
</div>
</CMyPage>
</q-page>
</template>
<script lang="ts" src="./testimonianze.ts">
</script>
<style lang="scss" scoped>
@import './testimonianze.scss';
</style>