Circuit go on...
This commit is contained in:
@@ -35,7 +35,7 @@ export default defineComponent({
|
||||
|
||||
const animation = ref('fade')
|
||||
|
||||
const name = computed(() => $route.params.name ? $route.params.name.toString() : '')
|
||||
const path = computed(() => $route.params.path ? $route.params.path.toString() : '')
|
||||
const idnotif = computed(() => $route.query.idnotif ? $route.query.idnotif.toString() : '')
|
||||
|
||||
const filtroutente = ref(<any[]>[])
|
||||
@@ -58,6 +58,11 @@ export default defineComponent({
|
||||
|
||||
const cities = ref(<ICity[]>[])
|
||||
|
||||
watch(() => path.value, (to: any, from: any) => {
|
||||
loadCircuit()
|
||||
})
|
||||
|
||||
|
||||
function profile() {
|
||||
return userStore.my.profile
|
||||
}
|
||||
@@ -68,12 +73,11 @@ export default defineComponent({
|
||||
|
||||
async function loadCircuit() {
|
||||
// Carica il profilo di quest'utente
|
||||
if (name.value) {
|
||||
await userStore.loadCIrcuit(name.value, idnotif.value).then(({ data, status }: {data: any, status: number}) => {
|
||||
if (path.value) {
|
||||
await userStore.loadCIrcuit(path.value, idnotif.value).then(({ data, status }: {data: any, status: number}) => {
|
||||
console.log('data', data)
|
||||
if (data) {
|
||||
circuit.value = data.circuit
|
||||
cities.value = data.cities
|
||||
notifStore.setAsRead(idnotif.value)
|
||||
users_in_circuit.value = data.users_in_circuit
|
||||
} else {
|
||||
@@ -90,23 +94,18 @@ export default defineComponent({
|
||||
}
|
||||
}
|
||||
|
||||
watch(() => name.value, (to: any, from: any) => {
|
||||
loadCircuit()
|
||||
})
|
||||
|
||||
async function mounted() {
|
||||
loading.value = true
|
||||
await loadCircuit()
|
||||
|
||||
searchList.value = []
|
||||
filtercustom.value = [{ 'profile.mycircuits': { $elemMatch: {name: {$eq: name.value }} } } ]
|
||||
filtercustom.value = [{ 'profile.listUserAccounts': { $elemMatch: {circuitId: {$eq: path.value }} } } ]
|
||||
|
||||
arrfilterand.value = []
|
||||
filtercustom_rich.value = []
|
||||
//++TODO: sistemare la filtercustom ... richieste...
|
||||
}
|
||||
|
||||
function getImgGrp() {
|
||||
function getImgCircuit() {
|
||||
if (circuit.value)
|
||||
return userStore.getImgByCircuit(circuit.value)
|
||||
else
|
||||
@@ -157,7 +156,8 @@ export default defineComponent({
|
||||
|
||||
function extraparams_refused() {
|
||||
return {
|
||||
|
||||
querytype: shared_consts.QUERYTYPE_REFUSED_USER_CIRCUIT,
|
||||
myid: circuit.value ? circuit.value._id : '',
|
||||
}
|
||||
}
|
||||
|
||||
@@ -181,7 +181,7 @@ export default defineComponent({
|
||||
costanti,
|
||||
circuit,
|
||||
shared_consts,
|
||||
getImgGrp,
|
||||
getImgCircuit,
|
||||
checkifShow,
|
||||
|
||||
filtroutente,
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
Occorre prima registrarsi alla App </h3>
|
||||
</div>
|
||||
<div v-else>
|
||||
<h3>Gruppo non Esistente</h3>
|
||||
<h3>Circuito non Esistente</h3>
|
||||
</div>
|
||||
</div>
|
||||
<div v-else>
|
||||
@@ -18,19 +18,16 @@
|
||||
</div>
|
||||
<div>
|
||||
|
||||
<div v-if="circuit.longdescr" class="fit column no-wrap justify-evenly items-center content-start">
|
||||
<div v-if="circuit.name" class="fit column no-wrap justify-evenly items-center content-start">
|
||||
|
||||
<div class="">
|
||||
<q-avatar size="140px">
|
||||
<q-img :src="getImgGrp()" :alt="circuitname()" img-class="imgprofile" height="140px" @click="showPic = true"/>
|
||||
<q-img :src="getImgCircuit()" :alt="circuit.name" img-class="imgprofile" height="140px" @click="showPic = true"/>
|
||||
</q-avatar>
|
||||
</div>
|
||||
|
||||
<div class="text-h6">
|
||||
<span v-if="checkifShow('name')"> {{ circuit.title }}</span>
|
||||
</div>
|
||||
<div v-if="circuit.title !== circuit.name" class="col-12 text-h7 text-blue text-shadow-2">
|
||||
{{ circuit.name }}
|
||||
<span v-if="checkifShow('name')"> {{ circuit.name }}</span>
|
||||
</div>
|
||||
|
||||
<q-banner
|
||||
@@ -47,7 +44,7 @@
|
||||
<q-btn
|
||||
v-if="!userStore.IsMyCircuitByName(circuit.name) && !userStore.IsAskedCircuitByName(circuit.name) && !userStore.IsRefusedCircuitByName(circuit.name)"
|
||||
icon="fas fa-user-plus"
|
||||
color="primary" :label="$t('circuits.ask_circuit')"
|
||||
color="primary" :label="$t('circuit.ask')"
|
||||
@click="tools.setRequestCircuit($q, userStore.my.username, circuit.name, true)"
|
||||
/>
|
||||
<q-btn
|
||||
@@ -60,15 +57,15 @@
|
||||
<q-item-section avatar>
|
||||
<q-icon color="negative" name="fas fa-user-minus"/>
|
||||
</q-item-section>
|
||||
<q-item-section>{{ $t('circuits.exit_circuit') }}</q-item-section>
|
||||
<q-item-section>{{ $t('circuit.exit_circuit') }}</q-item-section>
|
||||
</q-item>
|
||||
|
||||
<q-list v-if="tools.iAmAdminCircuit(circuit.name)" style="min-width: 200px">
|
||||
<q-item clickable v-close-popup @click="tools.setCmd($q, shared_consts.CIRCUITSCMD.DELETE_CIRCUIT, userStore.my.username, '', circuit.name)">
|
||||
<q-item clickable v-close-popup @click="tools.setCmd($q, shared_consts.CIRCUITCMD.DELETE, userStore.my.username, '', circuit.name)">
|
||||
<q-item-section avatar>
|
||||
<q-icon color="negative" name="fas fa-trash-alt"/>
|
||||
</q-item-section>
|
||||
<q-item-section>{{ $t('circuits.delete_circuit') }}</q-item-section>
|
||||
<q-item-section>{{ $t('circuit.delete') }}</q-item-section>
|
||||
</q-item>
|
||||
</q-list>
|
||||
|
||||
@@ -80,13 +77,13 @@
|
||||
<q-btn
|
||||
v-if="userStore.IsAskedCircuitByName(circuit.name) && !userStore.IsMyCircuitByName(circuit.name)"
|
||||
icon="fas fa-user-minus"
|
||||
flat :label="$t('circuits.cancel_ask_circuit_short')"
|
||||
flat :label="$t('shared.cancel_ask_short')"
|
||||
@click="tools.cancelReqCircuits($q, userStore.my.username, circuit.name)"
|
||||
/>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div v-if="circuit.longdescr" class="no-wrap justify-evenly items-center content-start">
|
||||
<div v-if="circuit.name" class="no-wrap justify-evenly items-center content-start">
|
||||
|
||||
|
||||
<!--
|
||||
@@ -100,11 +97,10 @@
|
||||
-->
|
||||
|
||||
<q-tabs v-model="tabgrp" class="text-blue">
|
||||
<q-tab :label="t('circuits.info1')" name="info" icon="fas fa-info"></q-tab>
|
||||
<q-tab v-if="!!circuit.note" :label="t('circuits.page')" name="page" icon="fas fa-file-word"></q-tab>
|
||||
<q-tab :label="t('shared.info1')" name="info" icon="fas fa-info"></q-tab>
|
||||
<q-tab v-if="!!circuit.note" :label="t('circuit.page')" name="page" icon="fas fa-file-word"></q-tab>
|
||||
<q-tab v-if="tools.iCanShowCircuitsMember(circuit) || tools.iAmAdminCircuit(name)"
|
||||
:label="t('circuits.subscribes')" name="members" icon="fas fa-users"></q-tab>
|
||||
<q-tab :label="t('circuits.circuits')" name="circuits" icon="fas fa-coins"></q-tab>
|
||||
:label="t('shared.subscribes')" name="members" icon="fas fa-users"></q-tab>
|
||||
</q-tabs>
|
||||
|
||||
<q-tab-panels v-model="tabgrp" animated>
|
||||
@@ -112,66 +108,33 @@
|
||||
<div>
|
||||
<q-card>
|
||||
<q-card-section>
|
||||
<div class="text-h6">{{ t('circuits.info') }}</div>
|
||||
<div class="text-h6">{{ t('circuit.info') }}</div>
|
||||
</q-card-section>
|
||||
|
||||
<q-separator/>
|
||||
|
||||
<q-card-section>
|
||||
<div class="element">
|
||||
<div v-if="circuit.createdBy" class="element">
|
||||
<q-icon name="fas fa-lightbulb"></q-icon>
|
||||
{{ $t('circuits.createdby', {
|
||||
{{ $t('circuit.createdby', {
|
||||
username: circuit.createdBy,
|
||||
date: tools.getstrDateYY(circuit.date_created), })
|
||||
}}
|
||||
</div>
|
||||
<div v-if="!!circuit.date_updated && circuit.date_updated !== circuit.createdBy" class="element">
|
||||
<q-icon name="fas fa-pencil-alt"></q-icon>
|
||||
{{ $t('circuits.lastmodify', {
|
||||
{{ $t('circuit.lastmodify', {
|
||||
date: tools.getstrDateYY(circuit.date_updated), })
|
||||
}}
|
||||
</div>
|
||||
|
||||
<div v-if="circuit.visibility.includes(shared_consts.Visibility_Circuit.PRIVATE)" class="row">
|
||||
<div class="q-pa-xs">
|
||||
<q-icon name="fas fa-lock"></q-icon>
|
||||
</div>
|
||||
<div>
|
||||
<div class="title_param"> {{ $t('circuits.private') }}</div>
|
||||
{{ $t('circuits.private_descr') }}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div v-if="circuit.visibility.includes(shared_consts.Visibility_Circuit.HIDDEN)" class="row">
|
||||
<div class="q-pa-xs">
|
||||
<q-icon name="fas fa-eye-slash"></q-icon>
|
||||
</div>
|
||||
<div>
|
||||
<div class="title_param"> {{ $t('circuits.hidden') }}</div>
|
||||
{{ $t('circuits.hidden_descr') }}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div v-if="cities.length > 0" class="row">
|
||||
<div class="q-pa-xs">
|
||||
<q-icon name="fas fa-map-marker-alt"></q-icon>
|
||||
</div>
|
||||
<div>
|
||||
<div class="title_param">
|
||||
<div v-for="(city, index) of cities" :key="index">
|
||||
{{ city.comune }} ({{ city.prov }})
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="members">
|
||||
<q-icon name="fas fa-users"></q-icon>
|
||||
{{ numUsers() }} {{ numUsers() === 1 ? t('circuits.member') : t('circuits.members') }}
|
||||
{{ numUsers() }} {{ numUsers() === 1 ? t('circuit.member') : t('shared.members') }}
|
||||
</div>
|
||||
<div class="admins">
|
||||
<q-icon name="fas fa-user-cog"></q-icon>
|
||||
{{ numAdmins() }} {{ numAdmins() === 1 ? t('circuits.admin') : t('circuits.admins') }}
|
||||
{{ numAdmins() }} {{ numAdmins() === 1 ? t('circuit.admin') : t('shared.admins') }}
|
||||
</div>
|
||||
<div v-for="(user, index) of circuit.admins" :key="index">
|
||||
<CMyUser
|
||||
@@ -186,7 +149,7 @@
|
||||
|
||||
<br>
|
||||
</div>
|
||||
<q-card v-if="circuit.title">
|
||||
<q-card v-if="circuit.name">
|
||||
<q-card-section>
|
||||
<div class="text-h6">Descrizione:</div>
|
||||
</q-card-section>
|
||||
@@ -196,30 +159,6 @@
|
||||
<div class="col-12 text-h7">
|
||||
<span v-if="checkifShow('descr')">{{ circuit.longdescr }}</span>
|
||||
</div>
|
||||
|
||||
<div class="col-6 q-ma-xs">
|
||||
|
||||
<q-btn
|
||||
v-if="getLinkGrpTelegram()" icon="fab fa-telegram"
|
||||
color="blue" type="a"
|
||||
size="md"
|
||||
rounded
|
||||
:label="$t('msgs.telegrammsg')"
|
||||
:href="getLinkGrpTelegram()" target="__blank">
|
||||
</q-btn>
|
||||
|
||||
</div>
|
||||
<div class="col-6 q-ma-xs">
|
||||
<q-btn
|
||||
v-if="getLinkWebSite()" icon="fas fa-globe"
|
||||
color="blue" type="a"
|
||||
size="md"
|
||||
rounded
|
||||
:label="$t('reg.website')"
|
||||
:href="getLinkWebSite()" target="__blank">
|
||||
</q-btn>
|
||||
</div>
|
||||
|
||||
</q-card-section>
|
||||
</q-card>
|
||||
|
||||
@@ -235,17 +174,6 @@
|
||||
</div>
|
||||
</q-tab-panel>
|
||||
|
||||
<q-tab-panel name="circuits">
|
||||
Scegli il Circuito
|
||||
|
||||
circuit.circuits_list {{circuit.circuits_list}}
|
||||
|
||||
Mostra la lista dei Circuiti Esistenti
|
||||
(come la lista gruppi, in formato scheda)
|
||||
con possibilità di aggiungerli ai gruppi in cui sei Admin
|
||||
|
||||
|
||||
</q-tab-panel>
|
||||
<q-tab-panel name="members" style="max-width: 400px;" v-if="tools.iCanShowCircuitsMember(circuit)">
|
||||
|
||||
<q-tabs
|
||||
|
||||
@@ -80,7 +80,7 @@
|
||||
<q-btn
|
||||
v-if="userStore.IsAskedGroupByGroupname(mygrp.groupname) && !userStore.IsMyGroupByGroupname(mygrp.groupname)"
|
||||
icon="fas fa-user-minus"
|
||||
flat :label="$t('groups.cancel_ask_group_short')"
|
||||
flat :label="$t('shared.cancel_ask_short')"
|
||||
@click="tools.cancelReqGroups($q, userStore.my.username, mygrp.groupname)"
|
||||
/>
|
||||
</div>
|
||||
@@ -100,10 +100,10 @@
|
||||
-->
|
||||
|
||||
<q-tabs v-model="tabgrp" class="text-blue">
|
||||
<q-tab :label="t('groups.info1')" name="info" icon="fas fa-info"></q-tab>
|
||||
<q-tab :label="t('shared.info1')" name="info" icon="fas fa-info"></q-tab>
|
||||
<q-tab v-if="!!mygrp.note" :label="t('groups.page')" name="page" icon="fas fa-file-word"></q-tab>
|
||||
<q-tab v-if="tools.iCanShowGroupsMember(mygrp) || tools.iAmAdminGroup(groupname)"
|
||||
:label="t('groups.subscribes')" name="members" icon="fas fa-users"></q-tab>
|
||||
:label="t('shared.subscribes')" name="members" icon="fas fa-users"></q-tab>
|
||||
<q-tab :label="t('groups.circuits')" name="circuits" icon="fas fa-coins"></q-tab>
|
||||
</q-tabs>
|
||||
|
||||
@@ -167,11 +167,11 @@
|
||||
|
||||
<div class="members">
|
||||
<q-icon name="fas fa-users"></q-icon>
|
||||
{{ numUsers() }} {{ numUsers() === 1 ? t('groups.member') : t('groups.members') }}
|
||||
{{ numUsers() }} {{ numUsers() === 1 ? t('groups.member') : t('shared.members') }}
|
||||
</div>
|
||||
<div class="admins">
|
||||
<q-icon name="fas fa-user-cog"></q-icon>
|
||||
{{ numAdmins() }} {{ numAdmins() === 1 ? t('groups.admin') : t('groups.admins') }}
|
||||
{{ numAdmins() }} {{ numAdmins() === 1 ? t('groups.admin') : t('shared.admins') }}
|
||||
</div>
|
||||
<div v-for="(user, index) of mygrp.admins" :key="index">
|
||||
<CMyUser
|
||||
|
||||
Reference in New Issue
Block a user