Lista Doni Navi
This commit is contained in:
@@ -35,6 +35,10 @@
|
||||
border-radius: 16px;
|
||||
}
|
||||
|
||||
.cont_donatore {
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
.you {
|
||||
background-color: yellow;
|
||||
}
|
||||
@@ -56,7 +60,7 @@
|
||||
}
|
||||
|
||||
.extra{
|
||||
opacity: 0.6;
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
.passo{
|
||||
@@ -106,3 +110,7 @@
|
||||
.ricevuti{
|
||||
color: green;
|
||||
}
|
||||
|
||||
.title-nave {
|
||||
color: blue;
|
||||
}
|
||||
|
||||
@@ -150,7 +150,7 @@ export default class CMyNave extends MixinNave {
|
||||
for (const rec of this.nave.listadonatoridelsognatore) {
|
||||
|
||||
index++
|
||||
arr.push({ index, ...rec})
|
||||
arr.push({ index, ...rec })
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -348,6 +348,20 @@ export default class CMyNave extends MixinNave {
|
||||
return !!this.iodonatore
|
||||
}
|
||||
|
||||
public sonoSecondaTessituraDonatore() {
|
||||
const mediatore = this.getmediatore()
|
||||
for (const rec of this.nave.rec.donatore.arrdonatori) {
|
||||
if (!!rec) {
|
||||
if (mediatore) {
|
||||
if ((mediatore.ind_order === rec.ind_order) && (rec.num_tess === 2))
|
||||
return true
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return false
|
||||
}
|
||||
|
||||
public sonoSognatore() {
|
||||
return !!this.iosognatore
|
||||
}
|
||||
@@ -426,6 +440,10 @@ export default class CMyNave extends MixinNave {
|
||||
}
|
||||
|
||||
public geticon(rec) {
|
||||
if (!rec)
|
||||
return ''
|
||||
|
||||
// console.log('this.rigadoni', this.rigadoni, 'ind', rec.ind)
|
||||
if (!rec.ind)
|
||||
return ''
|
||||
if (this.rigadoni >= this.getrigaNaveByInd(rec.ind)) {
|
||||
@@ -444,7 +462,8 @@ export default class CMyNave extends MixinNave {
|
||||
|
||||
tools.askConfirm(this.$q, msgtitle, msginvia + ' ' + '?', translate('dialog.yes'), translate('dialog.no'), this, '', lists.MenuAction.INVIA_MSG_A_DONATORI, 0, {
|
||||
param1: msgobj,
|
||||
param2: navemediatore
|
||||
param2: navemediatore,
|
||||
param3: tools.TipoMsg.SEND_LINK_CHAT_DONATORI
|
||||
})
|
||||
|
||||
}
|
||||
@@ -502,6 +521,13 @@ export default class CMyNave extends MixinNave {
|
||||
return ''
|
||||
}
|
||||
|
||||
public getindex(recdonatore, index) {
|
||||
if (recdonatore.ind_order === this.nave.rec.donatore.recmediatore.ind_order && (recdonatore.num_tess === 2))
|
||||
return 'TESS'
|
||||
|
||||
return 'D' + (index)
|
||||
}
|
||||
|
||||
public getposizione() {
|
||||
return this.$t('dashboard.posizione') + ' ' + this.getisProvvisoriaStr() + this.nave.riga + '.' + this.nave.col
|
||||
}
|
||||
|
||||
@@ -111,13 +111,13 @@
|
||||
</div>
|
||||
<div class="donatore">DONATORI:</div>
|
||||
<div v-for="(donatore, index) in nave.rec.mediatore.arrdonatori" :key="index">
|
||||
<div v-if="donatore" :class="`cont_donatore ` + getclassSelect(donatore)">
|
||||
D{{index + 1}} - {{ donatore.name }} {{ donatore.surname }} ({{
|
||||
donatore.username }}) - {{
|
||||
donatore.riga}}.{{donatore.col}}<br>
|
||||
<div v-if="donatore" :class="`cont_donatore row ` + getclassSelect(donatore)">
|
||||
{{ getindex(donatore, index + 1) }} - {{ donatore.name }} {{ donatore.surname }}
|
||||
({{
|
||||
donatore.username }}) - {{ donatore.riga}}.{{donatore.col}}
|
||||
<q-icon v-if="donatore.made_gift" color="green" inverted size="sm"
|
||||
name="fas fa-gift" class="gift"></q-icon>
|
||||
</div>
|
||||
<q-icon v-if="donatore.made_gift" color="green" inverted size="sm"
|
||||
:name="geticon(rec)" class="gift"></q-icon>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -205,10 +205,18 @@
|
||||
</div>
|
||||
<div class="donatore">DONATORI:</div>
|
||||
<div v-for="(donatore, index) in nave.rec.donatore.arrdonatori" :key="index">
|
||||
<div v-if="donatore" :class="`cont_donatore ` + getclassSelect(donatore)">
|
||||
D{{index + 1}} - {{ donatore.name }} {{ donatore.surname }} ({{
|
||||
donatore.username }}) - {{
|
||||
donatore.riga}}.{{donatore.col}}<br>
|
||||
<div v-if="donatore" :class="`cont_donatore row ` + getclassSelect(donatore)">
|
||||
<div>
|
||||
{{ getindex(donatore, index + 1) }} - {{ donatore.name }} {{
|
||||
donatore.surname }} ({{
|
||||
donatore.username }}) - {{
|
||||
donatore.riga}}.{{donatore.col}}<br>
|
||||
|
||||
</div>
|
||||
<div>
|
||||
<q-icon v-if="donatore.made_gift" color="green" inverted size="sm"
|
||||
name="fas fa-gift" class="gift"></q-icon>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -228,82 +236,88 @@
|
||||
</div>
|
||||
|
||||
<div v-if="sonoDonatore()">
|
||||
<div v-html="$t('dashboard.sonosognatore')">
|
||||
<div v-if="sonoSecondaTessituraDonatore()"
|
||||
v-html="$t('dashboard.sonodonatore_seconda_tessitura')">
|
||||
</div>
|
||||
|
||||
<div v-if="!FattoDono" class="text-evidente bordo_stondato">
|
||||
|
||||
<div>Quando effettuare il Regalo: <strong>{{ getGiornoDelDono() }}</strong><br></div>
|
||||
<div>
|
||||
Metodi Disponibili:
|
||||
|
||||
<CMyChipList
|
||||
:type="tools.FieldType.multiselect"
|
||||
:value="getMetodoPagamentoSognatore()"
|
||||
:options="db_fieldsTable.getTableJoinByName('paymenttypes')"
|
||||
:optval="db_fieldsTable.getKeyByTable('paymenttypes')"
|
||||
:optlab="db_fieldsTable.getLabelByTable('paymenttypes')"
|
||||
:opticon="db_fieldsTable.getIconByTable('paymenttypes')"></CMyChipList>
|
||||
|
||||
<div v-else>
|
||||
<div v-if="!FattoDono" v-html="$t('dashboard.sonodonatore')">
|
||||
</div>
|
||||
<div>
|
||||
Importo: <strong>33€</strong>
|
||||
</div>
|
||||
<br>
|
||||
</div>
|
||||
<div class="text-evidente bordo_stondato_blu">
|
||||
<div v-if="GiornoDelDonoArrivato">
|
||||
|
||||
<div v-if="!FattoDono">
|
||||
<div v-if="!FattoDono" class="text-evidente bordo_stondato">
|
||||
|
||||
E' arrivato il momento di Effettuare il proprio Dono!<br>
|
||||
Inviare tramite PayPal a: <strong>{{ getemailPagamentoSognatore()
|
||||
}}</strong><br>
|
||||
(Scegliere l'opzione "Invia ad Amici")<br>
|
||||
|
||||
<CTitleBanner class="q-pa-xs"
|
||||
:title="$t('dashboard.come_inviare_regalo_con_paypal')"
|
||||
bgcolor="bg-primary"
|
||||
clcolor="text-white"
|
||||
myclass="myshad" canopen="true" :visible="false">
|
||||
|
||||
<CVideo myvideokey="5rp_XEV6Mzg">
|
||||
|
||||
</CVideo>
|
||||
</CTitleBanner>
|
||||
|
||||
<div v-if="!donoinviato">
|
||||
{{$t('dashboard.clicca_conferma_dono')}}:<br>
|
||||
|
||||
<div class="row justify-center q-ma-sm">
|
||||
<q-btn push
|
||||
rounded
|
||||
color="positive"
|
||||
size="md"
|
||||
:label="$t('dashboard.ho_effettuato_il_dono')"
|
||||
icon="fas fa-gift"
|
||||
@click="HoEffettuatoIlDono">
|
||||
</q-btn>
|
||||
</div>
|
||||
</div>
|
||||
<div v-else>
|
||||
<div class="row justify-center q-ma-sm">
|
||||
<q-chip class="glossy"
|
||||
text-color="white"
|
||||
color="positive"
|
||||
icon="fas fa-gift">
|
||||
{{ $t('dashboard.ho_effettuato_il_dono') }}
|
||||
</q-chip>
|
||||
</div>
|
||||
</div>
|
||||
<div>Quando effettuare il Regalo: <strong>{{ getGiornoDelDono() }}</strong><br>
|
||||
</div>
|
||||
<div v-if="FattoDono">
|
||||
<q-chip class="glossy"
|
||||
color="positive"
|
||||
text-color="white"
|
||||
icon="fas fa-gift">
|
||||
{{ $t('dashboard.dono_ricevuto') }}
|
||||
</q-chip>
|
||||
<div>
|
||||
Metodi Disponibili:
|
||||
|
||||
<CMyChipList
|
||||
:type="tools.FieldType.multiselect"
|
||||
:value="getMetodoPagamentoSognatore()"
|
||||
:options="db_fieldsTable.getTableJoinByName('paymenttypes')"
|
||||
:optval="db_fieldsTable.getKeyByTable('paymenttypes')"
|
||||
:optlab="db_fieldsTable.getLabelByTable('paymenttypes')"
|
||||
:opticon="db_fieldsTable.getIconByTable('paymenttypes')"></CMyChipList>
|
||||
|
||||
</div>
|
||||
<div>
|
||||
Importo: <strong>33€</strong>
|
||||
</div>
|
||||
<br>
|
||||
</div>
|
||||
<div class="text-evidente bordo_stondato_blu">
|
||||
<div v-if="GiornoDelDonoArrivato">
|
||||
|
||||
<div v-if="!FattoDono">
|
||||
|
||||
E' arrivato il momento di Effettuare il proprio Dono!<br>
|
||||
Inviare tramite PayPal a: <strong>{{ getemailPagamentoSognatore()
|
||||
}}</strong><br>
|
||||
(Scegliere l'opzione "Invia ad Amici")<br>
|
||||
|
||||
<CTitleBanner class="q-pa-xs"
|
||||
:title="$t('dashboard.come_inviare_regalo_con_paypal')"
|
||||
bgcolor="bg-primary"
|
||||
clcolor="text-white"
|
||||
myclass="myshad" canopen="true" :visible="false">
|
||||
|
||||
<CVideo myvideokey="5rp_XEV6Mzg">
|
||||
|
||||
</CVideo>
|
||||
</CTitleBanner>
|
||||
|
||||
<div v-if="!donoinviato">
|
||||
{{$t('dashboard.clicca_conferma_dono')}}:<br>
|
||||
|
||||
<div class="row justify-center q-ma-sm">
|
||||
<q-btn push
|
||||
rounded
|
||||
color="positive"
|
||||
size="md"
|
||||
:label="$t('dashboard.ho_effettuato_il_dono')"
|
||||
icon="fas fa-gift"
|
||||
@click="HoEffettuatoIlDono">
|
||||
</q-btn>
|
||||
</div>
|
||||
</div>
|
||||
<div v-else>
|
||||
<div class="row justify-center q-ma-sm">
|
||||
<q-chip class="glossy"
|
||||
text-color="white"
|
||||
color="positive"
|
||||
icon="fas fa-gift">
|
||||
{{ $t('dashboard.ho_effettuato_il_dono') }}
|
||||
</q-chip>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div v-if="FattoDono">
|
||||
<q-chip class="glossy"
|
||||
color="positive"
|
||||
text-color="white"
|
||||
icon="fas fa-gift">
|
||||
{{ $t('dashboard.dono_ricevuto') }}
|
||||
</q-chip>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -1,392 +1,404 @@
|
||||
<template>
|
||||
<div>
|
||||
<CTitleBanner class="text-center" :title="$t('home.guida_passopasso')" bgcolor="bg-primary" clcolor="text-white"
|
||||
mystyle="" myclass="myshad" :canopen="true">
|
||||
<div>
|
||||
<CTitleBanner class="text-center" :title="$t('home.guida_passopasso')" bgcolor="bg-primary" clcolor="text-white"
|
||||
mystyle="" myclass="myshad" :canopen="true">
|
||||
|
||||
|
||||
<q-stepper
|
||||
v-model="step"
|
||||
vertical
|
||||
header-nav
|
||||
done-color="green"
|
||||
active-color="blue"
|
||||
inactive-color="grey"
|
||||
animated
|
||||
>
|
||||
<!--
|
||||
<q-step
|
||||
id="step1"
|
||||
:name="1"
|
||||
:title="emailtext"
|
||||
icon="mail"
|
||||
:done="isEmailVerified"
|
||||
:error="!isEmailVerified"
|
||||
:error-icon="geterricon(true)"
|
||||
>
|
||||
<q-stepper-navigation v-if="isEmailVerified">
|
||||
<q-btn @click="step = 2" color="primary" :label="$t('dialog.avanti')"></q-btn>
|
||||
</q-stepper-navigation>
|
||||
|
||||
</q-step>
|
||||
<q-step
|
||||
id="step2"
|
||||
:name="2"
|
||||
:title="telegramtext"
|
||||
icon="fab fa-telegram"
|
||||
:done="TelegVerificato"
|
||||
:error="!TelegVerificato"
|
||||
:error-icon="geterricon(true)"
|
||||
>
|
||||
|
||||
<q-stepper-navigation>
|
||||
<q-btn v-if="TelegVerificato" @click="step = 3" color="primary" :label="$t('dialog.avanti')"></q-btn>
|
||||
<q-btn flat @click="step = 1" color="primary" :label="$t('dialog.indietro')" class="q-ml-sm"></q-btn>
|
||||
</q-stepper-navigation>
|
||||
</q-step>
|
||||
-->
|
||||
<q-step
|
||||
v-for="(mystep, index) in arrsteps"
|
||||
:id="`step`+(index)"
|
||||
:key="mystep.title"
|
||||
:name="index"
|
||||
:title="gettextstep(mystep, index)"
|
||||
:icon="geticonstep(mystep)"
|
||||
:done-color="geticoncolor(mystep.title)"
|
||||
:done="mystep.funccheck(index)"
|
||||
:error="getiferror(mystep.funccheck_error(index), mystep.funccheck(index))"
|
||||
:error-icon="geterricon(mystep.funccheck(index), mystep)"
|
||||
:error-color="geterrcolor(mystep)"
|
||||
>
|
||||
<div v-if="mystep.title === 'reg.email'">
|
||||
<CVerifyEmail>
|
||||
|
||||
</CVerifyEmail>
|
||||
|
||||
</div>
|
||||
<div v-else-if="mystep.title === 'reg.telegram'">
|
||||
<q-chip v-if="TelegVerificato" color="positive" text-color="white" icon="fab fa-telegram">
|
||||
{{ telegramtext }}
|
||||
</q-chip>
|
||||
<q-chip v-else color="negative" text-color="white" icon="email">
|
||||
{{ telegramtext }}
|
||||
</q-chip>
|
||||
|
||||
<CVerifyTelegram v-if="TelegCode || !TelegVerificato">
|
||||
|
||||
</CVerifyTelegram>
|
||||
<div v-else>
|
||||
<br>
|
||||
<q-btn color="primary" icon="fab fa-telegram" :label="$t('components.authentication.telegram.openbot')"
|
||||
type="a"
|
||||
:href="getLinkBotTelegram" target="_blank"></q-btn>
|
||||
<br>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div v-else-if="mystep.title === 'steps.linee_guida'">
|
||||
<CGuidelines :showconditions="true">
|
||||
|
||||
</CGuidelines>
|
||||
</div>
|
||||
<div v-else-if="mystep.title === 'steps.video_intro'">
|
||||
<CVideoPromo :showconditions="true">
|
||||
|
||||
</CVideoPromo>
|
||||
|
||||
</div>
|
||||
<div v-else-if="mystep.title === 'steps.paymenttype'">
|
||||
<div v-if="mystep.descr">
|
||||
<div v-html="$t(mystep.descr)"></div>
|
||||
</div>
|
||||
|
||||
<CTitleBanner class="q-pa-xs" :title="$t('steps.paymenttype_paypal')" bgcolor="bg-primary"
|
||||
clcolor="text-white"
|
||||
myclass="myshad" canopen="true" :visible="false">
|
||||
|
||||
<CVideo myvideokey="RqsWDlpnN3k">
|
||||
|
||||
</CVideo>
|
||||
|
||||
<q-btn class="q-ma-md" size="md" type="a" href="https://www.paypal.com/"
|
||||
target="_blank" rounded color="primary" icon="info" :label="$t('steps.paymenttype_paypal_link')">
|
||||
</q-btn>
|
||||
<CTitleBanner class="q-pa-xs" :title="$t('steps.paymenttype_paypal_carta_conto')" bgcolor="bg-primary"
|
||||
clcolor="text-white"
|
||||
myclass="myshad" canopen="true" :visible="true">
|
||||
|
||||
<CVideo myvideokey="wRNBmQrsnes">
|
||||
|
||||
</CVideo>
|
||||
|
||||
</CTitleBanner>
|
||||
</CTitleBanner>
|
||||
|
||||
|
||||
<CTitleBanner class="q-pa-xs" :title="$t('steps.paymenttype_revolut')" bgcolor="bg-primary"
|
||||
clcolor="text-white"
|
||||
myclass="myshad" canopen="true" :visible="false">
|
||||
|
||||
<CVideo myvideokey="nST5iHM2LbE">
|
||||
|
||||
</CVideo>
|
||||
|
||||
<q-btn class="q-ma-md" size="md" type="a" href="https://www.revolut.com/"
|
||||
target="_blank" rounded color="primary" icon="info"
|
||||
:label="$t('steps.paymenttype_revolut_link')">
|
||||
</q-btn>
|
||||
|
||||
</CTitleBanner>
|
||||
|
||||
<div>
|
||||
|
||||
<CRequisiti :statebool="RequisitoPayment" :msgTrue="$t('steps.paymenttype_long2')"
|
||||
:msgFalse="$t('steps.paymenttype_long2')">
|
||||
</CRequisiti>
|
||||
|
||||
<CMyFieldDb :title="$t('reg.paymenttype')"
|
||||
table="users"
|
||||
mykey="profile"
|
||||
mysubkey="paymenttypes"
|
||||
:type="tools.FieldType.multiselect"
|
||||
jointable="paymenttypes">
|
||||
</CMyFieldDb>
|
||||
|
||||
<CMyFieldDb v-if="isselectPaypal" :title="$t('reg.email_paypal')"
|
||||
table="users"
|
||||
mykey="profile"
|
||||
mysubkey="email_paypal"
|
||||
:type="tools.FieldType.string">
|
||||
</CMyFieldDb>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div v-else-if="mystep.title === 'steps.dream'">
|
||||
<div v-if="mystep.descr">
|
||||
<div v-html="$t(mystep.descr)"></div>
|
||||
</div>
|
||||
<q-input v-model="my_dream" :label="$t('steps.dream')+' (min. 10):'"
|
||||
type="textarea" debounce="1000"
|
||||
input-class="myinput-area-big"
|
||||
autogrow
|
||||
@input="change_mydream"
|
||||
|
||||
></q-input>
|
||||
|
||||
<!--
|
||||
<CMyFieldDb :title="$t('reg.my_dream')"
|
||||
table="users"
|
||||
mykey="profile"
|
||||
mysubkey="my_dream"
|
||||
:type="tools.FieldType.string"
|
||||
<q-stepper
|
||||
v-model="step"
|
||||
vertical
|
||||
header-nav
|
||||
done-color="green"
|
||||
active-color="blue"
|
||||
inactive-color="grey"
|
||||
animated
|
||||
>
|
||||
<!--
|
||||
<q-step
|
||||
id="step1"
|
||||
:name="1"
|
||||
:title="emailtext"
|
||||
icon="mail"
|
||||
:done="isEmailVerified"
|
||||
:error="!isEmailVerified"
|
||||
:error-icon="geterricon(true)"
|
||||
>
|
||||
</CMyFieldDb>
|
||||
-->
|
||||
</div>
|
||||
<div v-else-if="mystep.title === 'steps.chat_biblio'">
|
||||
<div v-if="mystep.descr">
|
||||
<div v-html="$t(mystep.descr)"></div>
|
||||
</div>
|
||||
<br><strong>Entra in Chat BiblioBacheca, cliccando qui:</strong>
|
||||
<q-stepper-navigation v-if="isEmailVerified">
|
||||
<q-btn @click="step = 2" color="primary" :label="$t('dialog.avanti')"></q-btn>
|
||||
</q-stepper-navigation>
|
||||
|
||||
<div class="landing__footer-icons row flex-center margin_buttons">
|
||||
<a v-if="!!TelegramBiblio" :href="TelegramBiblio" target="_blank">
|
||||
<i aria-hidden="true" class="q-icon fab fa-telegram icon_contact links"></i></a>
|
||||
</div>
|
||||
</q-step>
|
||||
<q-step
|
||||
id="step2"
|
||||
:name="2"
|
||||
:title="telegramtext"
|
||||
icon="fab fa-telegram"
|
||||
:done="TelegVerificato"
|
||||
:error="!TelegVerificato"
|
||||
:error-icon="geterricon(true)"
|
||||
>
|
||||
|
||||
</div>
|
||||
<div v-else-if="mystep.title === 'steps.zoom'">
|
||||
<q-stepper-navigation>
|
||||
<q-btn v-if="TelegVerificato" @click="step = 3" color="primary" :label="$t('dialog.avanti')"></q-btn>
|
||||
<q-btn flat @click="step = 1" color="primary" :label="$t('dialog.indietro')" class="q-ml-sm"></q-btn>
|
||||
</q-stepper-navigation>
|
||||
</q-step>
|
||||
-->
|
||||
<q-step
|
||||
v-for="(mystep, index) in arrsteps"
|
||||
:id="`step`+(index)"
|
||||
:key="mystep.title"
|
||||
:name="index"
|
||||
:title="gettextstep(mystep, index)"
|
||||
:icon="geticonstep(mystep)"
|
||||
:done-color="geticoncolor(mystep.title)"
|
||||
:done="mystep.funccheck(index)"
|
||||
:error="getiferror(mystep.funccheck_error(index), mystep.funccheck(index))"
|
||||
:error-icon="geterricon(mystep.funccheck(index), mystep)"
|
||||
:error-color="geterrcolor(mystep)"
|
||||
>
|
||||
<div v-if="mystep.title === 'reg.email'">
|
||||
<CVerifyEmail>
|
||||
|
||||
<CRequisiti :statebool="VistoZoom" :msgTrue="$t('steps.zoom_si_partecipato')"
|
||||
:msgFalse="$t('steps.zoom_no_partecipato')">
|
||||
</CRequisiti>
|
||||
</CVerifyEmail>
|
||||
|
||||
<div v-if="mystep.descr">
|
||||
<div v-html="$t(mystep.descr)"></div>
|
||||
</div>
|
||||
<CTitleBanner class="q-pa-xs" :title="$t('steps.zoom_what')" bgcolor="bg-primary"
|
||||
clcolor="text-white"
|
||||
myclass="myshad" canopen="true" :visible="false">
|
||||
<div>
|
||||
<CVideo myvideokey="2yHhNktRDjg">
|
||||
</div>
|
||||
<div v-else-if="mystep.title === 'reg.telegram'">
|
||||
<q-chip v-if="TelegVerificato" color="positive" text-color="white" icon="fab fa-telegram">
|
||||
{{ telegramtext }}
|
||||
</q-chip>
|
||||
<q-chip v-else color="negative" text-color="white" icon="email">
|
||||
{{ telegramtext }}
|
||||
</q-chip>
|
||||
|
||||
</CVideo>
|
||||
<CVerifyTelegram v-if="TelegCode || !TelegVerificato">
|
||||
|
||||
<div v-if="toolsext.isLang('it')">
|
||||
<h3>ISTRUZIONI ZOOM</h3>
|
||||
</CVerifyTelegram>
|
||||
<div v-else>
|
||||
<br>
|
||||
<q-btn color="primary" icon="fab fa-telegram"
|
||||
:label="$t('components.authentication.telegram.openbot')"
|
||||
type="a"
|
||||
:href="getLinkBotTelegram" target="_blank"></q-btn>
|
||||
<br>
|
||||
</div>
|
||||
|
||||
<ul style="text-align: left; font-size:0.75rem;">
|
||||
<li>1. Scarica l'app (<a href="https://play.google.com/store/apps/details?id=us.zoom.videomeetings"
|
||||
target="_blank">store</a> o <a href="https://zoom.us/support/download"
|
||||
target="_blank">da PC</a>)
|
||||
</li>
|
||||
<li>2. Inserisci il tuo Nome e Cognome per essere riconosciuto</li>
|
||||
<li>3. Clicca "join meeting"</li>
|
||||
<li>4. Clicca "call in device" altrimenti non potrai sentire 🔊</li>
|
||||
<li>5. Clicca il microfono per Attivarlo o Silenziarlo.</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div v-else-if="mystep.title === 'steps.linee_guida'">
|
||||
<CGuidelines :showconditions="true">
|
||||
|
||||
<div class="text-h6"><strong>In più avrai:</strong></div>
|
||||
<ul style="text-align: left; font-size:0.75rem;">
|
||||
<li>Tasto per togliere il video (📹) ❌</li>
|
||||
<li>Tasto 'Share': per condividere contenuti condivisi</li>
|
||||
<li>Tasto 'Partecipants' in cui sulla sinistra, in basso, troverai la CHAT.</li>
|
||||
<li>Tasto 'More': troverai Raise Hands per fare le domande.</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div v-else>
|
||||
<h3>ZOOM INSTRUCTIONS</h3>
|
||||
</CGuidelines>
|
||||
</div>
|
||||
<div v-else-if="mystep.title === 'steps.video_intro'">
|
||||
<CVideoPromo :showconditions="true">
|
||||
|
||||
<ul style="text-align: left; font-size:0.75rem;">
|
||||
<li>1. Download the app (<a
|
||||
href="https://play.google.com/store/apps/details?id=us.zoom.videomeetings"
|
||||
target="_blank">store</a> or <a href="https://zoom.us/support/download"
|
||||
target="_blank">by PC</a>)
|
||||
</li>
|
||||
<li>2. Enter your first and last name to be recognized</li>
|
||||
<li>3. Click "join meeting"</li>
|
||||
<li>4. Click "call in device" otherwise you won't be able to hear 🔊</li>
|
||||
<li>5. Click the microphone to turn it on or mute it</li>
|
||||
</ul>
|
||||
</CVideoPromo>
|
||||
|
||||
<div class="text-h6"><strong>More you will have:</strong></div>
|
||||
<ul style="text-align: left; font-size:0.75rem;">
|
||||
<li>Cancel button to remove the video (📹) ❌</li>
|
||||
<li>Share' button: to share shared content</li>
|
||||
<li>Participants' button where on the left, at the bottom, you will find the CHAT.</li>
|
||||
<li>Button 'More': you'll find Raise Hands to ask questions.</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<div v-else-if="mystep.title === 'steps.paymenttype'">
|
||||
<div v-if="mystep.descr">
|
||||
<div v-html="$t(mystep.descr)"></div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</CTitleBanner>
|
||||
<CTitleBanner class="q-pa-xs" :title="$t('steps.paymenttype_paypal')" bgcolor="bg-primary"
|
||||
clcolor="text-white"
|
||||
myclass="myshad" canopen="true" :visible="false">
|
||||
|
||||
</div>
|
||||
<div v-else-if="mystep.title === 'steps.sharemovement'">
|
||||
<CVideo myvideokey="RqsWDlpnN3k">
|
||||
|
||||
<!--<CRequisiti :statebool="getnuminvitati() >= 2" :msgTrue="$t('steps.sharemovement_hai_invitato')"
|
||||
:msgFalse="$t('steps.sharemovement_devi_invitare_almeno_2')">
|
||||
</CRequisiti>-->
|
||||
</CVideo>
|
||||
|
||||
<q-btn class="q-mb-md" rounded size="md" color="primary" to="/dashboard"
|
||||
:label="$t('pages.dashboard')"></q-btn>
|
||||
<q-btn class="q-ma-md" size="md" type="a" href="https://www.paypal.com/"
|
||||
target="_blank" rounded color="primary" icon="info"
|
||||
:label="$t('steps.paymenttype_paypal_link')">
|
||||
</q-btn>
|
||||
<CTitleBanner class="q-pa-xs" :title="$t('steps.paymenttype_paypal_carta_conto')"
|
||||
bgcolor="bg-primary"
|
||||
clcolor="text-white"
|
||||
myclass="myshad" canopen="true" :visible="true">
|
||||
|
||||
<div v-if="mystep.descr">
|
||||
<div v-html="$t(mystep.descr)"></div>
|
||||
</div>
|
||||
<CVideo myvideokey="wRNBmQrsnes">
|
||||
|
||||
<div class="row justify-center q-ma-sm">
|
||||
<q-btn push
|
||||
rounded
|
||||
color="primary"
|
||||
size="md"
|
||||
:label="$t('pages.invita')"
|
||||
icon="fas fa-user-plus"
|
||||
to="/invite">
|
||||
</q-btn>
|
||||
</div>
|
||||
</CVideo>
|
||||
|
||||
</CTitleBanner>
|
||||
</CTitleBanner>
|
||||
|
||||
|
||||
<CCopyBtn :title="$t('reg.reflink')" :texttocopy="getRefLink">
|
||||
<CTitleBanner class="q-pa-xs" :title="$t('steps.paymenttype_revolut')" bgcolor="bg-primary"
|
||||
clcolor="text-white"
|
||||
myclass="myshad" canopen="true" :visible="false">
|
||||
|
||||
</CCopyBtn>
|
||||
<CVideo myvideokey="nST5iHM2LbE">
|
||||
|
||||
<CCopyBtn :title="$t('reg.linkzoom')" :texttocopy="tools.getLinkZoom()">
|
||||
</CVideo>
|
||||
|
||||
</CCopyBtn>
|
||||
<q-btn class="q-ma-md" size="md" type="a" href="https://www.revolut.com/"
|
||||
target="_blank" rounded color="primary" icon="info"
|
||||
:label="$t('steps.paymenttype_revolut_link')">
|
||||
</q-btn>
|
||||
|
||||
</CTitleBanner>
|
||||
|
||||
<div>
|
||||
|
||||
<CRequisiti :statebool="RequisitoPayment" :msgTrue="$t('steps.paymenttype_long2')"
|
||||
:msgFalse="$t('steps.paymenttype_long2')">
|
||||
</CRequisiti>
|
||||
|
||||
<CMyFieldDb :title="$t('reg.paymenttype')"
|
||||
table="users"
|
||||
mykey="profile"
|
||||
mysubkey="paymenttypes"
|
||||
:type="tools.FieldType.multiselect"
|
||||
jointable="paymenttypes">
|
||||
</CMyFieldDb>
|
||||
|
||||
<CMyFieldDb v-if="isselectPaypal" :title="$t('reg.email_paypal')"
|
||||
table="users"
|
||||
mykey="profile"
|
||||
mysubkey="email_paypal"
|
||||
:type="tools.FieldType.string">
|
||||
</CMyFieldDb>
|
||||
|
||||
|
||||
</div>
|
||||
<div v-else-if="mystep.title === 'dashboard.inv_attivi'">
|
||||
</div>
|
||||
</div>
|
||||
<div v-else-if="mystep.title === 'steps.dream'">
|
||||
<div v-if="mystep.descr">
|
||||
<div v-html="$t(mystep.descr)"></div>
|
||||
</div>
|
||||
<q-input v-model="my_dream" :label="$t('steps.dream')+' (min. 10):'"
|
||||
type="textarea" debounce="1000"
|
||||
input-class="myinput-area-big"
|
||||
autogrow
|
||||
@input="change_mydream"
|
||||
|
||||
<CRequisiti v-if="getnuminvitati() > 0" :statebool="getnuminvitati_attivi() >= 2"
|
||||
:msgTrue="$t('steps.sharemovement_invitati_attivi_si')"
|
||||
:msgFalse="$t('steps.sharemovement_invitati_attivi_no')">
|
||||
</CRequisiti>
|
||||
></q-input>
|
||||
|
||||
<q-btn class="q-mb-md" rounded size="md" color="primary" to="/dashboard"
|
||||
:label="$t('pages.dashboard')"></q-btn>
|
||||
<!--
|
||||
<CMyFieldDb :title="$t('reg.my_dream')"
|
||||
table="users"
|
||||
mykey="profile"
|
||||
mysubkey="my_dream"
|
||||
:type="tools.FieldType.string"
|
||||
>
|
||||
</CMyFieldDb>
|
||||
-->
|
||||
</div>
|
||||
<div v-else-if="mystep.title === 'steps.chat_biblio'">
|
||||
<div v-if="mystep.descr">
|
||||
<div v-html="$t(mystep.descr)"></div>
|
||||
</div>
|
||||
<br><strong>Entra in Chat BiblioBacheca, cliccando qui:</strong>
|
||||
|
||||
<div class="landing__footer-icons row flex-center margin_buttons">
|
||||
<a v-if="!!TelegramBiblio" :href="TelegramBiblio" target="_blank">
|
||||
<i aria-hidden="true" class="q-icon fab fa-telegram icon_contact links"></i></a>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div v-else-if="mystep.title === 'steps.zoom'">
|
||||
|
||||
<CRequisiti :statebool="VistoZoom" :msgTrue="$t('steps.zoom_si_partecipato')"
|
||||
:msgFalse="$t('steps.zoom_no_partecipato')">
|
||||
</CRequisiti>
|
||||
|
||||
<div v-if="mystep.descr">
|
||||
<div v-html="$t(mystep.descr)"></div>
|
||||
</div>
|
||||
<CTitleBanner class="q-pa-xs" :title="$t('steps.zoom_what')" bgcolor="bg-primary"
|
||||
clcolor="text-white"
|
||||
myclass="myshad" canopen="true" :visible="false">
|
||||
<div>
|
||||
<CVideo myvideokey="2yHhNktRDjg">
|
||||
|
||||
</CVideo>
|
||||
|
||||
<div v-if="toolsext.isLang('it')">
|
||||
<h3>ISTRUZIONI ZOOM</h3>
|
||||
|
||||
<ul style="text-align: left; font-size:0.75rem;">
|
||||
<li>1. Scarica l'app (<a
|
||||
href="https://play.google.com/store/apps/details?id=us.zoom.videomeetings"
|
||||
target="_blank">store</a> o <a href="https://zoom.us/support/download"
|
||||
target="_blank">da PC</a>)
|
||||
</li>
|
||||
<li>2. Inserisci il tuo Nome e Cognome per essere riconosciuto</li>
|
||||
<li>3. Clicca "join meeting"</li>
|
||||
<li>4. Clicca "call in device" altrimenti non potrai sentire 🔊</li>
|
||||
<li>5. Clicca il microfono per Attivarlo o Silenziarlo.</li>
|
||||
</ul>
|
||||
|
||||
<div class="text-h6"><strong>In più avrai:</strong></div>
|
||||
<ul style="text-align: left; font-size:0.75rem;">
|
||||
<li>Tasto per togliere il video (📹) ❌</li>
|
||||
<li>Tasto 'Share': per condividere contenuti condivisi</li>
|
||||
<li>Tasto 'Partecipants' in cui sulla sinistra, in basso, troverai la CHAT.</li>
|
||||
<li>Tasto 'More': troverai Raise Hands per fare le domande.</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div v-else>
|
||||
<h3>ZOOM INSTRUCTIONS</h3>
|
||||
|
||||
<ul style="text-align: left; font-size:0.75rem;">
|
||||
<li>1. Download the app (<a
|
||||
href="https://play.google.com/store/apps/details?id=us.zoom.videomeetings"
|
||||
target="_blank">store</a> or <a href="https://zoom.us/support/download"
|
||||
target="_blank">by PC</a>)
|
||||
</li>
|
||||
<li>2. Enter your first and last name to be recognized</li>
|
||||
<li>3. Click "join meeting"</li>
|
||||
<li>4. Click "call in device" otherwise you won't be able to hear 🔊</li>
|
||||
<li>5. Click the microphone to turn it on or mute it</li>
|
||||
</ul>
|
||||
|
||||
<div class="text-h6"><strong>More you will have:</strong></div>
|
||||
<ul style="text-align: left; font-size:0.75rem;">
|
||||
<li>Cancel button to remove the video (📹) ❌</li>
|
||||
<li>Share' button: to share shared content</li>
|
||||
<li>Participants' button where on the left, at the bottom, you will find the
|
||||
CHAT.
|
||||
</li>
|
||||
<li>Button 'More': you'll find Raise Hands to ask questions.</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</CTitleBanner>
|
||||
|
||||
</div>
|
||||
<div v-else-if="mystep.title === 'steps.sharemovement'">
|
||||
|
||||
<!--<CRequisiti :statebool="getnuminvitati() >= 2" :msgTrue="$t('steps.sharemovement_hai_invitato')"
|
||||
:msgFalse="$t('steps.sharemovement_devi_invitare_almeno_2')">
|
||||
</CRequisiti>-->
|
||||
|
||||
<q-btn class="q-mb-md" rounded size="md" color="primary" to="/dashboard"
|
||||
:label="$t('pages.dashboard')"></q-btn>
|
||||
|
||||
<div v-if="mystep.descr">
|
||||
<div v-html="$t(mystep.descr)"></div>
|
||||
</div>
|
||||
|
||||
<div class="row justify-center q-ma-sm">
|
||||
<q-btn push
|
||||
rounded
|
||||
color="primary"
|
||||
size="md"
|
||||
:label="$t('pages.invita')"
|
||||
icon="fas fa-user-plus"
|
||||
to="/invite">
|
||||
</q-btn>
|
||||
</div>
|
||||
|
||||
|
||||
<div v-if="mystep.descr">
|
||||
<div v-html="$t(mystep.descr)"></div>
|
||||
</div>
|
||||
<CCopyBtn :title="$t('reg.reflink')" :texttocopy="getRefLink">
|
||||
|
||||
</div>
|
||||
<div v-else-if="mystep.title === 'steps.enter_prog'">
|
||||
</CCopyBtn>
|
||||
|
||||
<div v-if="mystep.descr">
|
||||
<div v-html="$t(mystep.descr)"></div>
|
||||
</div>
|
||||
<CCopyBtn :title="$t('reg.linkzoom')" :texttocopy="tools.getLinkZoom()">
|
||||
|
||||
<CRequisiti :statebool="CompletatoRequisiti" :msgTrue="$t('steps.enter_prog_requisiti_ok')"
|
||||
:msgFalse="$t('steps.enter_prog_completa_requisiti')">
|
||||
</CRequisiti>
|
||||
</CCopyBtn>
|
||||
|
||||
|
||||
<CRequisiti v-if="Completato9Req" :statebool="Completato9Req" :msgTrue="$t('steps.enter_nave_9req_ok')"
|
||||
:msgFalse="$t('steps.enter_nave_9req_ko')">
|
||||
</CRequisiti>
|
||||
</div>
|
||||
<div v-else-if="mystep.title === 'dashboard.inv_attivi'">
|
||||
|
||||
</div>
|
||||
<div v-else>
|
||||
<div v-if="mystep.page">
|
||||
<CMyInnerPage :path=mystep.page>
|
||||
<div v-if="mystep.descr">
|
||||
<div v-html="$t(mystep.descr)"></div>
|
||||
</div>
|
||||
</CMyInnerPage>
|
||||
</div>
|
||||
</div>
|
||||
<CRequisiti v-if="getnuminvitati() > 0" :statebool="getnuminvitati_attivi() >= 2"
|
||||
:msgTrue="$t('steps.sharemovement_invitati_attivi_si')"
|
||||
:msgFalse="$t('steps.sharemovement_invitati_attivi_no')">
|
||||
</CRequisiti>
|
||||
|
||||
<q-stepper-navigation>
|
||||
<q-btn v-if="index < getlaststep" @click="nextstep(index)"
|
||||
color="primary" :label="$t('dialog.avanti')" class="q-ml-sm"></q-btn>
|
||||
<q-btn flat @click="step = index - 1" color="primary" :label="$t('dialog.indietro')"
|
||||
class="q-ml-sm"></q-btn>
|
||||
</q-stepper-navigation>
|
||||
</q-step>
|
||||
<q-btn class="q-mb-md" rounded size="md" color="primary" to="/dashboard"
|
||||
:label="$t('pages.dashboard')"></q-btn>
|
||||
|
||||
<!--<q-step-->
|
||||
<!--:name="getlaststep"-->
|
||||
<!--:title="$t('dialog.finish')"-->
|
||||
<!--icon="check-circle"-->
|
||||
<!--:done="step > getlaststep"-->
|
||||
<!-->-->
|
||||
|
||||
<!--<q-stepper-navigation>-->
|
||||
<!--<q-btn flat @click="step = getlaststep - 1" color="primary" :label="$t('dialog.indietro')" class="q-ml-sm"></q-btn>-->
|
||||
<!--</q-stepper-navigation>-->
|
||||
<!--</q-step>-->
|
||||
</q-stepper>
|
||||
</CTitleBanner>
|
||||
<div v-if="mystep.descr">
|
||||
<div v-html="$t(mystep.descr)"></div>
|
||||
</div>
|
||||
|
||||
<q-page-sticky expand position="top" v-if="!stepcompleti">
|
||||
<q-toolbar class="bg-yellow-7 glossy text-white">
|
||||
<q-toolbar-title @click="scrolltostep(steptodo)">
|
||||
<div class="flex flex-center q-mt-xs">
|
||||
<div class="flex flex-center">
|
||||
<q-badge color="white" text-color="grey-8" style="opacity: 0.9; font-size: 0.85rem;"
|
||||
:label="strpercstep"></q-badge>
|
||||
</div>
|
||||
<q-linear-progress size="lg" :value="percstep" color="green" class="q-pa-xs q-mb-xs bg-red">
|
||||
</q-linear-progress>
|
||||
</div>
|
||||
<div class="flex flex-center q-mb-xs">
|
||||
<q-badge color="white" text-color="blue" :label="progressstep" class="wrap"
|
||||
style="font-size: 0.85rem; height:20px; font-weight: bold;"></q-badge>
|
||||
</div>
|
||||
</q-toolbar-title>
|
||||
<q-btn round dense icon="arrow_forward" color="blue" @click="scrolltostep(steptodo)"></q-btn>
|
||||
</q-toolbar>
|
||||
</q-page-sticky>
|
||||
</div>
|
||||
<div v-else-if="mystep.title === 'steps.enter_prog'">
|
||||
|
||||
</div>
|
||||
<div v-if="mystep.descr">
|
||||
<div v-html="$t(mystep.descr)"></div>
|
||||
</div>
|
||||
|
||||
<CRequisiti :statebool="CompletatoRequisiti" :msgTrue="$t('steps.enter_prog_requisiti_ok')"
|
||||
:msgFalse="$t('steps.enter_prog_completa_requisiti')">
|
||||
</CRequisiti>
|
||||
|
||||
|
||||
<CRequisiti v-if="Completato9Req" :statebool="Completato9Req"
|
||||
:msgTrue="$t('steps.enter_nave_9req_ok')"
|
||||
:msgFalse="$t('steps.enter_nave_9req_ko')">
|
||||
</CRequisiti>
|
||||
|
||||
<div v-if="CompletatoRequisiti">
|
||||
<q-btn class="q-mb-md" rounded size="md" color="primary" to="/dashboard"
|
||||
:label="$t('dashboard.entra_in_lavagna')"></q-btn>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div v-else>
|
||||
<div v-if="mystep.page">
|
||||
<CMyInnerPage :path=mystep.page>
|
||||
<div v-if="mystep.descr">
|
||||
<div v-html="$t(mystep.descr)"></div>
|
||||
</div>
|
||||
</CMyInnerPage>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<q-stepper-navigation>
|
||||
<q-btn v-if="index < getlaststep" @click="nextstep(index)"
|
||||
color="primary" :label="$t('dialog.avanti')" class="q-ml-sm"></q-btn>
|
||||
<q-btn flat @click="step = index - 1" color="primary" :label="$t('dialog.indietro')"
|
||||
class="q-ml-sm"></q-btn>
|
||||
</q-stepper-navigation>
|
||||
</q-step>
|
||||
|
||||
<!--<q-step-->
|
||||
<!--:name="getlaststep"-->
|
||||
<!--:title="$t('dialog.finish')"-->
|
||||
<!--icon="check-circle"-->
|
||||
<!--:done="step > getlaststep"-->
|
||||
<!-->-->
|
||||
|
||||
<!--<q-stepper-navigation>-->
|
||||
<!--<q-btn flat @click="step = getlaststep - 1" color="primary" :label="$t('dialog.indietro')" class="q-ml-sm"></q-btn>-->
|
||||
<!--</q-stepper-navigation>-->
|
||||
<!--</q-step>-->
|
||||
</q-stepper>
|
||||
</CTitleBanner>
|
||||
|
||||
<q-page-sticky expand position="top" v-if="!stepcompleti">
|
||||
<q-toolbar class="bg-yellow-7 glossy text-white">
|
||||
<q-toolbar-title @click="scrolltostep(steptodo)">
|
||||
<div class="flex flex-center q-mt-xs">
|
||||
<div class="flex flex-center">
|
||||
<q-badge color="white" text-color="grey-8" style="opacity: 0.9; font-size: 0.85rem;"
|
||||
:label="strpercstep"></q-badge>
|
||||
</div>
|
||||
<q-linear-progress size="lg" :value="percstep" color="green" class="q-pa-xs q-mb-xs bg-red">
|
||||
</q-linear-progress>
|
||||
</div>
|
||||
<div class="flex flex-center q-mb-xs">
|
||||
<q-badge color="white" text-color="blue" :label="progressstep" class="wrap"
|
||||
style="font-size: 0.85rem; height:20px; font-weight: bold;"></q-badge>
|
||||
</div>
|
||||
</q-toolbar-title>
|
||||
<q-btn round dense icon="arrow_forward" color="blue" @click="scrolltostep(steptodo)"></q-btn>
|
||||
</q-toolbar>
|
||||
</q-page-sticky>
|
||||
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script lang="ts" src="./CStatus.ts">
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
@import './CStatus.scss';
|
||||
@import './CStatus.scss';
|
||||
</style>
|
||||
|
||||
@@ -28,5 +28,4 @@ export default class Allnavi extends MixinBase {
|
||||
public async mounted() {
|
||||
this.ris = await GlobalStore.actions.GetArrNavi()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -9,3 +9,24 @@
|
||||
.DoniConfermati{
|
||||
color: green;
|
||||
}
|
||||
|
||||
.cont_donatore {
|
||||
border: solid 2px #4198ef;
|
||||
padding: 2px 8px;
|
||||
margin: 2px 4px;
|
||||
font-size: 1rem;
|
||||
border-radius: 16px;
|
||||
}
|
||||
|
||||
.donatore, .mediatore, .sognatore, .title-nave, .intermedio2, .intermedio3 {
|
||||
padding: 2px 4px;
|
||||
margin: 2px 4px;
|
||||
color: white;
|
||||
font-size: 1rem;
|
||||
border-radius: 16px;
|
||||
}
|
||||
|
||||
.donatore {
|
||||
background-color: red;
|
||||
}
|
||||
|
||||
|
||||
@@ -12,6 +12,7 @@ import { CTitle } from '../../../components/CTitle'
|
||||
import { CMyPage } from '../../../components/CMyPage'
|
||||
import MixinBase from '../../../mixins/mixin-base'
|
||||
import { CMyNave } from '../../../components/CMyNave'
|
||||
import { lists } from '../../../store/Modules/lists'
|
||||
|
||||
const namespace = 'CalendarModule'
|
||||
|
||||
@@ -23,15 +24,31 @@ export default class Listadoninavi extends MixinBase {
|
||||
public $t: any
|
||||
public $q
|
||||
public incaricamento: boolean = false
|
||||
public myloadingload: boolean = false
|
||||
public loading: boolean = false
|
||||
public showdonatori: boolean = false
|
||||
public showmsguser: boolean = false
|
||||
public arrdoninavi = []
|
||||
public MyPagination: {
|
||||
sortBy: string,
|
||||
descending: boolean,
|
||||
page: number,
|
||||
rowsNumber: number, // specifying this determines pagination is server-side
|
||||
rowsPerPage: number
|
||||
} = { sortBy: 'index', descending: false, page: 1, rowsNumber: 10, rowsPerPage: 10 }
|
||||
public selrec = null
|
||||
public seluser = null
|
||||
public seldonatore = null
|
||||
public msg_tosend: string = ''
|
||||
public msg_tosend_user: string = ''
|
||||
public pagination = {
|
||||
sortBy: 'desc',
|
||||
descending: false,
|
||||
page: 2,
|
||||
rowsPerPage: 10
|
||||
// rowsNumber: xx if getting data from a server
|
||||
}
|
||||
|
||||
public pagination2 = {
|
||||
sortBy: 'desc',
|
||||
descending: false,
|
||||
page: 2,
|
||||
rowsPerPage: 8
|
||||
// rowsNumber: xx if getting data from a server
|
||||
}
|
||||
|
||||
public coldoninavi: any[] = [
|
||||
{
|
||||
name: 'index',
|
||||
@@ -42,27 +59,162 @@ export default class Listadoninavi extends MixinBase {
|
||||
sortable: true
|
||||
},
|
||||
{ name: 'rigacol', align: 'center', label: 'Nave', field: 'riga', sortable: true },
|
||||
{ name: 'date_gift_chat_open', align: 'center', label: '⏰ Gift Chat', field: 'date_gift_chat_open', sortable: true },
|
||||
{
|
||||
name: 'date_gift_chat_open',
|
||||
align: 'center',
|
||||
label: '⏰ Gift Chat',
|
||||
field: 'date_gift_chat_open',
|
||||
sortable: true
|
||||
},
|
||||
{ name: 'date_start', align: 'center', label: '⏰ Partenza', field: 'date_start', sortable: true },
|
||||
{ name: 'mediatore', align: 'center', label: '🌀 Mediatore', field: '', sortable: true },
|
||||
{ name: 'sognatore', align: 'center', label: 'Sognatore', field: '', sortable: true },
|
||||
{ name: 'donatori', align: 'center', label: 'Donatori', field: '', sortable: true },
|
||||
{ name: 'DoniAttesaDiConferma', align: 'center', label: '🎁 Wait', field: 'DoniAttesaDiConferma', sortable: true },
|
||||
{ name: 'DoniMancanti', align: 'center', label: '🎁 Mancano', field: 'DoniMancanti', sortable: true },
|
||||
{ name: 'DoniConfermati', align: 'center', label: '🎁 OK', field: 'DoniConfermati', sortable: true },
|
||||
{ name: 'note', align: 'left', label: 'Note', field: 'note', sortable: true },
|
||||
{ name: 'note_interne', align: 'left', label: 'Note Interne', field: 'note_interne', sortable: true },
|
||||
]
|
||||
|
||||
public coldonatori: any[] = [
|
||||
{
|
||||
name: 'index',
|
||||
required: true,
|
||||
label: 'Num',
|
||||
align: 'left',
|
||||
field: 'index',
|
||||
sortable: true
|
||||
},
|
||||
{ name: 'rigacol', align: 'center', label: 'Posizione', field: '', sortable: true },
|
||||
{ name: 'name', align: 'center', label: 'Nome', field: 'name', sortable: true },
|
||||
{ name: 'num_tess', align: 'center', label: 'Tessitura', field: 'num_tess', sortable: true },
|
||||
{ name: 'date_made_gift', align: 'center', label: 'Inviato', field: 'date_made_gift', sortable: true },
|
||||
{ name: 'made_gift', align: 'center', label: 'Dono', field: 'made_gift', sortable: true },
|
||||
]
|
||||
|
||||
public async mounted() {
|
||||
this.incaricamento = true
|
||||
this.$q.loading.show({ message: this.$t('otherpages.update') })
|
||||
this.loading = true
|
||||
// this.$q.loading.show({ message: this.$t('otherpages.update') })
|
||||
|
||||
const ris = await GlobalStore.actions.GetArrDoniNavi()
|
||||
console.log('ris', ris)
|
||||
this.arrdoninavi = ris.arrnavi
|
||||
|
||||
this.$q.loading.hide()
|
||||
// this.$q.loading.hide()
|
||||
|
||||
this.incaricamento = false
|
||||
this.loading = false
|
||||
|
||||
}
|
||||
|
||||
public deveDonare(rec) {
|
||||
return (rec.ind_order !== this.selrec.donatore.recmediatore.ind_order && rec.num_tess === 2)
|
||||
}
|
||||
|
||||
public clickdonatori(rec) {
|
||||
this.selrec = rec
|
||||
this.showdonatori = true
|
||||
}
|
||||
|
||||
public clickseluser(rec) {
|
||||
this.seluser = rec
|
||||
this.showmsguser = true
|
||||
}
|
||||
|
||||
public HoRicevutoIlDono(rec) {
|
||||
this.seldonatore = rec
|
||||
const msgtitle = this.$t('dashboard.dono_ricevuto_2')
|
||||
const msginvia = this.$t('dashboard.confermi_dono_ricevuto', {
|
||||
donatore: rec.name + ' ' + rec.surname
|
||||
})
|
||||
|
||||
tools.askConfirm(this.$q, msgtitle, msginvia + ' ' + '?', translate('dialog.yes'), translate('dialog.no'), this, '', lists.MenuAction.DONO_RICEVUTO, 0, {
|
||||
param1: {
|
||||
_id: rec._id,
|
||||
made_gift: true
|
||||
},
|
||||
param2: '',
|
||||
param3: ''
|
||||
})
|
||||
|
||||
}
|
||||
|
||||
public Chiudi() {
|
||||
this.showdonatori = false
|
||||
this.seldonatore = null
|
||||
}
|
||||
|
||||
public ActionAfterYes(action, item, data) {
|
||||
console.log('ActionAfterYes...')
|
||||
if (action === lists.MenuAction.DONO_RICEVUTO) {
|
||||
if (!!this.seldonatore) {
|
||||
this.seldonatore.made_gift = true
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public async InviaMsgANave(msgobj, navemediatore) {
|
||||
|
||||
const msgtitle = translate('dialog.sendmsg')
|
||||
|
||||
tools.askConfirm(this.$q, msgtitle, msgobj.msgpar1 + ' ' + '?', translate('dialog.yes'), translate('dialog.no'), this, '', lists.MenuAction.INVIA_MSG_A_DONATORI, 0, {
|
||||
param1: msgobj,
|
||||
param2: navemediatore,
|
||||
})
|
||||
|
||||
}
|
||||
|
||||
public async InviaMsgAUserConfirm(msgobj, navemediatore) {
|
||||
|
||||
const msgtitle = translate('dialog.sendmsg')
|
||||
|
||||
tools.askConfirm(this.$q, msgtitle, msgobj.msgpar1 + ' ' + '?', translate('dialog.yes'), translate('dialog.no'), this, '', lists.MenuAction.INVIA_MSG_A_SINGOLO, 0, {
|
||||
param1: msgobj,
|
||||
param2: navemediatore,
|
||||
})
|
||||
|
||||
}
|
||||
|
||||
public InviaMsgADonatori() {
|
||||
|
||||
if (!this.msg_tosend)
|
||||
return
|
||||
|
||||
const msgobj = {
|
||||
tipomsg: tools.TipoMsg.SEND_MSG,
|
||||
msgpar1: this.msg_tosend,
|
||||
inviareale: true,
|
||||
}
|
||||
|
||||
const navemediatore = this.selrec.donatore.recmediatore
|
||||
|
||||
this.InviaMsgANave(msgobj, navemediatore)
|
||||
}
|
||||
|
||||
public InviaMsgAUser() {
|
||||
|
||||
if (!this.msg_tosend_user)
|
||||
return
|
||||
|
||||
const msgobj = {
|
||||
tipomsg: tools.TipoMsg.SEND_MSG_SINGOLO,
|
||||
msgpar1: this.msg_tosend_user,
|
||||
username: this.seluser.username,
|
||||
inviareale: true,
|
||||
}
|
||||
|
||||
const naveuser = this.seluser
|
||||
|
||||
this.InviaMsgAUserConfirm(msgobj, naveuser)
|
||||
}
|
||||
|
||||
public SaveField(rec, myfield) {
|
||||
if (!!rec) {
|
||||
const mydata = {}
|
||||
mydata[myfield] = rec[myfield]
|
||||
console.log('mydata', mydata, 'id', rec.id)
|
||||
tools.saveFieldToServer(this, 'navi', rec.id, mydata)
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -13,7 +13,8 @@
|
||||
title="Doni Navi"
|
||||
:data="arrdoninavi"
|
||||
:columns="coldoninavi"
|
||||
:Pagination.sync="MyPagination"
|
||||
:loading="loading"
|
||||
:Pagination.sync="pagination"
|
||||
row-key="index">
|
||||
<template v-slot:body="props">
|
||||
<q-tr :props="props">
|
||||
@@ -23,49 +24,204 @@
|
||||
<q-td key="rigacol" :props="props">
|
||||
{{ props.row.riga }}.{{ props.row.col }}
|
||||
</q-td>
|
||||
<q-td key="col" :props="props">
|
||||
{{ props.row.col }}
|
||||
</q-td>
|
||||
<q-td key="date_gift_chat_open" :props="props">
|
||||
|
||||
<div v-if="!!props.row.rec.mediatore.arrdonatori">
|
||||
{{ tools.getstrshortDate(props.row.rec.mediatore.arrdonatori[0].date_gift_chat_open)
|
||||
<div v-if="!!props.row.rec.donatore.arrdonatori">
|
||||
{{ tools.getstrshortDate(props.row.rec.donatore.arrdonatori[0].date_gift_chat_open)
|
||||
}}
|
||||
</div>
|
||||
|
||||
<a v-if="!!props.row.rec.mediatore.recmediatore.link_chat" :href="props.row.rec.mediatore.recmediatore.link_chat" target="_blank">Link</a>
|
||||
<a v-if="!!props.row.rec.donatore.recmediatore.link_chat"
|
||||
:href="props.row.rec.donatore.recmediatore.link_chat" target="_blank">Link</a>
|
||||
|
||||
<div v-if="props.row.rec.donatore.recmediatore.sent_msg_howto_make_gift">(Link Inviato)</div>
|
||||
</q-td>
|
||||
<q-td key="date_start" :props="props">
|
||||
<div v-if="!!props.row.rec.mediatore.arrdonatori">
|
||||
{{ tools.getstrshortDate(props.row.rec.mediatore.arrdonatori[0].date_start) }}
|
||||
<div v-if="!!props.row.rec.donatore.arrdonatori">
|
||||
{{ tools.getstrshortDate(props.row.rec.donatore.arrdonatori[0].date_start) }}
|
||||
</div>
|
||||
</q-td>
|
||||
<q-td key="mediatore" :props="props">
|
||||
<div v-if="!!props.row.rec.mediatore.recmediatore">
|
||||
{{ props.row.rec.mediatore.recmediatore.name }} {{
|
||||
props.row.rec.mediatore.recmediatore.surname }}
|
||||
</div>
|
||||
<q-btn v-if="!!props.row.rec.donatore.recmediatore" flat rounded color="blue"
|
||||
:label="props.row.rec.donatore.recmediatore.name + ` ` + props.row.rec.donatore.recmediatore.surname"
|
||||
@click="clickseluser(props.row.rec.donatore.recmediatore)">
|
||||
</q-btn>
|
||||
</q-td>
|
||||
<q-td key="sognatore" :props="props">
|
||||
<div v-if="!!props.row.rec.mediatore.recsognatori[0]">
|
||||
{{ props.row.rec.mediatore.recsognatori[0].name }} {{
|
||||
props.row.rec.mediatore.recsognatori[0].surname }}
|
||||
<q-btn v-if="!!props.row.rec.donatore.recsognatori[0]" flat rounded color="blue"
|
||||
:label="props.row.rec.donatore.recsognatori[0].name + ` ` + props.row.rec.donatore.recsognatori[0].surname"
|
||||
@click="clickseluser(props.row.rec.donatore.recsognatori[0])">
|
||||
</q-btn>
|
||||
</q-td>
|
||||
<q-td key="donatori" :props="props">
|
||||
<q-btn flat rounded color="blue"
|
||||
:label="$t('dashboard.donatori')"
|
||||
@click="clickdonatori(props.row.rec)">
|
||||
</q-btn>
|
||||
</q-td>
|
||||
|
||||
<q-td key="DoniAttesaDiConferma" :props="props">
|
||||
<div v-if="props.row.DoniAttesaDiConferma > 0" class="DoniAttesaDiConferma">{{
|
||||
props.row.DoniAttesaDiConferma }}
|
||||
</div>
|
||||
</q-td>
|
||||
<q-td key="DoniAttesaDiConferma" :props="props">
|
||||
<div v-if="props.row.DoniAttesaDiConferma > 0" class="DoniAttesaDiConferma">{{ props.row.DoniAttesaDiConferma }} </div>
|
||||
</q-td>
|
||||
<q-td key="DoniMancanti" :props="props">
|
||||
<div v-if="props.row.DoniMancanti > 0" class="DoniMancanti">{{ props.row.DoniMancanti }}</div>
|
||||
<div v-if="props.row.DoniMancanti > 0" class="DoniMancanti">{{ props.row.DoniMancanti
|
||||
}}
|
||||
</div>
|
||||
</q-td>
|
||||
<q-td key="DoniConfermati" :props="props">
|
||||
<div v-if="props.row.DoniConfermati > 0" class="DoniConfermati">{{ props.row.DoniConfermati }}</div>
|
||||
<div v-if="props.row.DoniConfermati > 0" class="DoniConfermati">{{
|
||||
props.row.DoniConfermati }}
|
||||
</div>
|
||||
</q-td>
|
||||
<q-td key="note" :props="props">
|
||||
<div class="Note">
|
||||
<div v-if="props.row.note">{{ props.row.note }}</div>
|
||||
<div v-else>---</div>
|
||||
<q-popup-edit v-model="props.row.note" buttons @save="SaveField(props.row, 'note')">
|
||||
<q-field>
|
||||
<q-input v-model="props.row.note" />
|
||||
</q-field>
|
||||
</q-popup-edit>
|
||||
</div>
|
||||
</q-td>
|
||||
<q-td key="note_interne" :props="props">
|
||||
<div class="Note">
|
||||
<div v-if="props.row.note_interne">{{ props.row.note_interne }}</div>
|
||||
<div v-else>---</div>
|
||||
<q-popup-edit v-model="props.row.note_interne" buttons @save="SaveField(props.row, 'note_interne')">
|
||||
<q-field>
|
||||
<q-input v-model="props.row.note_interne" />
|
||||
</q-field>
|
||||
</q-popup-edit>
|
||||
</div>
|
||||
</q-td>
|
||||
</q-tr>
|
||||
</template>
|
||||
</q-table>
|
||||
|
||||
</CTitleBanner>
|
||||
|
||||
<q-dialog v-model="showdonatori">
|
||||
<q-card v-if="selrec" :style="`min-width: `+ tools.myheight_dialog() + `px;` ">
|
||||
<q-toolbar class="bg-primary text-white" style="min-height: 30px;">
|
||||
<q-toolbar-title>
|
||||
{{$t('dashboard.donatori')}}
|
||||
</q-toolbar-title>
|
||||
<q-btn flat round color="white" icon="close" v-close-popup clickable @click="Chiudi"></q-btn>
|
||||
</q-toolbar>
|
||||
<q-card-section class="inset-shadow" style="padding: 4px !important;">
|
||||
<div class="row justify-center q-gutter-md">
|
||||
<div>
|
||||
<q-table
|
||||
dense
|
||||
color="primary"
|
||||
title="Donatori"
|
||||
:data="selrec.donatore.arrdonatori"
|
||||
:columns="coldonatori"
|
||||
:Pagination="pagination2"
|
||||
row-key="index">
|
||||
<template v-slot:body="props">
|
||||
<q-tr :props="props">
|
||||
<q-td key="index" :props="props">
|
||||
D{{ props.row.index }}
|
||||
</q-td>
|
||||
<q-td key="rigacol" :props="props">
|
||||
{{ props.row.riga }}.{{ props.row.col }}
|
||||
</q-td>
|
||||
<q-td key="name" :props="props">
|
||||
<q-btn flat rounded color="blue"
|
||||
:label="props.row.name + ` ` + props.row.surname"
|
||||
@click="clickseluser(props.row)">
|
||||
</q-btn>
|
||||
</q-td>
|
||||
<q-td key="num_tess" :props="props">
|
||||
{{ props.row.num_tess }}
|
||||
</q-td>
|
||||
<q-td key="date_made_gift" :props="props">
|
||||
{{ tools.getstrshortDateTime(props.row.date_made_gift) }}
|
||||
</q-td>
|
||||
<q-td key="made_gift" :props="props">
|
||||
|
||||
<div v-if="deveDonare(props.row)">
|
||||
<div class="row justify-center">
|
||||
<q-btn v-if="!props.row.made_gift"
|
||||
push
|
||||
rounded
|
||||
color="primary"
|
||||
size="md"
|
||||
:label="$t('dashboard.dono_ricevuto_3', {donatore: props.row.name })"
|
||||
|
||||
@click="HoRicevutoIlDono(props.row)">
|
||||
</q-btn>
|
||||
</div>
|
||||
<q-icon v-if="props.row.made_gift" color="green" inverted size="sm"
|
||||
name="fas fa-gift" class="gift"></q-icon>
|
||||
</div>
|
||||
<div v-else>
|
||||
--------
|
||||
</div>
|
||||
</q-td>
|
||||
|
||||
</q-tr>
|
||||
</template>
|
||||
</q-table>
|
||||
|
||||
<div class="q-ma-sm text-center">
|
||||
<div>Invia un Messaggio a tutti questi Donatori:</div>
|
||||
<q-input type="textarea"
|
||||
autogrow
|
||||
v-model="msg_tosend" :label="$t('cal.msgbooking')"
|
||||
input-class="myinput-area">
|
||||
|
||||
</q-input>
|
||||
|
||||
<div class="row justify-center centermydiv q-gutter-sm" style="max-width: 420px;">
|
||||
<q-btn rounded text-color="secondary" icon="fab fa-telegram"
|
||||
:label="$t('dialog.sendmsg')"
|
||||
@click="InviaMsgADonatori()"></q-btn>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</q-card-section>
|
||||
</q-card>
|
||||
</q-dialog>
|
||||
<q-dialog v-model="showmsguser">
|
||||
<q-card v-if="seluser" :style="`min-width: `+ tools.myheight_dialog() + `px;` ">
|
||||
<q-toolbar class="bg-primary text-white" style="min-height: 30px;">
|
||||
<q-toolbar-title>
|
||||
{{$t('dashboard.donatori')}}
|
||||
</q-toolbar-title>
|
||||
<q-btn flat round color="white" icon="close" v-close-popup clickable @click="Chiudi"></q-btn>
|
||||
</q-toolbar>
|
||||
<q-card-section class="inset-shadow" style="padding: 4px !important;">
|
||||
<div class="row justify-center q-gutter-md">
|
||||
<div>
|
||||
<div class="q-ma-sm text-center">
|
||||
<div>Invia un Messaggio a {{seluser.name }} {{ seluser.surname }}:</div>
|
||||
<q-input type="textarea"
|
||||
autogrow
|
||||
v-model="msg_tosend_user" :label="$t('cal.msgbooking')"
|
||||
input-class="myinput-area">
|
||||
|
||||
</q-input>
|
||||
|
||||
<div class="row justify-center centermydiv q-gutter-sm" style="max-width: 420px;">
|
||||
<q-btn rounded text-color="secondary" icon="fab fa-telegram"
|
||||
:label="$t('dialog.sendmsg') + ` a ` + seluser.name + ` ` + seluser.surname"
|
||||
@click="InviaMsgAUser()"></q-btn>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</q-card-section>
|
||||
</q-card>
|
||||
</q-dialog>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
@@ -215,8 +215,9 @@ const msg_it = {
|
||||
'cambia la "cronologia per i nuovi membri" da nascosta a visibile.</li>' +
|
||||
'<li>Per trovare il <strong>link della Chat appena creata</strong>: clicca sul nome della chat in alto, clicca sulla Matita -> "Tipo di Gruppo" -> "invita nel gruppo tramite link", clicca su "copia link" e incollalo qui sotto, sulla casella <strong>"Link Gift Chat"</strong></li>' +
|
||||
'<li>Invia il Link della Gift Chat a tutti i Donatori, cliccando sul bottone qui sotto.</li></ol>',
|
||||
sonosognatore: '<ol class="lista"><li>Quando sei in questa posizione, verrai invitato ad entrare in una <strong>Gift Chat</strong> (Telegram) e qui troverai anche gli altri 7 Donatori, il Mediatore, il Sognatore e un rappresentante dello Staff.</li>' +
|
||||
sonodonatore: '<ol class="lista"><li>Quando sei in questa posizione, verrai invitato ad entrare in una <strong>Gift Chat</strong> (Telegram) e qui troverai anche gli altri 7 Donatori, il Mediatore, il Sognatore e un rappresentante dello Staff.</li>' +
|
||||
'<li>Effettuerai il tuo dono <strong>ESATTAMENTE il giorno indicato</strong> e nella modalità di pagamento che troverai scritto qui.<br></ol>',
|
||||
sonodonatore_seconda_tessitura: '<ol class="lista"><li>Qui tu sei Mediatore e anche Donatore, ma essendo la seconda Tessitura, non avrai bisogno di effettuare nuovamente il tuo dono<br></ol>',
|
||||
link_chat: 'Link della Gift Chat Telegram',
|
||||
donatori:'Donatori',
|
||||
donatore:'Donatore',
|
||||
@@ -244,6 +245,7 @@ const msg_it = {
|
||||
confermi_dono_ricevuto_msg: '{sognatore} conferma di aver ricevuto il Dono di 33€ da parte di {donatore}',
|
||||
msg_bot_conferma: '{donatore} ha confermato di aver inviato il suo Dono di 33€ a {sognatore}',
|
||||
ricevuto_dono_ok: 'Hai confermato che il dono è stato Ricevuto',
|
||||
entra_in_lavagna: 'Entra sulla Tua Lavagna per vedere le Navi in Partenza',
|
||||
},
|
||||
reg: {
|
||||
registered: 'Registrato',
|
||||
|
||||
@@ -782,14 +782,15 @@ namespace Actions {
|
||||
})
|
||||
}
|
||||
|
||||
async function InviaMsgADonatori(context, { msgobj, navemediatore }) {
|
||||
async function InviaMsgADonatori(context, { msgobj, navemediatore, tipomsg }) {
|
||||
console.log('InviaMsgADonatori', msgobj)
|
||||
|
||||
const mydata = {
|
||||
idapp: process.env.APP_ID,
|
||||
tipomsg: tools.TipoMsg.SEND_LINK_CHAT_DONATORI,
|
||||
msgextra: msgobj.msgextra,
|
||||
msgpar1: msgobj.msgpar1,
|
||||
username: msgobj.username,
|
||||
tipomsg,
|
||||
inviareale: msgobj.inviareale,
|
||||
navemediatore
|
||||
}
|
||||
|
||||
@@ -167,6 +167,7 @@ const colnavi = [
|
||||
AddCol({ name: 'ind_order', label_trans: 'ind_order' }),
|
||||
AddCol({ name: 'parent_id', label_trans: 'parent_id' }),
|
||||
AddCol({ name: 'date_start', label_trans: 'date_start', fieldtype: tools.FieldType.date }),
|
||||
AddCol({ name: 'date_gift_chat_open', label_trans: 'date_gift_chat_open', fieldtype: tools.FieldType.date }),
|
||||
AddCol({ name: 'link_chat', label_trans: 'reg.link_chat' }),
|
||||
AddCol({ name: 'sent_msg_howto_make_gift', label_trans: 'sent_msg_howto_make_gift', fieldtype: tools.FieldType.boolean }),
|
||||
AddCol({ name: 'made_gift', label_trans: 'reg.made_gift', fieldtype: tools.FieldType.boolean }),
|
||||
@@ -175,6 +176,8 @@ const colnavi = [
|
||||
AddCol({ name: 'received_gift', label_trans: 'received_gift', fieldtype: tools.FieldType.boolean }),
|
||||
AddCol({ name: 'date_received_gift', label_trans: 'date_received_gift', fieldtype: tools.FieldType.date }),
|
||||
AddCol({ name: 'num_tess', label_trans: 'num_tess', fieldtype: tools.FieldType.number }),
|
||||
AddCol({ name: 'note', label_trans: 'note', fieldtype: tools.FieldType.string }),
|
||||
AddCol({ name: 'note_interne', label_trans: 'note_interne', fieldtype: tools.FieldType.string }),
|
||||
AddCol(DeleteRec),
|
||||
AddCol(DuplicateRec)
|
||||
]
|
||||
|
||||
@@ -22,6 +22,7 @@ export const lists = {
|
||||
DELETE_USERLIST: 335,
|
||||
REGALA_INVITATO: 340,
|
||||
INVIA_MSG_A_DONATORI: 350,
|
||||
INVIA_MSG_A_SINGOLO: 355,
|
||||
DONO_INVIATO: 360,
|
||||
DONO_RICEVUTO: 370,
|
||||
|
||||
|
||||
@@ -60,6 +60,8 @@ export const tools = {
|
||||
|
||||
TipoMsg: {
|
||||
SEND_LINK_CHAT_DONATORI: 1,
|
||||
SEND_MSG: 2,
|
||||
SEND_MSG_SINGOLO: 3
|
||||
},
|
||||
|
||||
listBestColor: [
|
||||
@@ -1501,7 +1503,11 @@ export const tools = {
|
||||
})
|
||||
} else if (func === lists.MenuAction.INVIA_MSG_A_DONATORI) {
|
||||
// console.log('param1', par.param1)
|
||||
GlobalStore.actions.InviaMsgADonatori({ msgobj: par.param1, navemediatore: par.param2 }).then((ris) => {
|
||||
GlobalStore.actions.InviaMsgADonatori({
|
||||
msgobj: par.param1,
|
||||
navemediatore: par.param2,
|
||||
tipomsg: par.param1.tipomsg
|
||||
}).then((ris) => {
|
||||
if (ris) {
|
||||
if (par.param1.inviareale)
|
||||
tools.showPositiveNotif(myself.$q, myself.$t('dashboard.msg_donatori_ok'))
|
||||
@@ -1509,6 +1515,19 @@ export const tools = {
|
||||
} else
|
||||
tools.showNegativeNotif(myself.$q, myself.$t('db.recfailed'))
|
||||
})
|
||||
} else if (func === lists.MenuAction.INVIA_MSG_A_SINGOLO) {
|
||||
// console.log('param1', par.param1)
|
||||
GlobalStore.actions.InviaMsgADonatori({
|
||||
msgobj: par.param1,
|
||||
navemediatore: par.param2,
|
||||
tipomsg: par.param1.tipomsg
|
||||
})
|
||||
.then((ris) => {
|
||||
if (ris) {
|
||||
tools.showPositiveNotif(myself.$q, myself.$t('cal.sendmsg_sent'))
|
||||
} else
|
||||
tools.showNegativeNotif(myself.$q, myself.$t('db.recfailed'))
|
||||
})
|
||||
} else if (func === lists.MenuAction.DONO_INVIATO) {
|
||||
const mydatatosave = {
|
||||
id: par.param1._id,
|
||||
@@ -2402,8 +2421,10 @@ export const tools = {
|
||||
return '337'
|
||||
} else if (Screen.width < 600) {
|
||||
return '400'
|
||||
} else {
|
||||
} else if (Screen.width < 900) {
|
||||
return '500'
|
||||
} else {
|
||||
return '600'
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
@@ -1,123 +1,149 @@
|
||||
<template>
|
||||
<div>
|
||||
<CTitleBanner title="Operazioni su DB:"></CTitleBanner>
|
||||
<div class="row justify-center q-gutter-sm q-list--bordered center_img" style="max-width: 600px">
|
||||
<div class="row">
|
||||
<q-btn label="Passa i codici Telefoni sul campo cell" color="primary"
|
||||
@click="EseguiFunz('changeCellInt')"></q-btn>
|
||||
<br></div>
|
||||
<div class="row">
|
||||
<q-btn label="Trasforma le email tutte in minuscolo" color="primary"
|
||||
@click="EseguiFunz('changeEmailLowerCase')"></q-btn>
|
||||
<br></div>
|
||||
<div class="row">
|
||||
<q-btn label="Crea Utenti Test" color="primary" @click="EseguiFunz('creaUtentiTest')"></q-btn><br>
|
||||
</div>
|
||||
<div class="row">
|
||||
<q-btn label="IMPOSTARE A TUTTI PAYPAL" color="primary" @click="EseguiFunz('ImpostaATuttiPaypal')"></q-btn><br>
|
||||
</div>
|
||||
<div class="row">
|
||||
<q-btn label="NUM_TESS A 1" color="primary" @click="EseguiFunz('numtessUno')"></q-btn><br>
|
||||
</div>
|
||||
<div class="row">
|
||||
<q-btn label="Inizializza ListaIngresso" color="negative" @click="EseguiFunz('initListaIngresso')"></q-btn><br>
|
||||
<q-btn label="Crea ListaIngresso" color="negative" @click="EseguiFunz('creaLista')"></q-btn>
|
||||
</div>
|
||||
<!--
|
||||
<div class="row">
|
||||
<q-btn label="Elimina Navi" color="negative" @click="EseguiFunz('delNavi')"></q-btn><br>
|
||||
</div>
|
||||
-->
|
||||
<div class="row">
|
||||
<q-btn label="Elimina Navi non Partite" color="negative" @click="EseguiFunz('delNaviNoStarted')"></q-btn><br>
|
||||
</div>
|
||||
<div class="row">
|
||||
<q-btn label="Elimina Navi Provvisorie" color="negative" @click="EseguiFunz('delNaviProvvisorie')"></q-btn><br>
|
||||
</div>
|
||||
<div>
|
||||
<CDateTime
|
||||
:value.sync="date_start"
|
||||
:label="$t('cal.eventstartdatetime')"
|
||||
:readonly="false">
|
||||
</CDateTime>
|
||||
<q-input v-model="numpersone" type="number" autofocus label="Num Persone to Add" style="width: 50px;"></q-input>
|
||||
<q-btn label="Crea Navi Provvisorie" color="negative" @click="EseguiFunz('creaNaviProvvisorie')"></q-btn>
|
||||
<q-btn label="Crea Navi Definitive" color="negative" @click="EseguiFunz('creaNaviDefinitive')"></q-btn>
|
||||
</div>
|
||||
<div v-if="!incaricamento" class="row">
|
||||
<CMyFieldDb title="Riga"
|
||||
mykey="riga"
|
||||
:serv="false"
|
||||
:type="tools.FieldType.number">
|
||||
</CMyFieldDb>
|
||||
<CMyFieldDb title="Col"
|
||||
mykey="col"
|
||||
:serv="false"
|
||||
:type="tools.FieldType.number">
|
||||
</CMyFieldDb>
|
||||
<CMyFieldDb title="Riga Doni"
|
||||
mykey="rigadoni"
|
||||
:serv="false"
|
||||
:type="tools.FieldType.number">
|
||||
</CMyFieldDb>
|
||||
<CMyFieldDb title="Col Doni"
|
||||
mykey="coldoni"
|
||||
:serv="false"
|
||||
:type="tools.FieldType.number">
|
||||
</CMyFieldDb>
|
||||
<CMyFieldDb title="Visu_TEST"
|
||||
mykey="VISU_TEST"
|
||||
:serv="false"
|
||||
:type="tools.FieldType.boolean">
|
||||
</CMyFieldDb>
|
||||
<CMyFieldDb title="VISU_NAVE_BOT"
|
||||
mykey="VISU_NAVE_BOT"
|
||||
:serv="false"
|
||||
:type="tools.FieldType.boolean">
|
||||
</CMyFieldDb>
|
||||
</div>
|
||||
<div>
|
||||
<CTitleBanner title="Operazioni su DB:"></CTitleBanner>
|
||||
<div class="row justify-center q-gutter-sm q-list--bordered center_img" style="max-width: 600px">
|
||||
<!--<div class="row">
|
||||
<q-btn label="Passa i codici Telefoni sul campo cell" color="primary"
|
||||
@click="EseguiFunz('changeCellInt')"></q-btn>
|
||||
<br></div>
|
||||
<div class="row">
|
||||
<q-btn label="Trasforma le email tutte in minuscolo" color="primary"
|
||||
@click="EseguiFunz('changeEmailLowerCase')"></q-btn>
|
||||
<br></div>
|
||||
<div class="row">
|
||||
<q-btn label="Crea Utenti Test" color="primary" @click="EseguiFunz('creaUtentiTest')"></q-btn><br>
|
||||
</div>
|
||||
<div class="row">
|
||||
<q-btn label="IMPOSTARE A TUTTI PAYPAL" color="primary" @click="EseguiFunz('ImpostaATuttiPaypal')"></q-btn><br>
|
||||
</div>
|
||||
<div class="row">
|
||||
<q-btn label="NUM_TESS A 1" color="primary" @click="EseguiFunz('numtessUno')"></q-btn><br>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
<q-btn label="Pulisci chi non è presente in Nave" color="primary" @click="EseguiFunz('pulisciNonPresenzeInNave')"></q-btn><br>
|
||||
</div>
|
||||
<div class="row">
|
||||
<q-btn label="Visualizza Lista Nave" color="primary" @click="EseguiFunz('visuListaNave')"></q-btn><br>
|
||||
</div>
|
||||
<div class="row">
|
||||
<q-btn label="Visualizza ListaIngresso" color="primary" @click="EseguiFunz('visuListaIngresso')"></q-btn><br>
|
||||
</div>
|
||||
<div class="row">
|
||||
<q-btn label="CHECK SE INSERIRE UTENTI IN Nave" color="primary" @click="EseguiFunz('checkInserimentiUtentiInNave')"></q-btn><br>
|
||||
</div>
|
||||
-->
|
||||
|
||||
<div class="row">
|
||||
<q-btn label="CORREGGI NUM_TESS" color="primary" @click="EseguiFunz('Corregginumtess')"></q-btn>
|
||||
<br>
|
||||
</div>
|
||||
<div class="row">
|
||||
<!--<q-btn label="Inizializza ListaIngresso" color="negative"
|
||||
@click="EseguiFunz('initListaIngresso')"></q-btn>
|
||||
<br>-->
|
||||
</div>
|
||||
<!--
|
||||
<div class="row">
|
||||
<q-btn label="Elimina Navi" color="negative" @click="EseguiFunz('delNavi')"></q-btn><br>
|
||||
</div>
|
||||
-->
|
||||
<!--<div class="row">
|
||||
<q-btn label="Elimina Navi non Partite" color="negative"
|
||||
@click="EseguiFunz('delNaviNoStarted')"></q-btn>
|
||||
<br>
|
||||
</div>-->
|
||||
<div class="row">
|
||||
<q-btn label="Elimina Navi Provvisorie" color="negative"
|
||||
@click="EseguiFunz('delNaviProvvisorie')"></q-btn>
|
||||
|
||||
<q-btn label="Crea ListaIngresso" color="positive" @click="EseguiFunz('creaLista')"></q-btn>
|
||||
</div>
|
||||
<div class="q-pa-sm">
|
||||
<CDateTime
|
||||
:value.sync="date_start"
|
||||
:label="$t('cal.eventstartdatetime')"
|
||||
:readonly="false">
|
||||
</CDateTime>
|
||||
<q-input v-model="numpersone" type="number" autofocus label="Num Persone to Add"
|
||||
style="width: 50px;"></q-input>
|
||||
<q-btn label="Crea Navi Provvisorie" color="primary"
|
||||
@click="EseguiFunz('creaNaviProvvisorie')"></q-btn>
|
||||
<br>
|
||||
<q-btn label="Crea Navi Definitive" color="primary" @click="EseguiFunz('creaNaviDefinitive')"></q-btn>
|
||||
</div>
|
||||
<div v-if="!incaricamento" class="row">
|
||||
<CMyFieldDb title="Riga"
|
||||
mykey="riga"
|
||||
:serv="false"
|
||||
:type="tools.FieldType.number">
|
||||
</CMyFieldDb>
|
||||
<CMyFieldDb title="Col"
|
||||
mykey="col"
|
||||
:serv="false"
|
||||
:type="tools.FieldType.number">
|
||||
</CMyFieldDb>
|
||||
<CMyFieldDb title="Riga Doni"
|
||||
mykey="rigadoni"
|
||||
:serv="false"
|
||||
:type="tools.FieldType.number">
|
||||
</CMyFieldDb>
|
||||
<CMyFieldDb title="Col Doni"
|
||||
mykey="coldoni"
|
||||
:serv="false"
|
||||
:type="tools.FieldType.number">
|
||||
</CMyFieldDb>
|
||||
<CMyFieldDb title="Visu_TEST"
|
||||
mykey="VISU_TEST"
|
||||
:serv="false"
|
||||
:type="tools.FieldType.boolean">
|
||||
</CMyFieldDb>
|
||||
<CMyFieldDb title="VISU_NAVE_BOT"
|
||||
mykey="VISU_NAVE_BOT"
|
||||
:serv="false"
|
||||
:type="tools.FieldType.boolean">
|
||||
</CMyFieldDb>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
<q-btn label="Pulisci chi non è presente in Nave" color="primary"
|
||||
@click="EseguiFunz('pulisciNonPresenzeInNave')"></q-btn>
|
||||
<br>
|
||||
</div>
|
||||
<div class="row">
|
||||
<q-btn label="Visualizza Lista Nave" color="primary" @click="EseguiFunz('visuListaNave')"></q-btn>
|
||||
|
||||
</div>
|
||||
<div class="row">
|
||||
<q-btn label="Visualizza ListaIngresso" color="primary"
|
||||
@click="EseguiFunz('visuListaIngresso')"></q-btn>
|
||||
<br>
|
||||
</div>
|
||||
<!--<div class="row">
|
||||
<q-btn label="CHECK SE INSERIRE UTENTI IN Nave" color="primary"
|
||||
@click="EseguiFunz('checkInserimentiUtentiInNave')"></q-btn>
|
||||
<br>
|
||||
</div>-->
|
||||
|
||||
<div class="row">
|
||||
<q-input v-model="riga" type="number" autofocus label="Riga" style="width: 50px;"></q-input>
|
||||
<q-input v-model="col" type="number" autofocus label="Col" style="width: 50px;"></q-input>
|
||||
<q-btn label="Visualizza Nave da 8" color="primary" @click="EseguiFunz('visuPlacca')"></q-btn>
|
||||
<br>
|
||||
<q-btn label="Visualizza Nave" color="primary" @click="EseguiFunz('visuNave')"></q-btn>
|
||||
<br>
|
||||
</div>
|
||||
<div class="row">listadonatoridelsognatore
|
||||
<q-input v-model="placca" type="textarea" autofocus label="Placca" autogrow
|
||||
style="width: 500px; height: 400px;"></q-input>
|
||||
<br>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<q-field
|
||||
stack-label
|
||||
dense
|
||||
>
|
||||
<template v-slot:control>
|
||||
<div class="self-center full-width no-outline text-center" tabindex="0">{{ris}}</div>
|
||||
</template>
|
||||
|
||||
</q-field>
|
||||
|
||||
<div class="row">
|
||||
<q-input v-model="riga" type="number" autofocus label="Riga" style="width: 50px;"></q-input>
|
||||
<q-input v-model="col" type="number" autofocus label="Col" style="width: 50px;"></q-input>
|
||||
<q-btn label="Visualizza Nave da 8" color="primary" @click="EseguiFunz('visuPlacca')"></q-btn><br>
|
||||
<q-btn label="Visualizza Nave" color="primary" @click="EseguiFunz('visuNave')"></q-btn><br>
|
||||
</div>
|
||||
<div class="row">listadonatoridelsognatore
|
||||
<q-input v-model="placca" type="textarea" autofocus label="Placca" autogrow style="width: 500px; height: 400px;"></q-input>
|
||||
<br>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<q-field
|
||||
stack-label
|
||||
dense
|
||||
>
|
||||
<template v-slot:control>
|
||||
<div class="self-center full-width no-outline text-center" tabindex="0">{{ris}}</div>
|
||||
</template>
|
||||
|
||||
</q-field>
|
||||
|
||||
</div>
|
||||
</template>
|
||||
<script lang="ts" src="./dbop.ts">
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import './dbop';
|
||||
@import './dbop';
|
||||
</style>
|
||||
|
||||
Reference in New Issue
Block a user