✨✨✨ AGGIORNAMENTO SITO ✨✨✨
👉🏻 E' possibile ora visualizzare la Posizione Reale d'imbarco di quando si verrà aggiunti alle prossime Navi Definitive. Le posizioni verranno aggiornate ogni ora in automatico! 👉🏻 Ora gli imbarchi comprendono anche le navi provvisorie, pertanto è possibile annullarli oppure cambiare l'Invitante, dalla lista imbarchi. 👉🏻 E' ora possibile spostare gli invitati solo se si hanno piu' di 2 invitati per ogni Nave già partita. 👨🏻💻 Per i Tutor: 👉🏻- Sostituzioni : Cliccando su "Cerca il Primo Disponibile" vi suggerirà in automatico il primo passeggero disponibile per la sostituzione. ✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div class="row justify-between q-pa-xs-sm">
|
||||
<div style="font-size:1rem; padding-right: 8px;">
|
||||
<div :style="'font-size:'+ fontsize + ' padding-right: 8px;'">
|
||||
{{mytext}}
|
||||
</div>
|
||||
<div>
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
</div>
|
||||
<div v-if="myval" class="mlvalue text-h5 text-blue boldhigh text-h5-short"> {{ myval }} {{ textadd }}
|
||||
</div>
|
||||
<div v-if="isperc" class="cltexth5" :style="'fontsize:' + fontsize">
|
||||
<div v-if="isperc" class="cltexth5" >
|
||||
{{ myperc.toFixed(1) }}%
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -7,3 +7,10 @@
|
||||
min-width: 200px;
|
||||
}
|
||||
|
||||
.tdclass, .trclass{
|
||||
height: 20px !important;
|
||||
}
|
||||
|
||||
.q-table td {
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
@@ -52,7 +52,8 @@
|
||||
<q-btn v-if="mytable" label="" color="primary" @click="refresh" icon="search"></q-btn>
|
||||
</template>
|
||||
</q-input>
|
||||
<q-toggle v-if="mytable" v-model="canEdit" :disable="disabilita" :val="lists.MenuAction.CAN_EDIT_TABLE" class="q-mx-sm"
|
||||
<q-toggle v-if="mytable" v-model="canEdit" :disable="disabilita" :val="lists.MenuAction.CAN_EDIT_TABLE"
|
||||
class="q-mx-sm"
|
||||
:label="$t('grid.editvalues')" @input="changefuncAct"
|
||||
></q-toggle>
|
||||
|
||||
@@ -101,7 +102,8 @@
|
||||
</q-inner-loading>
|
||||
|
||||
<div class="row">
|
||||
<q-toggle v-for="(filter, index) of arrfilters" :key="index" v-model="myfilterand" :val="filter.value" :label="filter.label"></q-toggle>
|
||||
<q-toggle v-for="(filter, index) of arrfilters" :key="index" v-model="myfilterand" :val="filter.value"
|
||||
:label="filter.label"></q-toggle>
|
||||
</div>
|
||||
|
||||
|
||||
@@ -109,12 +111,12 @@
|
||||
|
||||
<template v-slot:body="props">
|
||||
|
||||
<q-tr :props="props">
|
||||
<q-td auto-width>
|
||||
<q-tr :props="props" class="trclass">
|
||||
<q-td auto-width class="tdclass">
|
||||
<q-checkbox dense v-model="props.selected"></q-checkbox>
|
||||
</q-td>
|
||||
<q-td v-for="col in mycolumns" :key="col.name" :props="props"
|
||||
v-if="colVisib.includes(col.field + col.subfield)">
|
||||
v-if="colVisib.includes(col.field + col.subfield)" class="tdclass">
|
||||
<div :class="getclrow(props.row)">
|
||||
<CMyPopupEdit :canEdit="canEdit"
|
||||
:disable="disabilita"
|
||||
@@ -130,7 +132,8 @@
|
||||
</CMyPopupEdit>
|
||||
</div>
|
||||
</q-td>
|
||||
<q-td v-for="col in mycolumns" :key="col.name" :props="props" v-if="colExtra.includes(col.name)">
|
||||
<q-td v-for="col in mycolumns" :key="col.name" :props="props" v-if="colExtra.includes(col.name)"
|
||||
class="tdclass">
|
||||
<div v-if="col.action && visCol(col)">
|
||||
<q-btn flat round color="red" :icon="col.icon" size="sm"
|
||||
@click="clickFunz(props.row, col)"></q-btn>
|
||||
|
||||
@@ -1,15 +1,21 @@
|
||||
.flag_icon{
|
||||
max-height: 40px;
|
||||
max-height: 20px;
|
||||
}
|
||||
|
||||
.label_count{
|
||||
font-size: 1.15rem;
|
||||
font-size: 1.00rem;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
|
||||
.clitemnat{
|
||||
height: 40px;
|
||||
padding: 2px 2px !important;
|
||||
.q-avatar {
|
||||
font-size: 22px;
|
||||
}
|
||||
|
||||
.q-item {
|
||||
min-height: 17px;
|
||||
}
|
||||
.clitemnat{
|
||||
height: 15px;
|
||||
padding: 0px 0px !important;
|
||||
}
|
||||
|
||||
|
||||
@@ -7,12 +7,12 @@
|
||||
enter-active-class="animazione fadeIn"
|
||||
leave-active-class="animazione fadeOut">
|
||||
<q-item v-for="(nat, index) in mydata" :key="nat._id" class="clitemnat">
|
||||
<q-item-section avatar>
|
||||
<q-item-section avatar class="clitemnat">
|
||||
<q-avatar v-if="tools.geticon(nat._id)"
|
||||
:class="tools.geticon(nat._id)" class="flag_icon">
|
||||
|
||||
</q-avatar>
|
||||
<q-avatar v-else color="primary" text-color="white" class="text-center">
|
||||
<q-avatar v-else color="primary" text-color="white" class="text-center clitemnat">
|
||||
{{ tools.capitalize(nat._id) }}
|
||||
</q-avatar>
|
||||
</q-item-section>
|
||||
|
||||
@@ -39,7 +39,7 @@
|
||||
|
||||
.posizione_imbarco {
|
||||
font-weight: bold;
|
||||
font-size: 1rem;
|
||||
font-size: 0.75rem;
|
||||
color: blue;
|
||||
text-align: -webkit-center;
|
||||
}
|
||||
|
||||
@@ -273,7 +273,7 @@ export default class CMyDashboard extends MixinUsers {
|
||||
})
|
||||
this.shownuovoviaggio = false
|
||||
}
|
||||
|
||||
|
||||
public addNuovoImbarco() {
|
||||
this.NuovoImbarco(this.dashboard.myself.username, this.invitante_username)
|
||||
}
|
||||
@@ -281,78 +281,23 @@ export default class CMyDashboard extends MixinUsers {
|
||||
public async cancellaImbarco(imbarco) {
|
||||
await tools.askConfirm(this.$q, translate('dashboard.attenzione'), translate('steps.vuoi_cancellare_imbarco'), translate('dialog.yes'), translate('dialog.no'), this, '', lists.MenuAction.CANCELLA_IMBARCO, 0, {
|
||||
param1: { ind_order: imbarco.ind_order, username: imbarco.username },
|
||||
param2: { num_tess: imbarco.num_tess }
|
||||
param2: { num_tess: imbarco.num_tess, rec: imbarco }
|
||||
})
|
||||
|
||||
}
|
||||
|
||||
public getnuminvitatistr(index, myuser) {
|
||||
let inv = myuser.numinvitati
|
||||
let invattivi = myuser.numinvitatiattivi
|
||||
public getnuminvperc(index, myrec) {
|
||||
|
||||
const step = (index - 1) * 2
|
||||
|
||||
inv -= step
|
||||
invattivi -= step
|
||||
if (inv < 0)
|
||||
inv = 0
|
||||
if (invattivi < 0)
|
||||
invattivi = 0
|
||||
if (inv > 2)
|
||||
inv = 2
|
||||
if (invattivi > 2)
|
||||
invattivi = 2
|
||||
|
||||
return invattivi + '/' + inv
|
||||
return myrec.invattivi / 2 * 100
|
||||
}
|
||||
|
||||
public getinvit(index, myuser, posiz) {
|
||||
let inv = myuser.numinvitati
|
||||
let invattivi = myuser.numinvitatiattivi
|
||||
public getcolorinvitati(index, myrec) {
|
||||
|
||||
const step = (posiz.numNaviEntrato + index) * 2
|
||||
|
||||
inv -= step
|
||||
// console.log('inv', inv, 'step = ', step)
|
||||
invattivi -= step
|
||||
if (inv < 0)
|
||||
inv = 0
|
||||
if (invattivi < 0)
|
||||
invattivi = 0
|
||||
if (inv > 2)
|
||||
inv = 2
|
||||
if (invattivi > 2)
|
||||
invattivi = 2
|
||||
|
||||
return { invattivi, inv }
|
||||
}
|
||||
|
||||
public getnuminv(index, myuser, posiz) {
|
||||
const ris = this.getinvit(index, myuser, posiz)
|
||||
|
||||
return ris.inv
|
||||
}
|
||||
|
||||
public getnuminvattivi(index, myuser, posiz) {
|
||||
const ris = this.getinvit(index, myuser, posiz)
|
||||
|
||||
return ris.invattivi
|
||||
}
|
||||
|
||||
public getnuminvperc(index, myuser, posiz) {
|
||||
const ris = this.getinvit(index, myuser, posiz)
|
||||
|
||||
return ris.invattivi / 2 * 100
|
||||
}
|
||||
|
||||
public getcolorinvitati(index, myuser, posiz) {
|
||||
|
||||
const ris = this.getinvit(index, myuser, posiz)
|
||||
if (ris.invattivi === 1)
|
||||
if (myrec.invattivi === 1)
|
||||
return 'blue'
|
||||
if (ris.invattivi === 2)
|
||||
if (myrec.invattivi === 2)
|
||||
return 'green'
|
||||
if (ris.inv === 1)
|
||||
if (myrec.inv === 1)
|
||||
return 'orange'
|
||||
}
|
||||
|
||||
@@ -361,7 +306,7 @@ export default class CMyDashboard extends MixinUsers {
|
||||
let str = index + 1 + '°'
|
||||
|
||||
if (num_tess % 2 === 0) {
|
||||
str += ' (Gratis)'
|
||||
str += ' (' + this.$t('dashboard.ritorno') + ')'
|
||||
}
|
||||
return str
|
||||
}
|
||||
@@ -409,6 +354,10 @@ export default class CMyDashboard extends MixinUsers {
|
||||
return presente
|
||||
}
|
||||
|
||||
public getvalstrinv(posiz) {
|
||||
return Math.round((posiz.numinvitatiattiviTot - posiz.numNaviEntrato * 2) - (posiz.indimbarco - 1) * 2) + '/' + Math.round((posiz.numinvitatiTot - posiz.numNaviEntrato * 2) - (posiz.indimbarco - 1) * 2)
|
||||
}
|
||||
|
||||
public isprovvisoria(mianave) {
|
||||
if (!!mianave && mianave.nave_partenza)
|
||||
return mianave.nave_partenza.provvisoria
|
||||
@@ -461,7 +410,7 @@ export default class CMyDashboard extends MixinUsers {
|
||||
|
||||
let colvera = colmin
|
||||
if (rigamin > 3) {
|
||||
for (let index = rigamin; index < riga - 1; index++){
|
||||
for (let index = rigamin; index < riga - 1; index++) {
|
||||
colvera = colvera * 2
|
||||
}
|
||||
} else {
|
||||
@@ -474,17 +423,28 @@ export default class CMyDashboard extends MixinUsers {
|
||||
|
||||
// console.log('[' + rigamin + '.' + colmin + ']', 'riga', riga, 'col', col, 'colvera', colvera)
|
||||
|
||||
if (riga < rigamin)
|
||||
riga = rigamin
|
||||
if (riga > rigamin + 6)
|
||||
riga = rigamin + 6
|
||||
|
||||
if (riga < rigamin)
|
||||
riga = 0
|
||||
|
||||
return riga
|
||||
}
|
||||
|
||||
public getval7(mianave) {
|
||||
let val = this.getmyrigaattuale(mianave)
|
||||
return val - tools.getRiganave(mianave.riga) + 1
|
||||
if (val === 0)
|
||||
return ''
|
||||
else
|
||||
return val - tools.getRiganave(mianave.riga) + 1
|
||||
}
|
||||
|
||||
public getcolornave(mianave) {
|
||||
if (mianave.num_tess % 2 !== 0)
|
||||
return 'blue'
|
||||
else
|
||||
return 'red'
|
||||
}
|
||||
|
||||
public getcolorbyval(mianave) {
|
||||
@@ -519,4 +479,19 @@ export default class CMyDashboard extends MixinUsers {
|
||||
return false
|
||||
|
||||
}
|
||||
|
||||
public getIfregalareInvitati(seluser, showregalainv) {
|
||||
if (!showregalainv)
|
||||
return false
|
||||
|
||||
let stato = true
|
||||
|
||||
if (!!this.dashboard.myself) {
|
||||
|
||||
if ((this.dashboard.myself.numNaviEntrato * 2) < this.dashboard.myself.numinvitati)
|
||||
stato = true
|
||||
}
|
||||
|
||||
return stato
|
||||
}
|
||||
}
|
||||
|
||||
@@ -159,20 +159,21 @@
|
||||
<q-spinner-gears size="50px" color="primary"/>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<div v-if="!Completato9Req && !HasNave">
|
||||
<CTitleBanner icon="person" :canopen="true" class="q-pa-xs text-center"
|
||||
:title="$t('pages.posizione_in_programmazione')" bgcolor="bg-blue"
|
||||
clcolor="text-white" mystyle=" " myclass="myshad">
|
||||
<CRequisiti :statebool="Completato7Req"
|
||||
:msgTrue="$t('steps.enter_prog_requisiti_ok') + $t('steps.enter_prog_msg')"
|
||||
:msgFalse="$t('steps.enter_prog_completa_requisiti')">
|
||||
</CRequisiti>
|
||||
</CTitleBanner>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div v-if="!!dashboard && dashboard.myself">
|
||||
<div v-if="!!dashboard && dashboard.myself && !loading">
|
||||
<div>
|
||||
<div v-if="!Completato9Req && !HasNave">
|
||||
<CTitleBanner icon="person" :canopen="true" class="q-pa-xs text-center"
|
||||
:title="$t('pages.posizione_in_programmazione')" bgcolor="bg-blue"
|
||||
clcolor="text-white" mystyle=" " myclass="myshad">
|
||||
<CRequisiti :statebool="Completato7Req"
|
||||
:msgTrue="$t('steps.enter_prog_requisiti_ok') + $t('steps.enter_prog_msg')"
|
||||
:msgFalse="$t('steps.enter_prog_completa_requisiti')">
|
||||
</CRequisiti>
|
||||
</CTitleBanner>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div v-if="dashboard.myself.qualified">
|
||||
|
||||
<CTitleBanner class=""
|
||||
@@ -185,7 +186,10 @@
|
||||
<div class="col-3 ">
|
||||
{{ $t('dashboard.posizione') }}
|
||||
</div>
|
||||
<div class="col-5 ">
|
||||
<div class="col-2 ">
|
||||
{{ $t('dashboard.data') }}
|
||||
</div>
|
||||
<div class="col-3 ">
|
||||
{{ $t('dashboard.invitante') }}
|
||||
</div>
|
||||
<div class="col-2 ">
|
||||
@@ -207,7 +211,10 @@
|
||||
mioimbarco.posiz.totposiz }}
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-5">
|
||||
<div class="col-2">
|
||||
<div>{{ tools.getstrshortDate(mioimbarco.date_added) }}</div>
|
||||
</div>
|
||||
<div class="col-3">
|
||||
<div class="posizione_imbarco">
|
||||
<CUserBadge :yourinvite="false" :showsteps="false" :showregalainv="true"
|
||||
:user="dashboard.arrusers[mioimbarco.invitante_username]" mycolor="orange"
|
||||
@@ -222,11 +229,11 @@
|
||||
<div class="col-2">
|
||||
<div class="posizione_imbarco">
|
||||
<CCardState :mytext="$t('pages.statusreg.people')"
|
||||
:myval="getnuminvattivi(index, dashboard.myself, mioimbarco.posiz)+'/'+getnuminv(index, dashboard.myself, mioimbarco.posiz)"
|
||||
:myperc="getnuminvperc(index, dashboard.myself, mioimbarco.posiz)" size="50px"
|
||||
:myval="getvalstrinv(mioimbarco.posiz)"
|
||||
:myperc="getnuminvperc(index, mioimbarco.posiz)" size="50px"
|
||||
size_mob="40px"
|
||||
fontsize="0.75rem" myclass="my-card-small-stat"
|
||||
:mycolor="getcolorinvitati(index, dashboard.myself, mioimbarco.posiz)"></CCardState>
|
||||
fontsize="0.85rem" myclass="my-card-small-stat"
|
||||
:mycolor="getcolorinvitati(index, mioimbarco.posiz)"></CCardState>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
@@ -286,7 +293,7 @@
|
||||
<q-item-section avatar style="width: 70px; font-size: 0.75rem;">
|
||||
{{ getnumtessstr(1, index) }}
|
||||
- {{ tools.getrigacolstr(mianave)}}
|
||||
<q-icon color="blue" name="fas fa-ship"></q-icon>
|
||||
<q-icon :color="getcolornave(mianave)" name="fas fa-ship"></q-icon>
|
||||
</q-item-section>
|
||||
<q-item-section>
|
||||
<q-slider
|
||||
@@ -378,7 +385,7 @@
|
||||
<q-item>
|
||||
<q-item-section avatar>
|
||||
{{tools.getlastnavestr(dashboard.lastnave) }}
|
||||
<q-icon color="blue" name="fas fa-ship"></q-icon>
|
||||
<q-icon :color="getcolornave(mianave)" name="fas fa-ship"></q-icon>
|
||||
</q-item-section>
|
||||
<q-item-section>
|
||||
<q-slider
|
||||
@@ -399,7 +406,7 @@
|
||||
<q-icon color="blue" name="fas fa-flag-checkered"></q-icon>
|
||||
</q-item-section>
|
||||
</q-item>
|
||||
<q-item>
|
||||
<q-item v-if="mianave.num_tess % 2 !== 0">
|
||||
<q-item-section avatar>
|
||||
<q-icon :color="colordono(mianave)" inverted size="sm" name="fas fa-gift"
|
||||
class="gift"></q-icon>
|
||||
@@ -419,7 +426,7 @@
|
||||
</q-item-label>
|
||||
</q-item-section>
|
||||
</q-item>
|
||||
<q-item>
|
||||
<q-item v-if="mianave.num_tess % 2 !== 0">
|
||||
<q-item-section avatar>
|
||||
<q-icon size="sm" name="fas fa-heart" color="red"></q-icon>
|
||||
</q-item-section>
|
||||
@@ -539,7 +546,7 @@
|
||||
<q-btn flat round color="white" icon="close" v-close-popup></q-btn>
|
||||
</q-toolbar>
|
||||
<q-card-section class="inset-shadow" style="padding: 4px !important;">
|
||||
<CMyRequirement :id_listaingr="id_listaingr" :myseluser="seluser" :showregalainv="showregalainv"
|
||||
<CMyRequirement :id_listaingr="id_listaingr" :myseluser="seluser" :showregalainv="getIfregalareInvitati(seluser, showregalainv)"
|
||||
:mydashboard="dashboard" :mydownline="downline" :notitle="false" @aggiorna="aggiorna"
|
||||
:ind_order_ingr="ind_order_ingr">
|
||||
|
||||
|
||||
@@ -59,6 +59,7 @@ export default class CMyNave extends MixinNave {
|
||||
public seltesto: string = ''
|
||||
public msg_tosend_user: string = ''
|
||||
public username_sostituire: string = ''
|
||||
public userfreestr: string = ''
|
||||
public MyPagination: {
|
||||
sortBy: string,
|
||||
descending: boolean,
|
||||
@@ -897,6 +898,8 @@ export default class CMyNave extends MixinNave {
|
||||
public clickseluser(rec) {
|
||||
this.seluser = rec
|
||||
this.showmsguser = true
|
||||
this.username_sostituire = ''
|
||||
this.userfreestr = ''
|
||||
}
|
||||
|
||||
public async InviaMsgAUserConfirm(msgobj, navemediatore) {
|
||||
@@ -1040,4 +1043,38 @@ export default class CMyNave extends MixinNave {
|
||||
this.seltesto = await GlobalStore.actions.GetData({ data })
|
||||
}
|
||||
|
||||
public async TrovaUserFree(username) {
|
||||
|
||||
this.ChiamaFunz(null, lists.MenuAction.DAMMI_PRIMO_UTENTE_LIBERO, null)
|
||||
|
||||
}
|
||||
|
||||
public async ChiamaFunz(username, func, data) {
|
||||
|
||||
const mydatatosave = {
|
||||
username,
|
||||
ind_order: -1,
|
||||
myfunc: func,
|
||||
notifBot: null,
|
||||
data: null
|
||||
}
|
||||
|
||||
if (!!data) {
|
||||
mydatatosave.data = data
|
||||
}
|
||||
|
||||
this.loading = true
|
||||
|
||||
GlobalStore.actions.askFunz({ mydata: mydatatosave }).then((ris) => {
|
||||
this.loading = false
|
||||
if (ris) {
|
||||
if (func === lists.MenuAction.DAMMI_PRIMO_UTENTE_LIBERO) {
|
||||
this.userfreestr = ris.username + ' (' + ris.name + ' ' + ris.surname + ')'
|
||||
this.username_sostituire = ris.username
|
||||
}
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -501,8 +501,7 @@
|
||||
</div>
|
||||
<div class="q-ma-sm text-center clBorderSteps">
|
||||
<div>TELEGRAM {{$t('ws.sitename')}} BOT {{$t('dialog.sendmsg')}} ->
|
||||
{{seluser.name }} {{
|
||||
seluser.surname }}:
|
||||
{{seluser.name }} {{ seluser.surname }}:
|
||||
</div>
|
||||
<q-input type="textarea"
|
||||
autogrow
|
||||
@@ -546,10 +545,29 @@
|
||||
|
||||
</q-input>
|
||||
|
||||
<q-toggle v-model="deleteUser" label="Elimina Utente sostituito"></q-toggle>
|
||||
<q-toggle v-model="AddImbarco" label="Aggiungi (senza spostarlo da altre Navi)"></q-toggle>
|
||||
<q-btn rounded color="warning" icon="fab fa-find"
|
||||
text-color="black"
|
||||
label="Cerca il primo Disponibile"
|
||||
@click="TrovaUserFree()"></q-btn>
|
||||
<div v-if="!!userfreestr">
|
||||
<q-field
|
||||
stack-label
|
||||
dense
|
||||
>
|
||||
<template v-slot:control>
|
||||
<div class="text-center" tabindex="0">{{userfreestr}}</div>
|
||||
</template>
|
||||
|
||||
</q-field>
|
||||
</div>
|
||||
|
||||
<q-toggle v-model="deleteUser" :label="'Elimina ' + seluser.name + ' ' + seluser.surname"></q-toggle>
|
||||
<q-toggle v-model="AddImbarco" label="Aggiungi Destinatario (senza spostarlo da altre Navi)"></q-toggle>
|
||||
<q-toggle v-model="notifBot" :label="$t('dashboard.sendnotification')"></q-toggle>
|
||||
|
||||
|
||||
|
||||
|
||||
<q-btn class="q-ma-sm" rounded color="positive" text-color="white"
|
||||
icon="fas fa-gift"
|
||||
label="Sostituisci"
|
||||
|
||||
@@ -1,114 +1,126 @@
|
||||
<template>
|
||||
<div>
|
||||
<div v-if="visustat">
|
||||
<CTitleBanner class="q-pa-xs" :title="$t('pages.status')" bgcolor="bg-primary" clcolor="text-white"
|
||||
mystyle="" myclass="myshad" canopen="true">
|
||||
<div>
|
||||
<div v-if="visustat">
|
||||
<CTitleBanner class="q-pa-xs" :title="$t('pages.status')" bgcolor="bg-primary" clcolor="text-white"
|
||||
mystyle="" myclass="myshad" canopen="true">
|
||||
|
||||
|
||||
<div class="flex flex-center">
|
||||
<div class="flex flex-center">
|
||||
|
||||
<CCardState :mytext="$t('pages.statusreg.reg')" :myval="datastat.num_reg"
|
||||
:myperc="100"></CCardState>
|
||||
<CCardState :mytext="$t('pages.statusreg.reg')" :myval="datastat.num_reg"
|
||||
:myperc="100"></CCardState>
|
||||
|
||||
<CCardState :mytext="$t('pages.statusreg.passeggeri')"
|
||||
mycolor="blue"
|
||||
size="150px"
|
||||
size_mob="130px"
|
||||
:myval="datastat.num_passeggeri"
|
||||
:myperc="100"></CCardState>
|
||||
<CCardState :mytext="$t('pages.statusreg.passeggeri')"
|
||||
mycolor="blue"
|
||||
size="150px"
|
||||
size_mob="130px"
|
||||
:myval="datastat.num_passeggeri"
|
||||
:myperc="100"></CCardState>
|
||||
|
||||
<!--<CCardState :mytext="$t('statusreg.imbarcati')"
|
||||
size="150px"
|
||||
size_mob="130px"
|
||||
mycolor="blue" :myval="datastat.num_imbarcati"
|
||||
:myperc="100"></CCardState>-->
|
||||
<!--<CCardState :mytext="$t('statusreg.imbarcati')"
|
||||
size="150px"
|
||||
size_mob="130px"
|
||||
mycolor="blue" :myval="datastat.num_imbarcati"
|
||||
:myperc="100"></CCardState>-->
|
||||
|
||||
<!--<CCardState v-if="datastat.num_part_accepted > 1"
|
||||
:mytext="$t('stat.requisiti')" :isperc="true" :myval="datastat.num_requisiti"
|
||||
:myperc="calcperc(datastat.num_requisiti, datastat.num_reg) "
|
||||
mycolor="blue"
|
||||
:textadd="` / ` + datastat.num_reg"></CCardState>-->
|
||||
<!--<CCardState v-if="datastat.num_part_accepted > 1"
|
||||
:mytext="$t('stat.requisiti')" :isperc="true" :myval="datastat.num_requisiti"
|
||||
:myperc="calcperc(datastat.num_requisiti, datastat.num_reg) "
|
||||
mycolor="blue"
|
||||
:textadd="` / ` + datastat.num_reg"></CCardState>-->
|
||||
|
||||
<div class="q-pa-xs" v-if="datastat.num_part_accepted > 1">
|
||||
<CCardStat :mytext="$t('stat.accepted')" :myval="datastat.num_part_accepted"></CCardStat>
|
||||
<CCardStat :mytext="$t('stat.zoom')" :myval="datastat.num_part_zoom"></CCardStat>
|
||||
<CCardStat :mytext="$t('stat.imbarcati')" :myval="datastat.num_imbarcati"></CCardStat>
|
||||
<!--<CCardStat :mytext="$t('stat.modalita_pagamento')"
|
||||
:myval="datastat.num_modalita_pagamento"></CCardStat>-->
|
||||
<!--<CCardStat :mytext="$t('stat.requisiti')" :myval="datastat.num_requisiti"></CCardStat>-->
|
||||
<!--<CCardStat :mytext="$t('stat.qualificati')" :myval="datastat.num_qualificati"></CCardStat>-->
|
||||
<!--<CCardStat v-if="emailnonverif" :mytext="$t('stat.email_not_verif')" :myval="emailnonverif"
|
||||
mycol="negative"></CCardStat>
|
||||
<CCardStat v-if="telegnonattivi" :mytext="$t('stat.telegram_non_attivi')"
|
||||
:myval="telegnonattivi"
|
||||
mycol="negative"></CCardStat>
|
||||
<CCardStat v-if="datastat.num_teleg_pending > 0" :mytext="$t('stat.telegram_pendenti')"
|
||||
:myval="datastat.num_teleg_pending" mycol="negative"></CCardStat>-->
|
||||
</div>
|
||||
<div class="q-pa-xs" v-if="datastat.num_part_accepted > 1">
|
||||
<CCardStat :mytext="$t('stat.imbarcati_in_attesa')" :myval="datastat.num_imbarcati"></CCardStat>
|
||||
<CCardStat :mytext="$t('stat.accepted')" :myval="datastat.num_part_accepted"></CCardStat>
|
||||
<CCardStat :mytext="$t('stat.zoom')" :myval="datastat.num_part_zoom"></CCardStat>
|
||||
<!--<CCardStat :mytext="$t('stat.modalita_pagamento')"
|
||||
:myval="datastat.num_modalita_pagamento"></CCardStat>-->
|
||||
<!--<CCardStat :mytext="$t('stat.requisiti')" :myval="datastat.num_requisiti"></CCardStat>-->
|
||||
<!--<CCardStat :mytext="$t('stat.qualificati')" :myval="datastat.num_qualificati"></CCardStat>-->
|
||||
<!--<CCardStat v-if="emailnonverif" :mytext="$t('stat.email_not_verif')" :myval="emailnonverif"
|
||||
mycol="negative"></CCardStat>
|
||||
<CCardStat v-if="telegnonattivi" :mytext="$t('stat.telegram_non_attivi')"
|
||||
:myval="telegnonattivi"
|
||||
mycol="negative"></CCardStat>
|
||||
<CCardStat v-if="datastat.num_teleg_pending > 0" :mytext="$t('stat.telegram_pendenti')"
|
||||
:myval="datastat.num_teleg_pending" mycol="negative"></CCardStat>-->
|
||||
</div>
|
||||
|
||||
<div class="column animazione">
|
||||
<div class="text-center">{{$t('pages.statusreg.newreg')}}</div>
|
||||
<transition-group name="fade" mode="out-in"
|
||||
appear
|
||||
enter-active-class="animazione fadeIn"
|
||||
leave-active-class="animazione fadeOut">
|
||||
<div class="column animazione">
|
||||
<div class="text-center">{{$t('pages.statusreg.newreg')}}</div>
|
||||
<transition-group name="fade" mode="out-in"
|
||||
appear
|
||||
enter-active-class="animazione fadeIn"
|
||||
leave-active-class="animazione fadeOut">
|
||||
|
||||
<q-item v-for="(user, index) in lastsreg" :key="user.username" class="q-mb-xs animated"
|
||||
v-ripple>
|
||||
<q-item v-for="(user, index) in lastsreg" :key="user.username" class="q-mb-xs animated"
|
||||
v-ripple>
|
||||
|
||||
<q-item-section avatar>
|
||||
<q-avatar v-if="tools.geticon(user.profile.nationality)"
|
||||
:class="tools.geticon(user.profile.nationality)">
|
||||
<q-item-section avatar>
|
||||
<q-avatar v-if="tools.geticon(user.profile.nationality)"
|
||||
:class="tools.geticon(user.profile.nationality)">
|
||||
|
||||
</q-avatar>
|
||||
<q-avatar v-else color="primary" text-color="white" class="text-center">
|
||||
{{ tools.capitalize(user.profile.nationality) }}
|
||||
</q-avatar>
|
||||
</q-item-section>
|
||||
</q-avatar>
|
||||
<q-avatar v-else color="primary" text-color="white" class="text-center">
|
||||
{{ tools.capitalize(user.profile.nationality) }}
|
||||
</q-avatar>
|
||||
</q-item-section>
|
||||
|
||||
<q-item-section>
|
||||
<q-item-label>{{ user.name }} {{ tools.firstchars_onedot(user.surname, 1) }}
|
||||
</q-item-label>
|
||||
<q-item-label caption lines="1">{{ user.username }}</q-item-label>
|
||||
</q-item-section>
|
||||
<q-item-section>
|
||||
<q-item-label>{{ user.name }} {{ tools.firstchars_onedot(user.surname, 1) }}
|
||||
</q-item-label>
|
||||
<q-item-label caption lines="1">{{ user.username }}</q-item-label>
|
||||
</q-item-section>
|
||||
|
||||
<q-item-section side>
|
||||
<q-item-label>{{ tools.getstrDateTimeShort(user.date_temp_reg) }}</q-item-label>
|
||||
<q-chip outline color="green" text-color="white" icon-right="fas fa-user-plus"
|
||||
size="xs"></q-chip>
|
||||
</q-item-section>
|
||||
</q-item>
|
||||
</transition-group>
|
||||
</div>
|
||||
<q-item-section side>
|
||||
<q-item-label>{{ tools.getstrDateTimeShort(user.date_temp_reg) }}</q-item-label>
|
||||
<q-chip outline color="green" text-color="white" icon-right="fas fa-user-plus"
|
||||
size="xs"></q-chip>
|
||||
</q-item-section>
|
||||
</q-item>
|
||||
</transition-group>
|
||||
</div>
|
||||
|
||||
<CGeoChart :mydata="datastat.arr_nations">
|
||||
<CGeoChart :mydata="datastat.arr_nations">
|
||||
|
||||
</CGeoChart>
|
||||
<div class="row text-center justify-center">
|
||||
<CListNationality :mydata="datastat.arr_nations">
|
||||
</CGeoChart>
|
||||
<div class="row q-pa-sm text-center justify-center">
|
||||
<div class="clBorderZoom">
|
||||
<CListNationality :mydata="datastat.arr_nations">
|
||||
|
||||
</CListNationality>
|
||||
<CLineChart :mydata="datastat.reg_daily" :title="$t('stat.reg_daily')">
|
||||
</CListNationality>
|
||||
</div>
|
||||
<div class="clBorderTutor">
|
||||
<CLineChart :mydata="datastat.reg_daily" :title="$t('stat.reg_daily')">
|
||||
|
||||
</CLineChart>
|
||||
<CLineChart :mydata="datastat.reg_weekly" :title="$t('stat.reg_weekly')">
|
||||
</CLineChart>
|
||||
<CLineChart :mydata="datastat.reg_weekly" :title="$t('stat.reg_weekly')">
|
||||
|
||||
</CLineChart>
|
||||
<CLineChart :mydata="datastat.reg_daily" :title="$t('stat.reg_total')"
|
||||
:offset="datastat.numreg_untilday" :sum="true"
|
||||
:mycolors="['#0b0', '#666']">
|
||||
</CLineChart>
|
||||
<CLineChart :mydata="datastat.reg_daily" :title="$t('stat.reg_total')"
|
||||
:offset="datastat.numreg_untilday" :sum="true"
|
||||
:mycolors="['#0b0', '#666']">
|
||||
|
||||
</CLineChart>
|
||||
</div>
|
||||
</div>
|
||||
</CTitleBanner>
|
||||
</CLineChart>
|
||||
</div>
|
||||
<div class="clBorderSteps">
|
||||
<CLineChart :mydata="datastat.imbarcati_daily" :title="$t('stat.imbarcati')">
|
||||
|
||||
</CLineChart>
|
||||
<CLineChart :mydata="datastat.imbarcati_weekly" :title="$t('stat.imbarcati_weekly')">
|
||||
|
||||
</CLineChart>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</CTitleBanner>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script lang="ts" src="./CStatusReg.ts">
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import './CStatusReg.scss';
|
||||
@import './CStatusReg.scss';
|
||||
</style>
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
|
||||
<q-item-section>
|
||||
<q-item-label>{{ user.name }} {{ user.surname }} {{ getindorder(user) }}<br>
|
||||
<span class="text-grey">({{ getusername(user) }}) {{ getquanti(user)}}</span>
|
||||
<span class="text-grey">({{ getusername(user) }}) <strong>{{ getquanti(user)}}</strong></span>
|
||||
<br><!--<span v-if="isextralist(user)" class="notreg">{{ $t('dashboard.notreg') }}</span>-->
|
||||
</q-item-label>
|
||||
<!--<q-item-label caption lines="1">{{ user.email }}</q-item-label>-->
|
||||
@@ -24,13 +24,13 @@
|
||||
<q-item-section side v-if="showsteps">
|
||||
<div class="row q-gutter-xs justify-center items-center">
|
||||
<div>
|
||||
<CCardState :mytext="$t('pages.statusreg.req')" :myval="getnumreq(user)" :myperc="getnumperc(user)" size="50px" size_mob="40px" fontsize="0.75rem" myclass="my-card-small-stat" :mycolor="getcolor(user)"></CCardState>
|
||||
<CCardState :mytext="$t('pages.statusreg.req')" :myval="getnumreq(user)" :myperc="getnumperc(user)" size="50px" size_mob="40px" fontsize="0.85rem" myclass="my-card-small-stat" :mycolor="getcolor(user)"></CCardState>
|
||||
</div>
|
||||
|
||||
<!--<q-icon v-if="!isextralist(user)" size="sm" name="fab fa-telegram" :color="getstatecolor(user)"></q-icon>
|
||||
<q-icon v-if="!isextralist(user)" size="sm" name="fas fa-video" :color="getzoomcolor(user)"></q-icon>-->
|
||||
<div>
|
||||
<CCardState :mytext="$t('pages.statusreg.people')" :myval="getnumpeople(user)" :myperc="getnumpercpeople(user)" size="50px" size_mob="40px" fontsize="0.75rem" myclass="my-card-small-stat" :mycolor="getcolorpeople(user)"></CCardState>
|
||||
<CCardState :mytext="$t('pages.statusreg.people')" :myval="getnumpeople(user)" :myperc="getnumpercpeople(user)" size="50px" size_mob="40px" fontsize="0.85rem" myclass="my-card-small-stat" :mycolor="getcolorpeople(user)"></CCardState>
|
||||
</div>
|
||||
<div>
|
||||
<q-btn
|
||||
|
||||
Reference in New Issue
Block a user