show last access in profile
This commit is contained in:
@@ -1,50 +1,75 @@
|
||||
<template>
|
||||
<div v-if="!tools.isLogged()">
|
||||
<div v-if="!tools.isLogged()">
|
||||
<CCheckIfIsLogged></CCheckIfIsLogged>
|
||||
</div>
|
||||
<div v-if="!caricato" class="fit column no-wrap justify-evenly items-center content-start">
|
||||
<q-skeleton type="QAvatar" size="140px" height="140px" animation="fade"/>
|
||||
<div
|
||||
v-if="!caricato"
|
||||
class="fit column no-wrap justify-evenly items-center content-start"
|
||||
>
|
||||
<q-skeleton type="QAvatar" size="140px" height="140px" animation="fade" />
|
||||
<q-card flat bordered style="width: 250px">
|
||||
<div class="text-h6">
|
||||
<q-skeleton :animation="animation"/>
|
||||
<q-skeleton :animation="animation" />
|
||||
</div>
|
||||
<div class="col-12 text-h7 text-grey text-center">
|
||||
{{ username }}
|
||||
</div>
|
||||
<div class="col-12 text-h7">
|
||||
<q-skeleton :animation="animation"/>
|
||||
<q-skeleton :animation="animation" />
|
||||
</div>
|
||||
|
||||
<div class="col-12 text-h8 q-mt-sm">
|
||||
<q-skeleton :animation="animation"/>
|
||||
<q-skeleton :animation="animation" />
|
||||
</div>
|
||||
<div class="col-12 text-h8 q-mt-sm">
|
||||
<q-skeleton :animation="animation"/>
|
||||
<q-skeleton :animation="animation" />
|
||||
</div>
|
||||
</q-card>
|
||||
</div>
|
||||
<div v-else-if="(tools.isUserOk() || (tools.isLogged()))">
|
||||
<div v-else-if="tools.isUserOk() || tools.isLogged()">
|
||||
<div v-if="myuser">
|
||||
<CNotifAtTop />
|
||||
<div class="q-gutter-sm q-pa-sm q-pb-md">
|
||||
<div v-if="myuser && myuser.date_reg" class="fit column no-wrap justify-evenly items-center content-start">
|
||||
|
||||
<div
|
||||
v-if="myuser && myuser.date_reg"
|
||||
class="fit column no-wrap justify-evenly items-center content-start"
|
||||
>
|
||||
<div class="">
|
||||
<q-avatar size="140px">
|
||||
<q-img :src="getImgUser()" :alt="username" img-class="imgprofile" height="140px" @click="showPic = true"/>
|
||||
<q-img
|
||||
:src="getImgUser()"
|
||||
:alt="username"
|
||||
img-class="imgprofile"
|
||||
height="140px"
|
||||
@click="showPic = true"
|
||||
/>
|
||||
<q-badge
|
||||
v-if="tools.isUserOnline(myuser)"
|
||||
align="top"
|
||||
floating
|
||||
color="green"
|
||||
>online</q-badge
|
||||
>
|
||||
</q-avatar>
|
||||
</div>
|
||||
|
||||
<div class="last_access">
|
||||
Ultimo accesso: {{tools.timeAgo(myuser.lasttimeonline)}}
|
||||
</div>
|
||||
|
||||
<div v-if="myuser.reported">
|
||||
<CTitleBanner title="⚠️ L'utente è stato Segnalato per comportamento non idoneo." bgcolor="bg-red" clcolor="text-white">
|
||||
<CTitleBanner
|
||||
title="⚠️ L'utente è stato Segnalato per comportamento non idoneo."
|
||||
bgcolor="bg-red"
|
||||
clcolor="text-white"
|
||||
>
|
||||
</CTitleBanner>
|
||||
</div>
|
||||
|
||||
<div v-if="site.confpages.showNameSurname">
|
||||
<div class="text-h6">
|
||||
<span v-if="checkifShow('name')"> {{ myuser.name }}</span> <span v-if="checkifShow('surname')">{{
|
||||
myuser.surname
|
||||
}}</span>
|
||||
<span v-if="checkifShow('name')"> {{ myuser.name }}</span>
|
||||
<span v-if="checkifShow('surname')">{{ myuser.surname }}</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-12 text-h7 text-blue text-shadow-2">
|
||||
@@ -52,7 +77,7 @@
|
||||
</div>
|
||||
|
||||
<div class="col-12 text-h7">
|
||||
<span v-if="myuser.profile && myuser.profile.born_city_id">
|
||||
<span v-if="myuser.profile && myuser.profile.born_city_id">
|
||||
<CMyFieldRec
|
||||
title=""
|
||||
table="users"
|
||||
@@ -61,101 +86,187 @@
|
||||
:rec="myuser"
|
||||
field="profile.born_city_id"
|
||||
:canEdit="false"
|
||||
:canModify="false">
|
||||
:canModify="false"
|
||||
>
|
||||
</CMyFieldRec>
|
||||
|
||||
|
||||
{{ myuser.profile.born_city_str }}</span> <span
|
||||
v-if="myuser.profile && myuser.profile.nationality && myuser.profile.nationality !== 'Italia'">({{
|
||||
myuser.profile.nationality
|
||||
}})</span>
|
||||
{{ myuser.profile.born_city_str }}</span
|
||||
>
|
||||
<span
|
||||
v-if="
|
||||
myuser.profile &&
|
||||
myuser.profile.nationality &&
|
||||
myuser.profile.nationality !== 'Italia'
|
||||
"
|
||||
>({{ myuser.profile.nationality }})</span
|
||||
>
|
||||
</div>
|
||||
<div v-if="myuser._id" class="col-12 text-h8 q-mt-sm">
|
||||
<span v-if="myuser.profile.qualifica">
|
||||
<em><span class="qualifica">{{ myuser.profile.qualifica }}</span></em>
|
||||
</span>
|
||||
<span v-if="myuser.profile.qualifica">
|
||||
<em
|
||||
><span class="qualifica">{{
|
||||
myuser.profile.qualifica
|
||||
}}</span></em
|
||||
>
|
||||
</span>
|
||||
</div>
|
||||
<div v-if="myuser._id" class="col-12 text-h8 q-mt-sm">
|
||||
{{ myuser.profile.biografia }}
|
||||
</div>
|
||||
|
||||
<div v-if="!isMyRecord(myuser.username)">
|
||||
<div class="row centeritems q-ma-sm q-pa-sm" v-if="userStore.IsReqFriendByUsername(myuser.username)">
|
||||
<div
|
||||
class="row centeritems q-ma-sm q-pa-sm"
|
||||
v-if="userStore.IsReqFriendByUsername(myuser.username)"
|
||||
>
|
||||
<q-btn
|
||||
icon="fas fa-user-plus"
|
||||
color="positive" :label="$t('friends.accept_friend')"
|
||||
@click="tools.addToMyFriends($q, userStore.my.username, myuser.username)"
|
||||
color="positive"
|
||||
:label="$t('friends.accept_friend')"
|
||||
@click="
|
||||
tools.addToMyFriends(
|
||||
$q,
|
||||
userStore.my.username,
|
||||
myuser.username
|
||||
)
|
||||
"
|
||||
/>
|
||||
<q-btn
|
||||
icon="fas fa-user-minus"
|
||||
color="negative" :label="$t('friends.reject_ask_friend')"
|
||||
@click="tools.refuseReqFriends($q, userStore.my.username, myuser.username)"
|
||||
color="negative"
|
||||
:label="$t('friends.reject_ask_friend')"
|
||||
@click="
|
||||
tools.refuseReqFriends(
|
||||
$q,
|
||||
userStore.my.username,
|
||||
myuser.username
|
||||
)
|
||||
"
|
||||
/>
|
||||
</div>
|
||||
<div v-else>
|
||||
<q-btn
|
||||
v-if="!userStore.IsMyFriendByUsername(myuser.username) && !userStore.IsAskedFriendByUsername(myuser.username)"
|
||||
v-if="
|
||||
!userStore.IsMyFriendByUsername(myuser.username) &&
|
||||
!userStore.IsAskedFriendByUsername(myuser.username)
|
||||
"
|
||||
icon="fas fa-user-plus"
|
||||
color="primary" :label="$t('friends.ask_friend')"
|
||||
@click="tools.setRequestFriendship($q, userStore.my.username, myuser.username, true)"
|
||||
color="primary"
|
||||
:label="$t('friends.ask_friend')"
|
||||
@click="
|
||||
tools.setRequestFriendship(
|
||||
$q,
|
||||
userStore.my.username,
|
||||
myuser.username,
|
||||
true
|
||||
)
|
||||
"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<q-btn v-if="userStore.IsMyFriendByUsername(myuser.username)" rounded icon="fas fa-ellipsis-h">
|
||||
<q-btn
|
||||
v-if="userStore.IsMyFriendByUsername(myuser.username)"
|
||||
rounded
|
||||
icon="fas fa-ellipsis-h"
|
||||
>
|
||||
<q-menu>
|
||||
<q-list v-if="true" style="min-width: 150px">
|
||||
<q-item clickable
|
||||
icon="fas fa-user-minus"
|
||||
v-close-popup @click="tools.removeFromMyFriends($q, userStore.my.username, myuser.username)">
|
||||
<q-item-section>{{ $t('friends.remove_from_myfriends') }}</q-item-section>
|
||||
<q-item
|
||||
clickable
|
||||
icon="fas fa-user-minus"
|
||||
v-close-popup
|
||||
@click="
|
||||
tools.removeFromMyFriends(
|
||||
$q,
|
||||
userStore.my.username,
|
||||
myuser.username
|
||||
)
|
||||
"
|
||||
>
|
||||
<q-item-section>{{
|
||||
$t('friends.remove_from_myfriends')
|
||||
}}</q-item-section>
|
||||
</q-item>
|
||||
<q-item clickable
|
||||
icon="fas fa-ban"
|
||||
v-close-popup @click="tools.blockUser($q, userStore.my.username, myuser.username)">
|
||||
<q-item-section>{{ $t('friends.block_user') }}</q-item-section>
|
||||
<q-item
|
||||
clickable
|
||||
icon="fas fa-ban"
|
||||
v-close-popup
|
||||
@click="
|
||||
tools.blockUser(
|
||||
$q,
|
||||
userStore.my.username,
|
||||
myuser.username
|
||||
)
|
||||
"
|
||||
>
|
||||
<q-item-section>{{
|
||||
$t('friends.block_user')
|
||||
}}</q-item-section>
|
||||
</q-item>
|
||||
<q-item clickable v-close-popup @click="tools.reportUser($q, userStore.my.username, myuser.username)">
|
||||
<q-item
|
||||
clickable
|
||||
v-close-popup
|
||||
@click="
|
||||
tools.reportUser(
|
||||
$q,
|
||||
userStore.my.username,
|
||||
myuser.username
|
||||
)
|
||||
"
|
||||
>
|
||||
<q-item-section avatar>
|
||||
<q-icon color="negative" name="fas fa-user-minus"/>
|
||||
<q-icon color="negative" name="fas fa-user-minus" />
|
||||
</q-item-section>
|
||||
<q-item-section>{{ $t('friends.report_user') }}</q-item-section>
|
||||
<q-item-section>{{
|
||||
$t('friends.report_user')
|
||||
}}</q-item-section>
|
||||
</q-item>
|
||||
|
||||
</q-list>
|
||||
</q-menu>
|
||||
</q-btn>
|
||||
|
||||
<q-btn
|
||||
v-if="userStore.IsAskedFriendByUsername(myuser.username) && !userStore.IsMyFriendByUsername(myuser.username)"
|
||||
v-if="
|
||||
userStore.IsAskedFriendByUsername(myuser.username) &&
|
||||
!userStore.IsMyFriendByUsername(myuser.username)
|
||||
"
|
||||
icon="fas fa-user-minus"
|
||||
:label="$t('friends.cancel_ask_friend_short')"
|
||||
@click="tools.cancelReqFriends($q, userStore.my.username, myuser.username)"
|
||||
@click="
|
||||
tools.cancelReqFriends(
|
||||
$q,
|
||||
userStore.my.username,
|
||||
myuser.username
|
||||
)
|
||||
"
|
||||
/>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<q-btn
|
||||
v-if="myuser.username === myusername()" icon="fas fa-pencil-alt"
|
||||
:color="$q.dark.isActive ? `black`: `white`"
|
||||
:text-color="$q.dark.isActive ? `white`: `black`"
|
||||
v-if="myuser.username === myusername()"
|
||||
icon="fas fa-pencil-alt"
|
||||
:color="$q.dark.isActive ? `black` : `white`"
|
||||
:text-color="$q.dark.isActive ? `white` : `black`"
|
||||
size="md"
|
||||
:label="$t('otherpages.modifprof')"
|
||||
to="/editprofile">
|
||||
to="/editprofile"
|
||||
>
|
||||
</q-btn>
|
||||
|
||||
<div class="myrow justify-evenly items-center q-pa-sm q-ma-sm">
|
||||
|
||||
<div class="col-md-6 col-sm-6 q-ma-xs col-xs-12">
|
||||
<q-btn
|
||||
v-if="getLinkUserTelegram()" icon="fab fa-telegram"
|
||||
color="blue" type="a"
|
||||
v-if="getLinkUserTelegram()"
|
||||
icon="fab fa-telegram"
|
||||
color="blue"
|
||||
type="a"
|
||||
size="md"
|
||||
rounded
|
||||
:label="$t('msgs.telegrammsg')"
|
||||
:href="getLinkUserTelegram()" target="__blank">
|
||||
:href="getLinkUserTelegram()"
|
||||
target="__blank"
|
||||
>
|
||||
</q-btn>
|
||||
|
||||
</div>
|
||||
<div class="col-md-6 col-sm-6 q-ma-xs col-xs-12">
|
||||
<q-btn
|
||||
@@ -164,13 +275,16 @@
|
||||
color="orange"
|
||||
:label="$t('profile.myactivities')"
|
||||
:to="`/skills/` + myuser.username"
|
||||
>
|
||||
>
|
||||
</q-btn>
|
||||
|
||||
</div>
|
||||
<div class="col-md-6 col-sm-6 q-ma-xs col-xs-12">
|
||||
<q-btn
|
||||
v-if="userStore.IsMyCircuitByUser(myuser).length > 0 && myuser.username !== myusername() && userStore.my.profile.calc.numGoodsAndServices > 0"
|
||||
v-if="
|
||||
userStore.IsMyCircuitByUser(myuser).length > 0 &&
|
||||
myuser.username !== myusername() &&
|
||||
userStore.my.profile.calc.numGoodsAndServices > 0
|
||||
"
|
||||
icon="fas fa-coins"
|
||||
color="green"
|
||||
size="md"
|
||||
@@ -179,16 +293,19 @@
|
||||
@click="showsendCoinTo = true"
|
||||
>
|
||||
</q-btn>
|
||||
|
||||
</div>
|
||||
<div v-if="myuser._id" class="col-md-6 col-sm-6 q-ma-xs col-xs-12">
|
||||
<q-btn
|
||||
v-if="getLinkWebSite()" icon="fas fa-globe"
|
||||
color="blue" type="a"
|
||||
v-if="getLinkWebSite()"
|
||||
icon="fas fa-globe"
|
||||
color="blue"
|
||||
type="a"
|
||||
size="md"
|
||||
rounded
|
||||
:label="$t('reg.website')"
|
||||
:href="getLinkWebSite()" target="__blank">
|
||||
:href="getLinkWebSite()"
|
||||
target="__blank"
|
||||
>
|
||||
</q-btn>
|
||||
</div>
|
||||
</div>
|
||||
@@ -201,28 +318,50 @@
|
||||
size="md"
|
||||
rounded
|
||||
:label="$t('reg.link_reg_and_msg')"
|
||||
@click="tools.sendMsgTelegramCmd($q, $t, shared_consts.MsgTeleg.SHARE_MSGREG, true)">
|
||||
@click="
|
||||
tools.sendMsgTelegramCmd(
|
||||
$q,
|
||||
$t,
|
||||
shared_consts.MsgTeleg.SHARE_MSGREG,
|
||||
true
|
||||
)
|
||||
"
|
||||
>
|
||||
</q-btn>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div v-if="myuser && myuser._id && (userStore.IsMyFriendByUsername(myuser.username) || isMyRecord(myuser.username))">
|
||||
<div
|
||||
v-if="
|
||||
myuser &&
|
||||
myuser._id &&
|
||||
(userStore.IsMyFriendByUsername(myuser.username) ||
|
||||
isMyRecord(myuser.username))
|
||||
"
|
||||
>
|
||||
<CTitleBanner
|
||||
class="" :title="$t('dashboard.info')" bgcolor="bg-primary" clcolor="text-white"
|
||||
myclass="myshad" :canopen="true">
|
||||
|
||||
<div v-if="myuser.profile" class="fit column no-wrap justify-evenly content-start">
|
||||
|
||||
class=""
|
||||
:title="$t('dashboard.info')"
|
||||
bgcolor="bg-primary"
|
||||
clcolor="text-white"
|
||||
myclass="myshad"
|
||||
:canopen="true"
|
||||
>
|
||||
<div
|
||||
v-if="myuser.profile"
|
||||
class="fit column no-wrap justify-evenly content-start"
|
||||
>
|
||||
<div class="col-md-6 col-sm-6 q-ma-xs col-xs-12">
|
||||
|
||||
<CDateTime
|
||||
v-if="checkifShow('profile.dateofbirth') && !!myuser.profile.dateofbirth"
|
||||
v-if="
|
||||
checkifShow('profile.dateofbirth') &&
|
||||
!!myuser.profile.dateofbirth
|
||||
"
|
||||
v-model:value="myuser.profile.dateofbirth"
|
||||
:label="$t('reg.dateofbirth')"
|
||||
:canEdit="false">
|
||||
:canEdit="false"
|
||||
>
|
||||
</CDateTime>
|
||||
<CLabel
|
||||
v-if="!!myuser.profile.cell"
|
||||
@@ -244,20 +383,12 @@
|
||||
:canModify="false">
|
||||
</CMyFieldRec>
|
||||
-->
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</CTitleBanner>
|
||||
</div>
|
||||
<div class="col-md-6 col-sm-6 q-ma-xs col-xs-12">
|
||||
<CLabel
|
||||
v-if="!!myuser.useraport"
|
||||
:label="t('profile.aportador_him')"
|
||||
>
|
||||
<CLabel v-if="!!myuser.useraport" :label="t('profile.aportador_him')">
|
||||
<CMyUser
|
||||
:mycontact="myuser.useraport"
|
||||
:visu="costanti.FIND_PEOPLE"
|
||||
@@ -266,16 +397,9 @@
|
||||
</CMyUser>
|
||||
</CLabel>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
<q-dialog
|
||||
v-model="showPic"
|
||||
full-height full-width
|
||||
>
|
||||
|
||||
<img :src="getImgUser()" :alt="username" class="full-width">
|
||||
|
||||
<q-dialog v-model="showPic" full-height full-width>
|
||||
<img :src="getImgUser()" :alt="username" class="full-width" />
|
||||
</q-dialog>
|
||||
|
||||
<div v-if="showsendCoinTo">
|
||||
@@ -284,19 +408,17 @@
|
||||
:to_user="myuser"
|
||||
@close="showsendCoinTo = false"
|
||||
>
|
||||
|
||||
</CSendCoins>
|
||||
</div>
|
||||
</div>
|
||||
<div v-else-if="caricato">
|
||||
<h2>Utente {{ username }} non trovato</h2>
|
||||
({{filtroutente}})
|
||||
({{ filtroutente }})
|
||||
</div>
|
||||
</div>
|
||||
<div v-else>
|
||||
<CUserNonVerif></CUserNonVerif>
|
||||
</div>
|
||||
|
||||
</template>
|
||||
|
||||
<script lang="ts" src="./myprofile.ts">
|
||||
|
||||
Reference in New Issue
Block a user