Files
salvato.newfreeplanet/src/components/CFindUsers/CFindUsers.ts
Surya Paolo da6bef1b96 -Poter entrare nel login anche con l'username Telegram !
- Se clicchi sulla foto, mi apre il profilo anzichè l'invio dei RIS
- ++ Filtro sulle ricerche: Scegliere un Circuito specifico.
- Nella lista iscritti compaiono anche i cancellati...
- n "Attività" si vede tutto allargato, non sta nella dimensione della pagina.
- Nelle notifiche della campanellina non si vede più il titolo... (è vuoto).
- Non funziona il Filtro per Settore (nella Home sugli Eventi)
- Filtri avanzati da mostrare solo se clicco sul bottone.
- I menu in basso non funzionano !
- Nel menu "Iscritti" del circuito, non compare più la ricerca ! Riattivarla
- Opzione di mandare una email quando uno si registra al Circuito
- ++ Opzione per il Circuito: Chiedi di entrare agli admin (e non in automatico).
2025-01-09 15:17:21 +01:00

223 lines
5.7 KiB
TypeScript
Executable File

import { computed, defineComponent, onMounted, PropType, ref, watch, reactive, toRefs } from 'vue'
import { ICalcStat, IOperators, ISearchList } from '../../model'
import { useUserStore } from '../../store/UserStore'
import { useRouter } from 'vue-router'
import { useGlobalStore } from '../../store/globalStore'
import { useCircuitStore } from '../../store/CircuitStore'
import { useI18n } from '../../boot/i18n'
import { shared_consts } from '@src/common/shared_vuejs'
import { costanti, IMainCard } from '@store/Modules/costanti'
import { CMyUser } from '../CMyUser'
import { CTitleBanner } from '../CTitleBanner'
import { CMyGroup } from '../CMyGroup'
import { CQRCode } from '../CQRCode'
import { CCopyBtnSmall } from '../CCopyBtnSmall'
import { CContactUser } from '../CContactUser'
import { CGridTableRec } from '../CGridTableRec'
import { CUserInfoAccount } from '../CUserInfoAccount'
import { tools } from '@store/Modules/tools'
import { useQuasar } from 'quasar'
import { colmyUserPeople } from '@store/Modules/fieldsTable'
export default defineComponent({
name: 'CFindUsers',
props: {
actionType: {
type: Number,
required: false,
default: costanti.ACTIONTYPE.SEND_RIS,
},
sendRIS: {
type: String,
required: false,
default: '',
},
},
components: {
CMyUser, CMyGroup, CUserInfoAccount, CCopyBtnSmall,
CTitleBanner, CContactUser, CGridTableRec, CQRCode
},
setup(props) {
const userStore = useUserStore()
const globalStore = useGlobalStore()
const circuitStore = useCircuitStore()
const { t } = useI18n()
const $q = useQuasar()
const $router = useRouter()
const receiveRislist = computed(() => globalStore.datastat ? globalStore.datastat.receiveRislist : [])
const receiveRislistgroup = computed(() => globalStore.datastat ? globalStore.datastat.receiveRislistgroup : [])
const arrfilterand: any = ref([])
const filtercustom: any = ref([])
const searchList = ref(<ISearchList[]>[])
const filter = ref(costanti.FIND_PEOPLE)
const loading = ref(false)
const tipoConto = ref(0)
const contact = computed(() => userStore.my)
const searchType = ref('receivers')
const usersList = ref(<any>{ show: false, title: '', list: [], listgroup: [] })
const options = ref([
{
label: 'Lista dei Riceventi di oggi',
value: 'receivers'
},
{
label: 'Cerca per Nome o Username',
value: 'username'
},
{
label: 'Scansiona il QRCode del Destinatario',
value: 'qrcode'
},
])
const arrTypesAccounts = ref(<any>[
{
label: t('circuit.user'),
value: shared_consts.AccountType.USER,
},
{
label: t('circuit.conticollettivi'),
value: shared_consts.AccountType.COLLECTIVE_ACCOUNT,
}
])
function getFilterProvinceByRegion(recProvince: any, index: number, arr: any) {
const recreg: any = searchList.value.find((rec) => rec.table === 'regions')
if (recreg) {
return recProvince.reg === recreg.value
} else {
return true
}
}
function mounted() {
searchList.value = [
{
label: 'Regione',
table: 'regions',
key: 'idReg',
type: costanti.FieldType.select,
value: tools.getCookie(tools.COOK_SEARCH + 'regions_fr', costanti.FILTER_TUTTI),
keycookie: '_fr',
addall: true,
arrvalue: [],
filter: null,
useinput: false,
icon: 'fas fa-globe-europe'
},
{
label: 'Provincia',
table: 'provinces',
key: 'profile.resid_province',
type: costanti.FieldType.select,
value: tools.getCookie(tools.COOK_SEARCH + 'provinces_fr', costanti.FILTER_TUTTI),
keycookie: '_fr',
addall: true,
arrvalue: [],
filter: getFilterProvinceByRegion,
useinput: true,
icon: 'flag',
tablesel: 'provinces',
},
]
filtercustom.value = []
arrfilterand.value = []
const filt_loaded = tools.getCookie(tools.COOK_SEARCH + tools.FRIENDS_SEARCH, costanti.FIND_PEOPLE, true)
filter.value = filt_loaded ? filt_loaded : costanti.FIND_PEOPLE
updateUserListRIS()
sendCoinsToClick()
}
function extraparams() {
return {
lookup1: {
lk_tab: 'provinces',
lk_LF: 'profile.resid_province',
lk_FF: 'prov',
lk_as: 'mycities',
lk_proj: {
username: 1,
name: 1,
surname: 1,
verified_by_aportador: 1,
'profile.handshake': 1,
'profile.img': 1,
'profile.mygroups': 1,
'profile.qualifica': 1,
'profile.resid_province': 1,
'mycities.reg': 1,
}
},
}
}
onMounted(mounted)
async function updateUserListRIS() {
const userStore = useUserStore()
loading.value = true
await globalStore.getStatSite()
usersList.value.list = receiveRislist
usersList.value.listgroup = receiveRislistgroup
loading.value = false
}
async function sendCoinsToClick() {
usersList.value.show = true;
usersList.value.title = t('circuit.sendcoins');
usersList.value.list = receiveRislist
usersList.value.listgroup = receiveRislistgroup
}
return {
userStore,
tools,
costanti,
shared_consts,
arrTypesAccounts,
loading,
contact,
t,
extraparams,
colmyUserPeople,
searchList,
options,
searchType,
updateUserListRIS,
usersList,
receiveRislist,
receiveRislistgroup,
tipoConto,
CQRCode,
}
},
})