Aggiunto messaggio nella registrazione, dicendo che occorre avere Telegram installato.
PASSARE TUTTI I _DOC e mettergli .lean() prima dello then() -> velocizza le Query di Mongodb "Floriterapia costellazioni familiari coach motivazionale Tecniche Essene" Inserimento Gruppi: anche il comune obbligatorio Far comparire le ultime persone registrate Mettere il controllo dell'abilitazione del BOT Telegram solo dopo che conosco il suo username, e cosi gli metto anche il contatto telegram. risolto foto profilo di telegram che non si salvava in automatico tolto il controllo della email aggiunto msg se errore al server, installare altro browser.
This commit is contained in:
@@ -1,4 +1,4 @@
|
|||||||
APP_VERSION="0.3.3"
|
APP_VERSION="0.3.5"
|
||||||
SERVICE_WORKER_FILE="service-worker.js"
|
SERVICE_WORKER_FILE="service-worker.js"
|
||||||
APP_ID="13"
|
APP_ID="13"
|
||||||
DIRECTORY_LOCAL="newfreeplanet"
|
DIRECTORY_LOCAL="newfreeplanet"
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
APP_VERSION="0.3.3"
|
APP_VERSION="0.3.5"
|
||||||
SERVICE_WORKER_FILE="service-worker.js"
|
SERVICE_WORKER_FILE="service-worker.js"
|
||||||
APP_ID="13"
|
APP_ID="13"
|
||||||
DIRECTORY_LOCAL="newfreeplanet"
|
DIRECTORY_LOCAL="newfreeplanet"
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
APP_VERSION="0.3.3"
|
APP_VERSION="0.3.5"
|
||||||
SERVICE_WORKER_FILE="service-worker.js"
|
SERVICE_WORKER_FILE="service-worker.js"
|
||||||
APP_ID="12"
|
APP_ID="12"
|
||||||
DIRECTORY_LOCAL="newfreeplanet"
|
DIRECTORY_LOCAL="newfreeplanet"
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
APP_VERSION="0.3.3"
|
APP_VERSION="0.3.5"
|
||||||
SERVICE_WORKER_FILE="service-worker.js"
|
SERVICE_WORKER_FILE="service-worker.js"
|
||||||
APP_ID="13"
|
APP_ID="13"
|
||||||
DIRECTORY_LOCAL="newfreeplanet"
|
DIRECTORY_LOCAL="newfreeplanet"
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
APP_VERSION="0.3.3"
|
APP_VERSION="0.3.5"
|
||||||
SERVICE_WORKER_FILE="service-worker.js"
|
SERVICE_WORKER_FILE="service-worker.js"
|
||||||
APP_ID="13"
|
APP_ID="13"
|
||||||
DIRECTORY_LOCAL=newfreeplanet
|
DIRECTORY_LOCAL=newfreeplanet
|
||||||
|
|||||||
@@ -33,6 +33,7 @@
|
|||||||
"autoprefixer": "^10.4.2",
|
"autoprefixer": "^10.4.2",
|
||||||
"axios": "^0.26.0",
|
"axios": "^0.26.0",
|
||||||
"bcryptjs": "^2.4.3",
|
"bcryptjs": "^2.4.3",
|
||||||
|
"chart.js": "^3.7.1",
|
||||||
"core-js": "^3.21.0",
|
"core-js": "^3.21.0",
|
||||||
"crypto": "^1.0.1",
|
"crypto": "^1.0.1",
|
||||||
"date-fns": "^2.28.0",
|
"date-fns": "^2.28.0",
|
||||||
@@ -57,6 +58,7 @@
|
|||||||
"register-service-worker": "^1.7.2",
|
"register-service-worker": "^1.7.2",
|
||||||
"vee-validate": "^4.5.8",
|
"vee-validate": "^4.5.8",
|
||||||
"vue": "^3.2.31",
|
"vue": "^3.2.31",
|
||||||
|
"vue-chart-3": "^3.1.2",
|
||||||
"vue-class-component": "^8.0.0-rc.1",
|
"vue-class-component": "^8.0.0-rc.1",
|
||||||
"vue-country-code": "^1.1.3",
|
"vue-country-code": "^1.1.3",
|
||||||
"vue-echarts": "^6.0.2",
|
"vue-echarts": "^6.0.2",
|
||||||
|
|||||||
@@ -110,8 +110,6 @@ export const shared_consts = {
|
|||||||
TABLES_PERM_CHANGE_FOR_USERS: ['myskills', 'mybachecas', 'mygoods'],
|
TABLES_PERM_CHANGE_FOR_USERS: ['myskills', 'mybachecas', 'mygoods'],
|
||||||
TABLES_VISU_LISTA_USER: ['myskills', 'mybachecas', 'mygoods', 'users'],
|
TABLES_VISU_LISTA_USER: ['myskills', 'mybachecas', 'mygoods', 'users'],
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
TABLES_VISU_IMG: ['myskills', 'mybachecas', 'mygoods', 'mygroups'],
|
TABLES_VISU_IMG: ['myskills', 'mybachecas', 'mygoods', 'mygroups'],
|
||||||
TABLES_DIRECTORY_A_PARTE: ['mygroups'],
|
TABLES_DIRECTORY_A_PARTE: ['mygroups'],
|
||||||
|
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
<template>
|
<template>
|
||||||
<div v-if="numcol === 3" class="col-xs-4 col-sm-4 col-md-3 col-lg-2">
|
<div v-if="numcol === 3" class="col-xs-4 col-sm-4 col-md-3 col-lg-2">
|
||||||
<div class="q-ma-sm">
|
<div class="q-ma-sm">
|
||||||
<q-btn v-if="!small" class="mybox_3" :color="color" rounded push :to="to" v-bind="$attrs">
|
<q-btn v-if="!small" class="mybox_3" :color="color" rounded push :to="to" v-bind="$attrs" :style="tools.getbackgroundGradient(color, 180)">
|
||||||
<q-icon class="q-ma-sm" :name="icon"/>
|
<q-icon class="q-ma-sm" :name="icon"/>
|
||||||
<div class="q-ma-sm my-text_3 text-cls no-wrap"><span v-html="label"></span></div>
|
<div class="q-ma-sm my-text_3 text-cls no-wrap"><span v-html="label"></span></div>
|
||||||
</q-btn>
|
</q-btn>
|
||||||
<q-btn v-if="small" class="mybox_small" :color="color" rounded push :to="to" v-bind="$attrs">
|
<q-btn v-if="small" class="mybox_small" :color="color" rounded push :to="to" v-bind="$attrs" :style="tools.getbackgroundGradient(color, 180)">
|
||||||
<q-icon class="q-ma-sm" :name="icon" size="sm"/>
|
<q-icon class="q-ma-sm" :name="icon" size="sm"/>
|
||||||
<div class="q-ma-xs my-text-small text-cls no-wrap"><span v-html="label"></span></div>
|
<div class="q-ma-xs my-text-small text-cls no-wrap"><span v-html="label"></span></div>
|
||||||
</q-btn>
|
</q-btn>
|
||||||
@@ -13,11 +13,11 @@
|
|||||||
</div>
|
</div>
|
||||||
<div v-else class="col-xs-6 col-sm-6 col-md-4 col-lg-3">
|
<div v-else class="col-xs-6 col-sm-6 col-md-4 col-lg-3">
|
||||||
<div class="q-ma-sm">
|
<div class="q-ma-sm">
|
||||||
<q-btn v-if="!small" class="mybox" :color="color" rounded push :to="to" v-bind="$attrs">
|
<q-btn v-if="!small" class="mybox" :color="color" rounded push :to="to" v-bind="$attrs" :style="tools.getbackgroundGradient(color, 0)">
|
||||||
<q-icon class="q-ma-sm" size="3rem" :name="icon"/>
|
<q-icon class="q-ma-sm" size="3rem" :name="icon"/>
|
||||||
<div class="q-ma-sm text-h5 text-cls no-wrap"><span v-html="label"></span></div>
|
<div class="q-ma-sm text-h5 text-cls no-wrap"><span v-html="label"></span></div>
|
||||||
</q-btn>
|
</q-btn>
|
||||||
<q-btn v-if="small" class="mybox_small" :color="color" rounded push :to="to" v-bind="$attrs">
|
<q-btn v-if="small" class="mybox_small" :color="color" rounded push :to="to" v-bind="$attrs" :style="tools.getbackgroundGradient(color, 0)">
|
||||||
<q-icon class="q-ma-sm" :name="icon" size="sm"/>
|
<q-icon class="q-ma-sm" :name="icon" size="sm"/>
|
||||||
<div class="q-ma-xs my-text-small text-cls no-wrap"><span v-html="label"></span></div>
|
<div class="q-ma-xs my-text-small text-cls no-wrap"><span v-html="label"></span></div>
|
||||||
</q-btn>
|
</q-btn>
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
show-value
|
show-value
|
||||||
:font-size="fontsize"
|
:font-size="fontsize"
|
||||||
:value="myperc"
|
:value="myperc"
|
||||||
:size="getsize"
|
:size="getsize()"
|
||||||
:thickness="0.25"
|
:thickness="0.25"
|
||||||
:color="mycolor"
|
:color="mycolor"
|
||||||
track-color="grey-3"
|
track-color="grey-3"
|
||||||
|
|||||||
@@ -6,25 +6,37 @@ import { useRouter } from 'vue-router'
|
|||||||
import { useGlobalStore } from '../../store/globalStore'
|
import { useGlobalStore } from '../../store/globalStore'
|
||||||
import { useI18n } from '../../boot/i18n'
|
import { useI18n } from '../../boot/i18n'
|
||||||
|
|
||||||
|
import { shared_consts } from '@src/common/shared_vuejs'
|
||||||
|
import { costanti, IMainCard } from '@store/Modules/costanti'
|
||||||
|
|
||||||
import { tools } from '@store/Modules/tools'
|
import { tools } from '@store/Modules/tools'
|
||||||
|
|
||||||
export default defineComponent({
|
export default defineComponent({
|
||||||
name: 'CDashboard',
|
name: 'CDashboard',
|
||||||
props: {
|
props: {},
|
||||||
},
|
|
||||||
setup(props) {
|
setup(props) {
|
||||||
|
|
||||||
const userStore = useUserStore()
|
const userStore = useUserStore()
|
||||||
const $router = useRouter()
|
const $router = useRouter()
|
||||||
const globalStore = useGlobalStore()
|
const globalStore = useGlobalStore()
|
||||||
const { t } = useI18n();
|
const { t } = useI18n()
|
||||||
|
|
||||||
const calcstat = computed(() => userStore.my.calcstat ? userStore.my.calcstat : {numUsersReg: 0, numMySkills: 0, numMyGoods: 0, numMyBachecas: 0} )
|
const calcstat = computed(() => userStore.my.calcstat ? userStore.my.calcstat : {
|
||||||
|
numUsersReg: 0,
|
||||||
|
numByTab: {},
|
||||||
|
})
|
||||||
|
|
||||||
|
const visustat = computed(() => {
|
||||||
|
// @ts-ignore
|
||||||
|
return costanti.MAINCARDS.filter((rec: IMainCard) => rec.visuonstat)
|
||||||
|
})
|
||||||
|
|
||||||
return {
|
return {
|
||||||
userStore,
|
userStore,
|
||||||
tools,
|
tools,
|
||||||
calcstat
|
calcstat,
|
||||||
|
shared_consts,
|
||||||
|
visustat,
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -6,8 +6,13 @@
|
|||||||
<q-card class="no-shadow q-pa-sm">
|
<q-card class="no-shadow q-pa-sm">
|
||||||
<q-item class="q-pb-none q-pt-xs">
|
<q-item class="q-pb-none q-pt-xs">
|
||||||
<q-item-section>
|
<q-item-section>
|
||||||
<q-item-label class="text-h4" style="font-weight: 500;letter-spacing: 3px;">{{ calcstat.numUsersReg }}</q-item-label>
|
<q-item-label class="text-h4" style="font-weight: 500;letter-spacing: 3px;">{{
|
||||||
<q-item-label :class="!$q.dark.isActive? 'text-grey-7':'text-white'" style="letter-spacing: 1px;">Persone Iscritte</q-item-label>
|
calcstat.numUsersReg
|
||||||
|
}}
|
||||||
|
</q-item-label>
|
||||||
|
<q-item-label :class="!$q.dark.isActive? 'text-grey-7':'text-white'" style="letter-spacing: 1px;">Persone
|
||||||
|
Iscritte
|
||||||
|
</q-item-label>
|
||||||
</q-item-section>
|
</q-item-section>
|
||||||
|
|
||||||
<q-item-section side>
|
<q-item-section side>
|
||||||
@@ -23,110 +28,29 @@
|
|||||||
</q-item>
|
</q-item>
|
||||||
</q-card>
|
</q-card>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-3 col-lg-3 col-sm-12 col-xs-12 box_3" style="border-left: 1px solid #efefef;"
|
|
||||||
v-bind:class="{'border-top': $q.platform.is.mobile}">
|
<div v-for="(rec, index) of visustat" :class="`col-md-3 col-lg-3 col-sm-6 col-xs-6 text-` + rec.color"
|
||||||
|
style="border-left: 1px solid #efefef;" :key="index"
|
||||||
|
>
|
||||||
<q-card class="no-shadow q-pa-sm">
|
<q-card class="no-shadow q-pa-sm">
|
||||||
<q-item class="q-pb-none q-pt-xs">
|
<q-item class="q-pb-none q-pt-xs">
|
||||||
<q-item-section>
|
<q-item-section>
|
||||||
<q-item-label class="text-h4" style="font-weight: 500;letter-spacing: 3px;">{{ calcstat.numMyGoods }}</q-item-label>
|
<q-item-label class="text-h4" style="font-weight: 500;letter-spacing: 3px;">
|
||||||
<q-item-label :class="!$q.dark.isActive? 'text-grey-7':'text-white'" style="letter-spacing: 1px;">Beni</q-item-label>
|
{{ calcstat.numByTab[rec.table] }}
|
||||||
|
</q-item-label>
|
||||||
|
<q-item-label :class="!$q.dark.isActive? 'text-grey-7':'text-white'" style="letter-spacing: 1px;">
|
||||||
|
{{ rec.title }}
|
||||||
|
</q-item-label>
|
||||||
</q-item-section>
|
</q-item-section>
|
||||||
|
|
||||||
<q-item-section side>
|
<q-item-section side>
|
||||||
<q-icon name="engineering" class="box_3" size="60px"></q-icon>
|
<q-icon :name="rec.icon" :class="`text-` + rec.color" size="60px"></q-icon>
|
||||||
</q-item-section>
|
</q-item-section>
|
||||||
</q-item>
|
</q-item>
|
||||||
<q-item class="q-py-xs" style="min-height: unset">
|
<q-item class="q-py-xs" style="min-height: unset">
|
||||||
<q-item-section>
|
<q-item-section>
|
||||||
<div class="progress-base q-my-sm">
|
<div class="progress-base q-my-sm">
|
||||||
<div class="progress-bar-3" style="width:100%"></div>
|
<div class="progress-base" :style="tools.getbackgroundGradient(rec.color, 45)"></div>
|
||||||
</div>
|
|
||||||
</q-item-section>
|
|
||||||
</q-item>
|
|
||||||
</q-card>
|
|
||||||
</div>
|
|
||||||
<div class="col-md-3 col-lg-3 col-sm-12 col-xs-12 box_3" style="border-left: 1px solid #efefef;"
|
|
||||||
v-bind:class="{'border-top': $q.platform.is.mobile}">
|
|
||||||
<q-card class="no-shadow q-pa-sm">
|
|
||||||
<q-item class="q-pb-none q-pt-xs">
|
|
||||||
<q-item-section>
|
|
||||||
<q-item-label class="text-h4" style="font-weight: 500;letter-spacing: 3px;">{{ calcstat.numMySkills }}</q-item-label>
|
|
||||||
<q-item-label :class="!$q.dark.isActive? 'text-grey-7':'text-white'" style="letter-spacing: 1px;">Servizi</q-item-label>
|
|
||||||
</q-item-section>
|
|
||||||
|
|
||||||
<q-item-section side>
|
|
||||||
<q-icon name="engineering" class="box_3" size="60px"></q-icon>
|
|
||||||
</q-item-section>
|
|
||||||
</q-item>
|
|
||||||
<q-item class="q-py-xs" style="min-height: unset">
|
|
||||||
<q-item-section>
|
|
||||||
<div class="progress-base q-my-sm">
|
|
||||||
<div class="progress-bar-3" style="width:100%"></div>
|
|
||||||
</div>
|
|
||||||
</q-item-section>
|
|
||||||
</q-item>
|
|
||||||
</q-card>
|
|
||||||
</div>
|
|
||||||
<div class="col-md-3 col-lg-3 col-sm-12 col-xs-12 box_3" style="border-left: 1px solid #efefef;"
|
|
||||||
v-bind:class="{'border-top': $q.platform.is.mobile}">
|
|
||||||
<q-card class="no-shadow q-pa-sm">
|
|
||||||
<q-item class="q-pb-none q-pt-xs">
|
|
||||||
<q-item-section>
|
|
||||||
<q-item-label class="text-h4" style="font-weight: 500;letter-spacing: 3px;">{{ calcstat.numMyBachecas }}</q-item-label>
|
|
||||||
<q-item-label :class="!$q.dark.isActive? 'text-grey-7':'text-white'" style="letter-spacing: 1px;">Eventi</q-item-label>
|
|
||||||
</q-item-section>
|
|
||||||
|
|
||||||
<q-item-section side>
|
|
||||||
<q-icon name="engineering" class="box_3" size="60px"></q-icon>
|
|
||||||
</q-item-section>
|
|
||||||
</q-item>
|
|
||||||
<q-item class="q-py-xs" style="min-height: unset">
|
|
||||||
<q-item-section>
|
|
||||||
<div class="progress-base q-my-sm">
|
|
||||||
<div class="progress-bar-3" style="width:100%"></div>
|
|
||||||
</div>
|
|
||||||
</q-item-section>
|
|
||||||
</q-item>
|
|
||||||
</q-card>
|
|
||||||
</div>
|
|
||||||
<div v-if="true" class="col-md-3 col-lg-3 col-sm-12 col-xs-12 box_1">
|
|
||||||
<q-card class="no-shadow q-pa-sm">
|
|
||||||
<q-item class="q-pb-none q-pt-xs">
|
|
||||||
<q-item-section>
|
|
||||||
<q-item-label class="text-h4" style="font-weight: 500;letter-spacing: 3px;">{{ calcstat.numGroups }}</q-item-label>
|
|
||||||
<q-item-label :class="!$q.dark.isActive? 'text-grey-7':'text-white'" style="letter-spacing: 1px;">Gruppi Creati</q-item-label>
|
|
||||||
</q-item-section>
|
|
||||||
|
|
||||||
<q-item-section side>
|
|
||||||
<q-icon name="fas fa-users" class="box_1" size="60px"></q-icon>
|
|
||||||
</q-item-section>
|
|
||||||
</q-item>
|
|
||||||
<q-item class="q-py-xs" style="min-height: unset">
|
|
||||||
<q-item-section>
|
|
||||||
<div class="progress-base q-my-sm">
|
|
||||||
<div class="progress-bar-1" style="width:100%"></div>
|
|
||||||
</div>
|
|
||||||
</q-item-section>
|
|
||||||
</q-item>
|
|
||||||
</q-card>
|
|
||||||
</div>
|
|
||||||
<div v-if="false" class="col-md-3 col-lg-3 col-sm-12 col-xs-12 box_2" style="border-left: 1px solid #efefef;"
|
|
||||||
v-bind:class="{'border-top': $q.platform.is.mobile}">
|
|
||||||
<q-card class="no-shadow q-pa-sm">
|
|
||||||
<q-item class="q-pb-none q-pt-xs">
|
|
||||||
<q-item-section>
|
|
||||||
<q-item-label class="text-h4" style="font-weight: 500;letter-spacing: 3px;">0</q-item-label>
|
|
||||||
<q-item-label :class="!$q.dark.isActive? 'text-grey-7':'text-white'" style="letter-spacing: 1px;">Uscite</q-item-label>
|
|
||||||
</q-item-section>
|
|
||||||
|
|
||||||
<q-item-section side>
|
|
||||||
<q-icon name="o_account_balance_wallet" class="box_2" size="60px"></q-icon>
|
|
||||||
</q-item-section>
|
|
||||||
</q-item>
|
|
||||||
<q-item class="q-py-xs" style="min-height: unset">
|
|
||||||
<q-item-section>
|
|
||||||
<div class="progress-base q-my-sm">
|
|
||||||
<div class="progress-bar-2" style="width:100%"></div>
|
|
||||||
</div>
|
</div>
|
||||||
</q-item-section>
|
</q-item-section>
|
||||||
</q-item>
|
</q-item>
|
||||||
|
|||||||
@@ -7,5 +7,6 @@
|
|||||||
|
|
||||||
.errore{
|
.errore{
|
||||||
font-size: 1rem;
|
font-size: 1rem;
|
||||||
color: grey;
|
color: black;
|
||||||
|
background-color: white;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -11,6 +11,9 @@
|
|||||||
</template>
|
</template>
|
||||||
<span class="mybanner">Errore di Connessione al Server</span>
|
<span class="mybanner">Errore di Connessione al Server</span>
|
||||||
<p v-if="globalStore.serverMsgError" class="errore">{{globalStore.getMsgServerError()}}</p>
|
<p v-if="globalStore.serverMsgError" class="errore">{{globalStore.getMsgServerError()}}</p>
|
||||||
|
<p v-if="tools.isCurrentUrlSignUp() && globalStore.isErroreDispositivoServer()" class="errore">Se l'Errore persiste, significa che questo browser non riesce a collegarsi col Server.<br>
|
||||||
|
Soluzione: Provare ad installare un altro browser:<br>
|
||||||
|
👉🏻 Clicca per installare <a href="https://play.google.com/store/apps/details?id=com.opera.browser&hl=it&gl=IT">Opera per Android</a>. </p>
|
||||||
|
|
||||||
<q-btn
|
<q-btn
|
||||||
size="md"
|
size="md"
|
||||||
|
|||||||
0
src/components/CLineChart/CLineChart.scss
Executable file
0
src/components/CLineChart/CLineChart.scss
Executable file
120
src/components/CLineChart/CLineChart.ts
Executable file
120
src/components/CLineChart/CLineChart.ts
Executable file
@@ -0,0 +1,120 @@
|
|||||||
|
import Vue, { computed, defineComponent, onMounted, ref } from 'vue'
|
||||||
|
|
||||||
|
import { tools } from '../../store/Modules/tools'
|
||||||
|
import { useUserStore } from '@store/UserStore'
|
||||||
|
import { useRouter } from 'vue-router'
|
||||||
|
import { useGlobalStore } from '@store/globalStore'
|
||||||
|
import { useI18n } from '@/boot/i18n'
|
||||||
|
import { useQuasar } from 'quasar'
|
||||||
|
|
||||||
|
import { Chart, ChartData, ChartOptions, registerables } from 'chart.js'
|
||||||
|
|
||||||
|
import { LineChart, useLineChart } from 'vue-chart-3'
|
||||||
|
|
||||||
|
|
||||||
|
Chart.register(...registerables)
|
||||||
|
|
||||||
|
export default defineComponent({
|
||||||
|
name: 'CLineChart',
|
||||||
|
components: { LineChart },
|
||||||
|
props: {
|
||||||
|
mydata: { required: false, default: [] },
|
||||||
|
title: { required: false, default: false },
|
||||||
|
sum: { required: false, default: false },
|
||||||
|
color: { required: false, default: 'red' },
|
||||||
|
bordercolor: { required: false, default: 'red' },
|
||||||
|
mycolors: { required: false, default: null },
|
||||||
|
offset: { required: false, default: 0 },
|
||||||
|
},
|
||||||
|
setup(props, { emit }) {
|
||||||
|
|
||||||
|
const userStore = useUserStore()
|
||||||
|
const globalStore = useGlobalStore()
|
||||||
|
const { t } = useI18n()
|
||||||
|
const q = useQuasar()
|
||||||
|
|
||||||
|
const myarrlabel = ref(<any>[])
|
||||||
|
const myarrdata = ref(<any>[])
|
||||||
|
const myarrsum = ref(<any>[])
|
||||||
|
|
||||||
|
// @ts-ignore
|
||||||
|
const chartData = computed<ChartData<'line'>>(() => ({
|
||||||
|
labels: myarrlabel.value,
|
||||||
|
datasets: [
|
||||||
|
{
|
||||||
|
label: 'Totali',
|
||||||
|
data: myarrsum.value,
|
||||||
|
backgroundColor: tools.colourNameToHex('green'),
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: props.title,
|
||||||
|
data: myarrdata.value,
|
||||||
|
borderColor: tools.colourNameToHex('red'),
|
||||||
|
backgroundColor: tools.colourNameToHex(props.color),
|
||||||
|
fill: true,
|
||||||
|
},
|
||||||
|
],
|
||||||
|
}))
|
||||||
|
|
||||||
|
const options = computed<ChartOptions<'line'>>(() => ({
|
||||||
|
elements: {
|
||||||
|
line: {
|
||||||
|
tension: 0.4
|
||||||
|
}
|
||||||
|
},
|
||||||
|
interaction: {
|
||||||
|
intersect: false
|
||||||
|
},
|
||||||
|
}))
|
||||||
|
|
||||||
|
const { lineChartProps, lineChartRef } = useLineChart({
|
||||||
|
chartData,
|
||||||
|
options,
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
|
function mounted() {
|
||||||
|
myarrdata.value = []
|
||||||
|
myarrlabel.value = []
|
||||||
|
myarrsum.value = []
|
||||||
|
|
||||||
|
let somma = 0
|
||||||
|
if (props.sum)
|
||||||
|
somma = props.offset
|
||||||
|
|
||||||
|
let rec: any
|
||||||
|
|
||||||
|
let ind = 1
|
||||||
|
|
||||||
|
for (rec of props.mydata) {
|
||||||
|
if (props.sum) {
|
||||||
|
somma += rec.count
|
||||||
|
} else {
|
||||||
|
somma = rec.count
|
||||||
|
}
|
||||||
|
//myarrlabel.value.push(rec._id)
|
||||||
|
myarrlabel.value.push(ind)
|
||||||
|
myarrdata.value.push(rec.count)
|
||||||
|
myarrsum.value.push(somma)
|
||||||
|
ind++
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function getoffset() {
|
||||||
|
return props.offset
|
||||||
|
}
|
||||||
|
|
||||||
|
onMounted(mounted)
|
||||||
|
|
||||||
|
return {
|
||||||
|
tools,
|
||||||
|
getoffset,
|
||||||
|
q,
|
||||||
|
options,
|
||||||
|
lineChartProps,
|
||||||
|
lineChartRef,
|
||||||
|
myarrdata,
|
||||||
|
myarrlabel,
|
||||||
|
}
|
||||||
|
},
|
||||||
|
})
|
||||||
19
src/components/CLineChart/CLineChart.vue
Executable file
19
src/components/CLineChart/CLineChart.vue
Executable file
@@ -0,0 +1,19 @@
|
|||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
<LineChart v-bind="lineChartProps" />
|
||||||
|
<!--<DoughnutChart ref="doughnutRef" :chartData="objdata" :options="options" />-->
|
||||||
|
|
||||||
|
|
||||||
|
<!--<line-chart :width="tools.getwidthscale($q, 350, 400)+`px`" :title="title" :data="getmydata()" :offset="getoffset()"
|
||||||
|
:round="0" :colors="mycolors"></line-chart>
|
||||||
|
-->
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script lang="ts" src="./CLineChart.ts">
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
@import './CLineChart.scss';
|
||||||
|
</style>
|
||||||
1
src/components/CLineChart/index.ts
Executable file
1
src/components/CLineChart/index.ts
Executable file
@@ -0,0 +1 @@
|
|||||||
|
export {default as CLineChart} from './CLineChart.vue'
|
||||||
@@ -4,7 +4,7 @@ import { useRouter } from 'vue-router'
|
|||||||
import { useGlobalStore } from '@store/globalStore'
|
import { useGlobalStore } from '@store/globalStore'
|
||||||
import { useI18n } from '@/boot/i18n'
|
import { useI18n } from '@/boot/i18n'
|
||||||
import { tools } from '@store/Modules/tools'
|
import { tools } from '@store/Modules/tools'
|
||||||
import { costanti } from '@store/Modules/costanti'
|
import { costanti, IMainCard } from '@store/Modules/costanti'
|
||||||
import { CBigBtn } from '@/components/CBigBtn'
|
import { CBigBtn } from '@/components/CBigBtn'
|
||||||
|
|
||||||
|
|
||||||
@@ -22,11 +22,12 @@ export default defineComponent({
|
|||||||
const showInfo = ref(false)
|
const showInfo = ref(false)
|
||||||
|
|
||||||
const cardsbig = computed(() => {
|
const cardsbig = computed(() => {
|
||||||
return costanti.MAINCARDS.filter((rec: any) => !rec.small)
|
// @ts-ignore
|
||||||
|
return costanti.MAINCARDS.filter((rec: IMainCard) => !rec.small && rec.visible)
|
||||||
})
|
})
|
||||||
|
|
||||||
const cardssmall = computed(() => {
|
const cardssmall = computed(() => {
|
||||||
return costanti.MAINCARDS.filter((rec: any) => rec.small)
|
return costanti.MAINCARDS.filter((rec: any) => rec.small && rec.visible)
|
||||||
})
|
})
|
||||||
|
|
||||||
return {
|
return {
|
||||||
|
|||||||
@@ -85,6 +85,11 @@ export default defineComponent({
|
|||||||
tupe: Boolean,
|
tupe: Boolean,
|
||||||
required: false,
|
required: false,
|
||||||
default: false,
|
default: false,
|
||||||
|
},
|
||||||
|
fieldtype: {
|
||||||
|
tupe: String,
|
||||||
|
required: false,
|
||||||
|
default: '',
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
components: { CMyPopupEdit },
|
components: { CMyPopupEdit },
|
||||||
@@ -141,7 +146,7 @@ export default defineComponent({
|
|||||||
console.log('showandsel CMyFieldDb', row, col, newval)
|
console.log('showandsel CMyFieldDb', row, col, newval)
|
||||||
|
|
||||||
if (newval !== valinitial)
|
if (newval !== valinitial)
|
||||||
setValDb($q, mykey.value, newval, col.fieldtype, false, props.table, mysubkey.value, props.id, props.indrec, mysubsubkey.value)
|
setValDb($q, mykey.value, newval, props.fieldtype || col.fieldtype, false, props.table, mysubkey.value, props.id, props.indrec, mysubsubkey.value)
|
||||||
}
|
}
|
||||||
|
|
||||||
function withBorder() {
|
function withBorder() {
|
||||||
|
|||||||
@@ -28,7 +28,7 @@
|
|||||||
:field="mykey"
|
:field="mykey"
|
||||||
:subfield="mysubkey"
|
:subfield="mysubkey"
|
||||||
:mysubsubkey="mysubsubkey"
|
:mysubsubkey="mysubsubkey"
|
||||||
:type="col.fieldtype"
|
:type="fieldtype || col.fieldtype"
|
||||||
:serv="false"
|
:serv="false"
|
||||||
:disable="disable"
|
:disable="disable"
|
||||||
:jointable="jointable"
|
:jointable="jointable"
|
||||||
|
|||||||
@@ -56,6 +56,11 @@ export default defineComponent({
|
|||||||
required: false,
|
required: false,
|
||||||
default: true,
|
default: true,
|
||||||
},
|
},
|
||||||
|
need_Telegram: {
|
||||||
|
type: Boolean,
|
||||||
|
required: false,
|
||||||
|
default: false,
|
||||||
|
},
|
||||||
},
|
},
|
||||||
setup(props, { emit }) {
|
setup(props, { emit }) {
|
||||||
const $q = useQuasar()
|
const $q = useQuasar()
|
||||||
@@ -289,6 +294,7 @@ export default defineComponent({
|
|||||||
signup,
|
signup,
|
||||||
iamadult,
|
iamadult,
|
||||||
v$,
|
v$,
|
||||||
|
t,
|
||||||
allowSubmit,
|
allowSubmit,
|
||||||
myRuleEmail,
|
myRuleEmail,
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,6 +4,14 @@
|
|||||||
<p>
|
<p>
|
||||||
<logo></logo>
|
<logo></logo>
|
||||||
<CTitleBanner :title="$t('pages.SignUp')"></CTitleBanner>
|
<CTitleBanner :title="$t('pages.SignUp')"></CTitleBanner>
|
||||||
|
|
||||||
|
<q-banner
|
||||||
|
rounded
|
||||||
|
class="bg-warning text-black"
|
||||||
|
style="text-align: center;"
|
||||||
|
>
|
||||||
|
<span class="mybanner" v-html="t('pages.need_Telegram')"></span>
|
||||||
|
</q-banner>
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|||||||
0
src/components/CStatusReg/CStatusReg.scss
Executable file
0
src/components/CStatusReg/CStatusReg.scss
Executable file
172
src/components/CStatusReg/CStatusReg.ts
Executable file
172
src/components/CStatusReg/CStatusReg.ts
Executable file
@@ -0,0 +1,172 @@
|
|||||||
|
import {
|
||||||
|
computed,
|
||||||
|
defineComponent, onBeforeMount, onBeforeUnmount, onMounted, ref, toRef, toRefs, watch,
|
||||||
|
} from 'vue'
|
||||||
|
|
||||||
|
import { INotData } from '../../model/index'
|
||||||
|
import MixinBase from '@src/mixins/mixin-base'
|
||||||
|
import { CTitleBanner } from '@components'
|
||||||
|
import { CCardState } from '../CCardState'
|
||||||
|
import { CMyFieldRec } from '../CMyFieldRec'
|
||||||
|
import { CCardStat } from '../CCardStat'
|
||||||
|
import { CLineChart } from '@components'
|
||||||
|
|
||||||
|
// import { CGeoChart } from '@components'
|
||||||
|
// import { CListNationality } from '@components'
|
||||||
|
|
||||||
|
|
||||||
|
import { tools } from '@store/Modules/tools'
|
||||||
|
import { costanti } from '@costanti'
|
||||||
|
import { useGlobalStore } from '@store/globalStore'
|
||||||
|
import { useUserStore } from '@store/UserStore'
|
||||||
|
import { useI18n } from '@/boot/i18n'
|
||||||
|
|
||||||
|
export default defineComponent({
|
||||||
|
name: 'CStatusReg',
|
||||||
|
props: {},
|
||||||
|
components: { CTitleBanner, CCardState, CCardStat, CLineChart, CMyFieldRec },
|
||||||
|
setup(props, { attrs, slots, emit }) {
|
||||||
|
const { t } = useI18n()
|
||||||
|
const globalStore = useGlobalStore()
|
||||||
|
const userStore = useUserStore()
|
||||||
|
|
||||||
|
const NUMSEC_TO_POLLING = ref(300)
|
||||||
|
const MAXNUM_POLLING = ref(10)
|
||||||
|
|
||||||
|
const myloadingload = ref(false)
|
||||||
|
const eseguipolling = ref(false)
|
||||||
|
const polling = ref(<any>null)
|
||||||
|
const numpolled = ref(0)
|
||||||
|
|
||||||
|
const datastat = ref(<any>{
|
||||||
|
num_reg: 0,
|
||||||
|
num_passeggeri: 0,
|
||||||
|
num_imbarcati: 0,
|
||||||
|
num_teleg_attivo: 0,
|
||||||
|
email_non_verif: 0,
|
||||||
|
num_teleg_pending: 0,
|
||||||
|
lastsreg: [],
|
||||||
|
checkuser: { verified_email: false }
|
||||||
|
})
|
||||||
|
|
||||||
|
const visustat = computed(() => {
|
||||||
|
return datastat.value.num_reg! > 0
|
||||||
|
})
|
||||||
|
|
||||||
|
const telegnonattivi = computed(() => {
|
||||||
|
return datastat.value.num_reg! - datastat.value.num_teleg_attivo!
|
||||||
|
})
|
||||||
|
|
||||||
|
const emailnonverif = computed(() => {
|
||||||
|
return datastat.value.email_non_verif
|
||||||
|
})
|
||||||
|
|
||||||
|
const lastsreg = computed(() => {
|
||||||
|
return datastat.value.lastsreg
|
||||||
|
})
|
||||||
|
|
||||||
|
function checkifpolling() {
|
||||||
|
if (userStore.my.profile) {
|
||||||
|
if (!tools.isUserOk() && tools.appid() === tools.IDAPP_RISO)
|
||||||
|
NUMSEC_TO_POLLING.value = 10
|
||||||
|
}
|
||||||
|
|
||||||
|
if (eseguipolling.value) {
|
||||||
|
clearInterval(polling.value)
|
||||||
|
polling.value = null
|
||||||
|
if (numpolled.value > 100) {
|
||||||
|
NUMSEC_TO_POLLING.value = 60 * 5
|
||||||
|
}
|
||||||
|
if (numpolled.value < MAXNUM_POLLING.value) {
|
||||||
|
if (!polling.value) {
|
||||||
|
polling.value = setInterval(() => {
|
||||||
|
load()
|
||||||
|
numpolled.value++
|
||||||
|
}, NUMSEC_TO_POLLING.value * 1000)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function beforeDestroy() {
|
||||||
|
clearInterval(polling.value)
|
||||||
|
}
|
||||||
|
|
||||||
|
function created() {
|
||||||
|
if (tools.isManager()) {
|
||||||
|
MAXNUM_POLLING.value = 100
|
||||||
|
}
|
||||||
|
load()
|
||||||
|
}
|
||||||
|
|
||||||
|
async function load() {
|
||||||
|
// console.log('load')
|
||||||
|
myloadingload.value = true
|
||||||
|
datastat.value = await globalStore.getStatSite()
|
||||||
|
|
||||||
|
// console.log('datastat.value.lastsreg')
|
||||||
|
// console.table(datastat.value.lastsreg)
|
||||||
|
|
||||||
|
// console.log('newsstate')
|
||||||
|
// console.table('GlobalStore.state.serv_settings', GlobalStore.state.serv_settings)
|
||||||
|
|
||||||
|
eseguipolling.value = true
|
||||||
|
|
||||||
|
// console.log('eseguipolling', eseguipolling)
|
||||||
|
myloadingload.value = false
|
||||||
|
|
||||||
|
if (userStore.my) {
|
||||||
|
if (datastat.value.checkuser) {
|
||||||
|
if (datastat.value.checkuser.verified_email && !userStore.my.verified_email) {
|
||||||
|
userStore.my.verified_email = true
|
||||||
|
riaggiorna()
|
||||||
|
}
|
||||||
|
if (userStore.my.profile && datastat.value.checkuser.profile) {
|
||||||
|
if ((userStore.my.profile.teleg_id! <= 0 && datastat.value.checkuser.profile.teleg_id > 0) ||
|
||||||
|
(userStore.my.profile.teleg_id! !== datastat.value.checkuser.profile.teleg_id!)) {
|
||||||
|
userStore.my.profile.teleg_id = datastat.value.checkuser.profile.teleg_id
|
||||||
|
riaggiorna()
|
||||||
|
}
|
||||||
|
if ((userStore.my.profile.teleg_checkcode! <= 0 && datastat.value.checkuser.profile.teleg_checkcode > 0) ||
|
||||||
|
(userStore.my.profile.teleg_checkcode !== datastat.value.checkuser.profile.teleg_checkcode)) {
|
||||||
|
userStore.my.profile.teleg_checkcode = datastat.value.checkuser.profile.teleg_checkcode
|
||||||
|
riaggiorna()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
checkifpolling()
|
||||||
|
}
|
||||||
|
|
||||||
|
function riaggiorna() {
|
||||||
|
// clearInterval(polling)
|
||||||
|
// polling = null
|
||||||
|
checkifpolling()
|
||||||
|
}
|
||||||
|
|
||||||
|
function calcperc(val1: number, valmax: number) {
|
||||||
|
if (valmax > 0)
|
||||||
|
return (val1 / valmax * 100)
|
||||||
|
else
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
created()
|
||||||
|
|
||||||
|
onBeforeUnmount(beforeDestroy)
|
||||||
|
|
||||||
|
return {
|
||||||
|
calcperc,
|
||||||
|
riaggiorna,
|
||||||
|
visustat,
|
||||||
|
telegnonattivi,
|
||||||
|
emailnonverif,
|
||||||
|
lastsreg,
|
||||||
|
datastat,
|
||||||
|
tools,
|
||||||
|
costanti,
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
})
|
||||||
112
src/components/CStatusReg/CStatusReg.vue
Executable file
112
src/components/CStatusReg/CStatusReg.vue
Executable file
@@ -0,0 +1,112 @@
|
|||||||
|
<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 class="flex flex-center">
|
||||||
|
|
||||||
|
<CCardState :mytext="$t('pages.statusreg.reg')" :myval="datastat.num_reg"
|
||||||
|
:myperc="100"></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.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">
|
||||||
|
|
||||||
|
<q-item v-for="(user, index) in lastsreg" :key="index" 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-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 lines="1">
|
||||||
|
<CMyFieldRec
|
||||||
|
table="users"
|
||||||
|
:id="user._id"
|
||||||
|
:rec="user"
|
||||||
|
field="username"
|
||||||
|
:canEdit="false"
|
||||||
|
:canModify="false"
|
||||||
|
:type="costanti.FieldType.username_chip">
|
||||||
|
</CMyFieldRec>
|
||||||
|
|
||||||
|
</q-item-label>
|
||||||
|
</q-item-section>
|
||||||
|
|
||||||
|
<q-item-section side>
|
||||||
|
<q-item-label>{{ tools.getstrDateTimeShort(user.date_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>-->
|
||||||
|
|
||||||
|
<div class="row q-pa-sm text-center justify-center">
|
||||||
|
<!--
|
||||||
|
<div class="clBorderZoom">
|
||||||
|
<CListNationality :mydata="datastat.arr_nations">
|
||||||
|
|
||||||
|
</CListNationality>
|
||||||
|
</div>-->
|
||||||
|
<div class="clBorderTutor">
|
||||||
|
<CLineChart :mydata="datastat.reg_daily" :title="$t('stat.reg_daily')" color="blue" bordercolor="blue" :sum="true">
|
||||||
|
|
||||||
|
</CLineChart>
|
||||||
|
|
||||||
|
<!--<CLineChart :mydata="datastat.reg_weekly" :title="$t('stat.reg_weekly')" color="blue" bordercolor="green" :sum="true">
|
||||||
|
|
||||||
|
</CLineChart>-->
|
||||||
|
|
||||||
|
|
||||||
|
<!--<CLineChart :mydata="datastat.reg_daily" :title="$t('stat.reg_total')"
|
||||||
|
:offset="datastat.numreg_untilday" :sum="true"
|
||||||
|
:mycolors="['#0b0', '#666']">
|
||||||
|
|
||||||
|
</CLineChart>-->
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</CTitleBanner>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script lang="ts" src="./CStatusReg.ts">
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
@import './CStatusReg.scss';
|
||||||
|
</style>
|
||||||
1
src/components/CStatusReg/index.ts
Executable file
1
src/components/CStatusReg/index.ts
Executable file
@@ -0,0 +1 @@
|
|||||||
|
export {default as CStatusReg} from './CStatusReg.vue'
|
||||||
@@ -4,9 +4,9 @@
|
|||||||
|
|
||||||
</CVerifyTelegram>
|
</CVerifyTelegram>
|
||||||
|
|
||||||
<CVerifyEmail v-if="!tools.isEmailVerified() && !tools.TelegVerificato()">
|
<!--<CVerifyEmail v-if="!tools.isEmailVerified() && !tools.TelegVerificato()">
|
||||||
|
|
||||||
</CVerifyEmail>
|
</CVerifyEmail>-->
|
||||||
<div v-if="tools.isTelegOk()" class="centeritems">
|
<div v-if="tools.isTelegOk()" class="centeritems">
|
||||||
<q-banner inline-actions rounded class="bg-orange text-black">
|
<q-banner inline-actions rounded class="bg-orange text-black">
|
||||||
<template v-slot:avatar>
|
<template v-slot:avatar>
|
||||||
|
|||||||
@@ -21,7 +21,7 @@
|
|||||||
:href="tools.getLinkBotTelegram()" target="_blank"></q-btn>
|
:href="tools.getLinkBotTelegram()" target="_blank"></q-btn>
|
||||||
<br>
|
<br>
|
||||||
</div>
|
</div>
|
||||||
<strong>{{ $t('components.authentication.telegram.ifclose', {botname: tools.getBotName() })}}</strong>
|
<strong v-if="!tools.TelegCode()">{{ $t('components.authentication.telegram.ifclose', {botname: tools.getBotName() })}}</strong>
|
||||||
<div class="q-my-sm">
|
<div class="q-my-sm">
|
||||||
<!--<q-img src="images/ayni_bot.jpg" class="" :alt="$t('ws.sitename')" style="height: 100px; width: 250px;">
|
<!--<q-img src="images/ayni_bot.jpg" class="" :alt="$t('ws.sitename')" style="height: 100px; width: 250px;">
|
||||||
</q-img>-->
|
</q-img>-->
|
||||||
|
|||||||
@@ -28,6 +28,8 @@ export * from './CTitle'
|
|||||||
export * from './CTitleBanner'
|
export * from './CTitleBanner'
|
||||||
export * from './Footer'
|
export * from './Footer'
|
||||||
export * from './FormNewsletter'
|
export * from './FormNewsletter'
|
||||||
|
export * from './CLineChart'
|
||||||
|
export * from './CStatusReg'
|
||||||
export * from './Header'
|
export * from './Header'
|
||||||
export * from './logo'
|
export * from './logo'
|
||||||
export * from './testpao'
|
export * from './testpao'
|
||||||
|
|||||||
@@ -45,6 +45,7 @@ const msg_website_it = {
|
|||||||
presentazione2: 'Presentazione',
|
presentazione2: 'Presentazione',
|
||||||
invita: 'Invita Persone',
|
invita: 'Invita Persone',
|
||||||
SignUp: 'Nuova Registrazione',
|
SignUp: 'Nuova Registrazione',
|
||||||
|
need_Telegram: 'Per poter utilizzare la Piattaforma occorre avere Telegram installato.<br><a href="https://play.google.com/store/apps/details?id=org.telegram.messenger" target="_blank">Clicca qui per scaricarlo</a>',
|
||||||
SignUpIscrizione: 'Diventa Socio CNM',
|
SignUpIscrizione: 'Diventa Socio CNM',
|
||||||
SignUp_alreadylista: 'Registrazione per quelli che erano già nella lista di Notevole (del 2019) !',
|
SignUp_alreadylista: 'Registrazione per quelli che erano già nella lista di Notevole (del 2019) !',
|
||||||
SignUp2: 'Registrazione',
|
SignUp2: 'Registrazione',
|
||||||
|
|||||||
@@ -32,9 +32,7 @@ export interface IMyGroup {
|
|||||||
|
|
||||||
export interface ICalcStat {
|
export interface ICalcStat {
|
||||||
numUsersReg: number
|
numUsersReg: number
|
||||||
numMySkills: number
|
numByTab: {}
|
||||||
numMyBachecas: number
|
|
||||||
numGroups: number
|
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface IUserProfile {
|
export interface IUserProfile {
|
||||||
|
|||||||
@@ -9,6 +9,7 @@ import { CDashboard } from '@/components/CDashboard'
|
|||||||
import { CChartMap } from '@src/components/CChartMap'
|
import { CChartMap } from '@src/components/CChartMap'
|
||||||
import { Footer } from '@src/components/Footer'
|
import { Footer } from '@src/components/Footer'
|
||||||
import { CUserNonVerif } from '@/components/CUserNonVerif'
|
import { CUserNonVerif } from '@/components/CUserNonVerif'
|
||||||
|
import { CStatusReg } from '@/components/CStatusReg'
|
||||||
import { CCopyBtn } from '@/components/CCopyBtn'
|
import { CCopyBtn } from '@/components/CCopyBtn'
|
||||||
import { CCheckIfIsLogged } from '@/components/CCheckIfIsLogged'
|
import { CCheckIfIsLogged } from '@/components/CCheckIfIsLogged'
|
||||||
import { CMapsEsempio } from '@src/components/CMapsEsempio'
|
import { CMapsEsempio } from '@src/components/CMapsEsempio'
|
||||||
@@ -21,7 +22,7 @@ import MixinUsers from '@/mixins/mixin-users'
|
|||||||
|
|
||||||
export default defineComponent({
|
export default defineComponent({
|
||||||
name: 'mainview',
|
name: 'mainview',
|
||||||
components: { CSkill, CChartMap, CMapsEsempio, CDashboard, CUserNonVerif, CMainView, CCopyBtn, Footer, CCheckIfIsLogged },
|
components: { CSkill, CChartMap, CMapsEsempio, CDashboard, CUserNonVerif, CMainView, CCopyBtn, Footer, CCheckIfIsLogged, CStatusReg },
|
||||||
setup() {
|
setup() {
|
||||||
const globalStore = useGlobalStore()
|
const globalStore = useGlobalStore()
|
||||||
const userStore = useUserStore()
|
const userStore = useUserStore()
|
||||||
|
|||||||
@@ -38,6 +38,10 @@
|
|||||||
|
|
||||||
</CCopyBtn>
|
</CCopyBtn>
|
||||||
|
|
||||||
|
<CStatusReg>
|
||||||
|
|
||||||
|
</CStatusReg>
|
||||||
|
|
||||||
<div>Versione: {{tools.getvers()}}</div>
|
<div>Versione: {{tools.getvers()}}</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -395,7 +395,6 @@ const msg_enUs = {
|
|||||||
reflink: 'Links to share to your friends:',
|
reflink: 'Links to share to your friends:',
|
||||||
linkzoom: 'Link to enter in Zoom',
|
linkzoom: 'Link to enter in Zoom',
|
||||||
page_title: 'Registrazione',
|
page_title: 'Registrazione',
|
||||||
incorso: 'Registration please wait...',
|
|
||||||
made_gift: 'Donated',
|
made_gift: 'Donated',
|
||||||
note: 'Note',
|
note: 'Note',
|
||||||
incorso: 'Registrazione in corso...',
|
incorso: 'Registrazione in corso...',
|
||||||
@@ -409,7 +408,6 @@ const msg_enUs = {
|
|||||||
cellreg: 'Cellulare con cui ti eri registrato',
|
cellreg: 'Cellulare con cui ti eri registrato',
|
||||||
nationality: 'Nationality',
|
nationality: 'Nationality',
|
||||||
email_paypal: 'Email Paypal',
|
email_paypal: 'Email Paypal',
|
||||||
nationality: 'Paese di Nascita',
|
|
||||||
payeer_id: 'Payeer ID',
|
payeer_id: 'Payeer ID',
|
||||||
advcash_id: 'Advanced Cash Email',
|
advcash_id: 'Advanced Cash Email',
|
||||||
revolut: 'Revolut',
|
revolut: 'Revolut',
|
||||||
|
|||||||
@@ -1,3 +1,15 @@
|
|||||||
|
export interface IMainCard {
|
||||||
|
visible: boolean
|
||||||
|
title: string
|
||||||
|
to?: string
|
||||||
|
icon?: string
|
||||||
|
color: string
|
||||||
|
hint?: string
|
||||||
|
table: string
|
||||||
|
visuonstat?: boolean,
|
||||||
|
small?: boolean,
|
||||||
|
}
|
||||||
|
|
||||||
export const costanti = {
|
export const costanti = {
|
||||||
AdType: {
|
AdType: {
|
||||||
OFFRO: 1,
|
OFFRO: 1,
|
||||||
@@ -19,83 +31,112 @@ export const costanti = {
|
|||||||
|
|
||||||
MAINCARDS: [
|
MAINCARDS: [
|
||||||
{
|
{
|
||||||
|
visible: true,
|
||||||
title: ' Beni ',
|
title: ' Beni ',
|
||||||
to: '/goods',
|
to: '/goods',
|
||||||
icon: 'fas fa-tshirt',
|
icon: 'fas fa-tshirt',
|
||||||
color: 'indigo',
|
color: 'indigo-6',
|
||||||
hint: '',
|
hint: '',
|
||||||
table: 'mygoods',
|
table: 'mygoods',
|
||||||
|
visuonstat: true,
|
||||||
|
small: false,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
visible: true,
|
||||||
title: 'Servizi',
|
title: 'Servizi',
|
||||||
to: '/services',
|
to: '/services',
|
||||||
icon: 'fas fa-house-user',
|
icon: 'fas fa-house-user',
|
||||||
color: 'red',
|
color: 'red-6',
|
||||||
hint: '',
|
hint: '',
|
||||||
table: 'myskills',
|
table: 'myskills',
|
||||||
|
visuonstat: true,
|
||||||
|
small: false,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
visible: true,
|
||||||
title: 'Mobilità',
|
title: 'Mobilità',
|
||||||
to: '/places',
|
to: '/places',
|
||||||
icon: 'fas fa-taxi',
|
icon: 'fas fa-taxi',
|
||||||
color: 'lime-7',
|
color: 'lime-6',
|
||||||
textcolor: '',
|
textcolor: '',
|
||||||
hint: '',
|
hint: '',
|
||||||
disable: true,
|
disable: true,
|
||||||
|
small: false,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
visible: true,
|
||||||
title: 'Scuola',
|
title: 'Scuola',
|
||||||
to: '/school',
|
to: '/school',
|
||||||
icon: 'fas fa-book-open',
|
icon: 'fas fa-book-open',
|
||||||
color: 'orange',
|
color: 'orange-6',
|
||||||
hint: '',
|
hint: '',
|
||||||
disable: true,
|
disable: true,
|
||||||
|
small: false,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
visible: true,
|
||||||
title: 'Eventi',
|
title: 'Eventi',
|
||||||
to: '/events',
|
to: '/events',
|
||||||
icon: 'event',
|
icon: 'event',
|
||||||
color: 'green',
|
color: 'green-6',
|
||||||
hint: 'eventi, last minute, offerte di lavoro',
|
hint: 'eventi, last minute, offerte di lavoro',
|
||||||
disable: false,
|
disable: false,
|
||||||
table: 'mybachecas',
|
table: 'mybachecas',
|
||||||
|
visuonstat: true,
|
||||||
|
small: false,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
visible: true,
|
||||||
title: 'Luoghi',
|
title: 'Luoghi',
|
||||||
to: '/places',
|
to: '/places',
|
||||||
icon: 'fas fa-map-marker-alt',
|
icon: 'fas fa-map-marker-alt',
|
||||||
color: 'blue',
|
color: 'blue-6',
|
||||||
hint: '',
|
hint: '',
|
||||||
disable: true,
|
disable: true,
|
||||||
|
small: false,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
visible: true,
|
||||||
title: 'Tue Idee',
|
title: 'Tue Idee',
|
||||||
to: '/ideas',
|
to: '/ideas',
|
||||||
icon: 'fas fa-lightbulb',
|
icon: 'fas fa-lightbulb',
|
||||||
color: 'red-7',
|
color: 'red-6',
|
||||||
textcolor: '',
|
textcolor: '',
|
||||||
hint: '',
|
hint: '',
|
||||||
disable: true,
|
disable: true,
|
||||||
small: true,
|
small: true,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
visible: true,
|
||||||
title: 'Help',
|
title: 'Help',
|
||||||
to: '/help',
|
to: '/help',
|
||||||
icon: 'fas fa-users',
|
icon: 'fas fa-users',
|
||||||
color: 'green-7',
|
color: 'green-6',
|
||||||
hint: '',
|
hint: '',
|
||||||
disable: true,
|
disable: true,
|
||||||
small: true,
|
small: true,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
visible: true,
|
||||||
title: 'Social',
|
title: 'Social',
|
||||||
to: '/socialising',
|
to: '/socialising',
|
||||||
icon: 'fas fa-users',
|
icon: 'fas fa-users',
|
||||||
color: 'blue-7',
|
color: 'blue-6',
|
||||||
hint: '',
|
hint: '',
|
||||||
disable: true,
|
disable: true,
|
||||||
small: true,
|
small: true,
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
visible: false,
|
||||||
|
title: 'Gruppi',
|
||||||
|
to: '',
|
||||||
|
icon: 'fas fa-users',
|
||||||
|
color: 'blue-6',
|
||||||
|
hint: '',
|
||||||
|
disable: true,
|
||||||
|
small: true,
|
||||||
|
visuonstat: true,
|
||||||
|
},
|
||||||
],
|
],
|
||||||
|
|
||||||
BINARY_CHECK: 1,
|
BINARY_CHECK: 1,
|
||||||
|
|||||||
@@ -4252,6 +4252,9 @@ export const tools = {
|
|||||||
'black': '#000000',
|
'black': '#000000',
|
||||||
'blanchedalmond': '#ffebcd',
|
'blanchedalmond': '#ffebcd',
|
||||||
'blue': '#0000ff',
|
'blue': '#0000ff',
|
||||||
|
'blue-3': '#90caf9',
|
||||||
|
'blue-4': '#64b5f6',
|
||||||
|
'blue-6': '#2196f3',
|
||||||
'blueviolet': '#8a2be2',
|
'blueviolet': '#8a2be2',
|
||||||
'brown': '#a52a2a',
|
'brown': '#a52a2a',
|
||||||
'burlywood': '#deb887',
|
'burlywood': '#deb887',
|
||||||
@@ -4294,10 +4297,16 @@ export const tools = {
|
|||||||
'goldenrod': '#daa520',
|
'goldenrod': '#daa520',
|
||||||
'gray': '#808080',
|
'gray': '#808080',
|
||||||
'green': '#008000',
|
'green': '#008000',
|
||||||
|
'green-3': '#a5d6a7',
|
||||||
|
'green-4': '#81c784',
|
||||||
|
'green-6': '#4caf50',
|
||||||
'greenyellow': '#adff2f',
|
'greenyellow': '#adff2f',
|
||||||
'honeydew': '#f0fff0',
|
'honeydew': '#f0fff0',
|
||||||
'hotpink': '#ff69b4',
|
'hotpink': '#ff69b4',
|
||||||
'indianred ': '#cd5c5c',
|
'indianred ': '#cd5c5c',
|
||||||
|
'indigo-3': '#9fa8da',
|
||||||
|
'indigo-4': '#7986cb',
|
||||||
|
'indigo-6': '#3f51b5',
|
||||||
'indigo': '#4b0082',
|
'indigo': '#4b0082',
|
||||||
'ivory': '#fffff0',
|
'ivory': '#fffff0',
|
||||||
'khaki': '#f0e68c',
|
'khaki': '#f0e68c',
|
||||||
@@ -4319,6 +4328,9 @@ export const tools = {
|
|||||||
'lightsteelblue': '#b0c4de',
|
'lightsteelblue': '#b0c4de',
|
||||||
'lightyellow': '#ffffe0',
|
'lightyellow': '#ffffe0',
|
||||||
'lime': '#00ff00',
|
'lime': '#00ff00',
|
||||||
|
'lime-3': '#e6ee9c',
|
||||||
|
'lime-4': '#dce775',
|
||||||
|
'lime-6': '#cddc39',
|
||||||
'limegreen': '#32cd32',
|
'limegreen': '#32cd32',
|
||||||
'linen': '#faf0e6',
|
'linen': '#faf0e6',
|
||||||
'magenta': '#ff00ff',
|
'magenta': '#ff00ff',
|
||||||
@@ -4342,6 +4354,9 @@ export const tools = {
|
|||||||
'olive': '#808000',
|
'olive': '#808000',
|
||||||
'olivedrab': '#6b8e23',
|
'olivedrab': '#6b8e23',
|
||||||
'orange': '#ffa500',
|
'orange': '#ffa500',
|
||||||
|
'orange-3': '#ffcc80',
|
||||||
|
'orange-4': '#ffb74d',
|
||||||
|
'orange-6': '#ff9800',
|
||||||
'orangered': '#ff4500',
|
'orangered': '#ff4500',
|
||||||
'orchid': '#da70d6',
|
'orchid': '#da70d6',
|
||||||
'palegoldenrod': '#eee8aa',
|
'palegoldenrod': '#eee8aa',
|
||||||
@@ -4357,6 +4372,9 @@ export const tools = {
|
|||||||
'purple': '#800080',
|
'purple': '#800080',
|
||||||
'rebeccapurple': '#663399',
|
'rebeccapurple': '#663399',
|
||||||
'red': '#ff0000',
|
'red': '#ff0000',
|
||||||
|
'red-3': '#ef9a9a',
|
||||||
|
'red-4': '#e57373',
|
||||||
|
'red-6': '#f44336',
|
||||||
'rosybrown': '#bc8f8f',
|
'rosybrown': '#bc8f8f',
|
||||||
'royalblue': '#4169e1',
|
'royalblue': '#4169e1',
|
||||||
'saddlebrown': '#8b4513',
|
'saddlebrown': '#8b4513',
|
||||||
@@ -5227,6 +5245,25 @@ export const tools = {
|
|||||||
globalStore.rightDrawerOpen = true
|
globalStore.rightDrawerOpen = true
|
||||||
},
|
},
|
||||||
|
|
||||||
|
getbackgroundGradient(color: string, degree: number) {
|
||||||
|
const mycol = tools.colourNameToHex(color)
|
||||||
|
const arrcol = color.split('-')
|
||||||
|
let newcol = arrcol[0] + '-4'
|
||||||
|
const mycolchiaro = tools.colourNameToHex(newcol)
|
||||||
|
|
||||||
|
return 'background: ' + mycol +
|
||||||
|
' background: -webkit-linear-gradient('+degree+'deg, ' + mycol + ', ' + mycolchiaro + ') !important; ' +
|
||||||
|
' background: linear-gradient('+degree+'deg, ' + mycol + ', ' + mycolchiaro + ') !important;'
|
||||||
|
},
|
||||||
|
|
||||||
|
getCurrentUrl(){
|
||||||
|
return window.location.pathname
|
||||||
|
},
|
||||||
|
|
||||||
|
isCurrentUrlSignUp(){
|
||||||
|
return window.location.pathname.indexOf('signup') >= 0
|
||||||
|
},
|
||||||
|
|
||||||
|
|
||||||
// getLocale() {
|
// getLocale() {
|
||||||
// if (navigator.languages && navigator.languages.length > 0) {
|
// if (navigator.languages && navigator.languages.length > 0) {
|
||||||
|
|||||||
@@ -908,6 +908,10 @@ export const useGlobalStore = defineStore('GlobalStore', {
|
|||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
|
isErroreDispositivoServer() {
|
||||||
|
return this.serverMsgError.code === -2
|
||||||
|
},
|
||||||
|
|
||||||
async saveSubRec(mydata: any) {
|
async saveSubRec(mydata: any) {
|
||||||
// console.log('saveTable', mydata)
|
// console.log('saveTable', mydata)
|
||||||
const userStore = useUserStore()
|
const userStore = useUserStore()
|
||||||
@@ -1464,11 +1468,11 @@ export const useGlobalStore = defineStore('GlobalStore', {
|
|||||||
|
|
||||||
return Api.SendReq('/site/load', 'POST', paramquery)
|
return Api.SendReq('/site/load', 'POST', paramquery)
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
console.log('res', res)
|
// console.log('datastat', res)
|
||||||
this.datastat = res.data.datastat
|
this.datastat = res.data.datastat
|
||||||
return this.datastat
|
return this.datastat
|
||||||
}).catch((error) => {
|
}).catch((error) => {
|
||||||
return null
|
return {}
|
||||||
})
|
})
|
||||||
|
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
<template>
|
<template>
|
||||||
<q-page padding class="signup">
|
<q-page padding class="signup">
|
||||||
<CSignUp :showcell="false" :showaportador="true" :show_namesurname="false">
|
<CSignUp :showcell="false" :showaportador="true" :show_namesurname="false" :need_Telegram="true">
|
||||||
|
|
||||||
</CSignUp>
|
</CSignUp>
|
||||||
</q-page>
|
</q-page>
|
||||||
|
|||||||
31
yarn.lock
31
yarn.lock
@@ -2182,7 +2182,7 @@
|
|||||||
dependencies:
|
dependencies:
|
||||||
"@vue/shared" "3.2.31"
|
"@vue/shared" "3.2.31"
|
||||||
|
|
||||||
"@vue/runtime-core@3.2.31":
|
"@vue/runtime-core@3.2.31", "@vue/runtime-core@latest":
|
||||||
version "3.2.31"
|
version "3.2.31"
|
||||||
resolved "https://registry.yarnpkg.com/@vue/runtime-core/-/runtime-core-3.2.31.tgz#9d284c382f5f981b7a7b5971052a1dc4ef39ac7a"
|
resolved "https://registry.yarnpkg.com/@vue/runtime-core/-/runtime-core-3.2.31.tgz#9d284c382f5f981b7a7b5971052a1dc4ef39ac7a"
|
||||||
integrity sha512-Kcog5XmSY7VHFEMuk4+Gap8gUssYMZ2+w+cmGI6OpZWYOEIcbE0TPzzPHi+8XTzAgx1w/ZxDFcXhZeXN5eKWsA==
|
integrity sha512-Kcog5XmSY7VHFEMuk4+Gap8gUssYMZ2+w+cmGI6OpZWYOEIcbE0TPzzPHi+8XTzAgx1w/ZxDFcXhZeXN5eKWsA==
|
||||||
@@ -2190,7 +2190,7 @@
|
|||||||
"@vue/reactivity" "3.2.31"
|
"@vue/reactivity" "3.2.31"
|
||||||
"@vue/shared" "3.2.31"
|
"@vue/shared" "3.2.31"
|
||||||
|
|
||||||
"@vue/runtime-dom@3.2.31":
|
"@vue/runtime-dom@3.2.31", "@vue/runtime-dom@latest":
|
||||||
version "3.2.31"
|
version "3.2.31"
|
||||||
resolved "https://registry.yarnpkg.com/@vue/runtime-dom/-/runtime-dom-3.2.31.tgz#79ce01817cb3caf2c9d923f669b738d2d7953eff"
|
resolved "https://registry.yarnpkg.com/@vue/runtime-dom/-/runtime-dom-3.2.31.tgz#79ce01817cb3caf2c9d923f669b738d2d7953eff"
|
||||||
integrity sha512-N+o0sICVLScUjfLG7u9u5XCjvmsexAiPt17GNnaWHJUfsKed5e85/A3SWgKxzlxx2SW/Hw7RQxzxbXez9PtY3g==
|
integrity sha512-N+o0sICVLScUjfLG7u9u5XCjvmsexAiPt17GNnaWHJUfsKed5e85/A3SWgKxzlxx2SW/Hw7RQxzxbXez9PtY3g==
|
||||||
@@ -3503,6 +3503,11 @@ chardet@^0.7.0:
|
|||||||
resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e"
|
resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e"
|
||||||
integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==
|
integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==
|
||||||
|
|
||||||
|
chart.js@^3.7.1:
|
||||||
|
version "3.7.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/chart.js/-/chart.js-3.7.1.tgz#0516f690c6a8680c6c707e31a4c1807a6f400ada"
|
||||||
|
integrity sha512-8knRegQLFnPQAheZV8MjxIXc5gQEfDFD897BJgv/klO/vtIyFFmgMXrNfgrXpbTr/XbTturxRgxIXx/Y+ASJBA==
|
||||||
|
|
||||||
chokidar@3.5.3, "chokidar@>=3.0.0 <4.0.0", chokidar@^3.4.2, chokidar@^3.5.3:
|
chokidar@3.5.3, "chokidar@>=3.0.0 <4.0.0", chokidar@^3.4.2, chokidar@^3.5.3:
|
||||||
version "3.5.3"
|
version "3.5.3"
|
||||||
resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd"
|
resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd"
|
||||||
@@ -4337,6 +4342,11 @@ csstype@^2.6.8:
|
|||||||
resolved "https://registry.yarnpkg.com/csstype/-/csstype-2.6.19.tgz#feeb5aae89020bb389e1f63669a5ed490e391caa"
|
resolved "https://registry.yarnpkg.com/csstype/-/csstype-2.6.19.tgz#feeb5aae89020bb389e1f63669a5ed490e391caa"
|
||||||
integrity sha512-ZVxXaNy28/k3kJg0Fou5MiYpp88j7H9hLZp8PDC3jV0WFjfH5E9xHb56L0W59cPbKbcHXeP4qyT8PrHp8t6LcQ==
|
integrity sha512-ZVxXaNy28/k3kJg0Fou5MiYpp88j7H9hLZp8PDC3jV0WFjfH5E9xHb56L0W59cPbKbcHXeP4qyT8PrHp8t6LcQ==
|
||||||
|
|
||||||
|
csstype@latest:
|
||||||
|
version "3.0.10"
|
||||||
|
resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.0.10.tgz#2ad3a7bed70f35b965707c092e5f30b327c290e5"
|
||||||
|
integrity sha512-2u44ZG2OcNUO9HDp/Jl8C07x6pU/eTR3ncV91SiK3dhG9TWvRVsCoJw14Ckx5DgWkzGA3waZWO3d7pgqpUI/XA==
|
||||||
|
|
||||||
custom-event@1.0.0:
|
custom-event@1.0.0:
|
||||||
version "1.0.0"
|
version "1.0.0"
|
||||||
resolved "https://registry.yarnpkg.com/custom-event/-/custom-event-1.0.0.tgz#2e4628be19dc4b214b5c02630c5971e811618062"
|
resolved "https://registry.yarnpkg.com/custom-event/-/custom-event-1.0.0.tgz#2e4628be19dc4b214b5c02630c5971e811618062"
|
||||||
@@ -8003,6 +8013,11 @@ locate-path@^6.0.0:
|
|||||||
dependencies:
|
dependencies:
|
||||||
p-locate "^5.0.0"
|
p-locate "^5.0.0"
|
||||||
|
|
||||||
|
lodash-es@latest:
|
||||||
|
version "4.17.21"
|
||||||
|
resolved "https://registry.yarnpkg.com/lodash-es/-/lodash-es-4.17.21.tgz#43e626c46e6591b7750beb2b50117390c609e3ee"
|
||||||
|
integrity sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==
|
||||||
|
|
||||||
lodash._reinterpolate@^3.0.0:
|
lodash._reinterpolate@^3.0.0:
|
||||||
version "3.0.0"
|
version "3.0.0"
|
||||||
resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d"
|
resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d"
|
||||||
@@ -12522,6 +12537,16 @@ vm-browserify@^1.0.1:
|
|||||||
resolved "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-1.1.2.tgz#78641c488b8e6ca91a75f511e7a3b32a86e5dda0"
|
resolved "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-1.1.2.tgz#78641c488b8e6ca91a75f511e7a3b32a86e5dda0"
|
||||||
integrity sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==
|
integrity sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==
|
||||||
|
|
||||||
|
vue-chart-3@^3.1.2:
|
||||||
|
version "3.1.2"
|
||||||
|
resolved "https://registry.yarnpkg.com/vue-chart-3/-/vue-chart-3-3.1.2.tgz#63707fa971e6a51b92d2f5bb42c63c07bcd70924"
|
||||||
|
integrity sha512-5bpL/kGDnKSyU9PtYGM98T3vy52i7oowfOChtMw+FIzRczx1BMAThVvZGp5k+jRygoXXLH6w1A7ZP31xGPj5ow==
|
||||||
|
dependencies:
|
||||||
|
"@vue/runtime-core" latest
|
||||||
|
"@vue/runtime-dom" latest
|
||||||
|
csstype latest
|
||||||
|
lodash-es latest
|
||||||
|
|
||||||
vue-class-component@^6.0.0, vue-class-component@^6.2.0:
|
vue-class-component@^6.0.0, vue-class-component@^6.2.0:
|
||||||
version "6.3.2"
|
version "6.3.2"
|
||||||
resolved "https://registry.yarnpkg.com/vue-class-component/-/vue-class-component-6.3.2.tgz#e6037e84d1df2af3bde4f455e50ca1b9eec02be6"
|
resolved "https://registry.yarnpkg.com/vue-class-component/-/vue-class-component-6.3.2.tgz#e6037e84d1df2af3bde4f455e50ca1b9eec02be6"
|
||||||
@@ -12573,7 +12598,7 @@ vue-hot-reload-api@^2.0.1:
|
|||||||
resolved "https://registry.yarnpkg.com/vue-hot-reload-api/-/vue-hot-reload-api-2.3.4.tgz#532955cc1eb208a3d990b3a9f9a70574657e08f2"
|
resolved "https://registry.yarnpkg.com/vue-hot-reload-api/-/vue-hot-reload-api-2.3.4.tgz#532955cc1eb208a3d990b3a9f9a70574657e08f2"
|
||||||
integrity sha512-BXq3jwIagosjgNVae6tkHzzIk6a8MHFtzAdwhnV5VlvPTFxDCvIttgSiHWjdGoTJvXtmRu5HacExfdarRcFhog==
|
integrity sha512-BXq3jwIagosjgNVae6tkHzzIk6a8MHFtzAdwhnV5VlvPTFxDCvIttgSiHWjdGoTJvXtmRu5HacExfdarRcFhog==
|
||||||
|
|
||||||
vue-i18n@^9.2.0-beta.26:
|
vue-i18n@^9.2.0-beta.30:
|
||||||
version "9.2.0-beta.30"
|
version "9.2.0-beta.30"
|
||||||
resolved "https://registry.yarnpkg.com/vue-i18n/-/vue-i18n-9.2.0-beta.30.tgz#e58effd4e1dcd328c3c40ad945aaf914146237c6"
|
resolved "https://registry.yarnpkg.com/vue-i18n/-/vue-i18n-9.2.0-beta.30.tgz#e58effd4e1dcd328c3c40ad945aaf914146237c6"
|
||||||
integrity sha512-5DqrgG9ffgC7j3RRAfViC0WUcdz0C3Ix1qq1AyQItpF7UkSB6iSJGEjBG6KdspbRQq/8t1YzDx4JRXbL05l6ow==
|
integrity sha512-5DqrgG9ffgC7j3RRAfViC0WUcdz0C3Ix1qq1AyQItpF7UkSB6iSJGEjBG6KdspbRQq/8t1YzDx4JRXbL05l6ow==
|
||||||
|
|||||||
Reference in New Issue
Block a user