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:
Paolo Arena
2020-05-19 00:18:55 +02:00
parent d2bf9eb202
commit 3fb1de9b70
29 changed files with 430 additions and 269 deletions

View File

@@ -39,7 +39,7 @@
.posizione_imbarco {
font-weight: bold;
font-size: 1rem;
font-size: 0.75rem;
color: blue;
text-align: -webkit-center;
}

View File

@@ -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
}
}

View File

@@ -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) }} &nbsp;
<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">