From 2d3eff1065253c6a0b1d8758b72a4dfa1e50502c Mon Sep 17 00:00:00 2001 From: paoloar77 Date: Sun, 16 Jan 2022 23:20:46 +0100 Subject: [PATCH] - Registrazione: conferma Abilitazione da Telegram - Richiesta Amicizia --- src/common/shared_vuejs.ts | 16 ++++ src/components/CGridTableRec/CGridTableRec.ts | 2 +- .../CGridTableRec/CGridTableRec.vue | 3 +- src/components/CMyFriends/CMyFriends.ts | 64 +-------------- src/components/CMyPopupEdit/CMyPopupEdit.ts | 5 ++ src/components/CMyPopupEdit/CMyPopupEdit.vue | 25 ++++-- .../home_insiemesipuo/home_insiemesipuo.vue | 4 +- src/root/home_pdnm/home_pdnm.vue | 25 +++--- src/statics/lang/it.js | 1 + src/store/Modules/fieldsTable.ts | 11 ++- src/store/Modules/tools.ts | 81 ++++++++++++++++--- src/store/globalStore.ts | 1 + src/views/user/myprofile/myprofile.ts | 6 ++ src/views/user/myprofile/myprofile.vue | 8 ++ 14 files changed, 159 insertions(+), 93 deletions(-) diff --git a/src/common/shared_vuejs.ts b/src/common/shared_vuejs.ts index fbf940c6..ccb27f41 100755 --- a/src/common/shared_vuejs.ts +++ b/src/common/shared_vuejs.ts @@ -101,6 +101,22 @@ export const shared_consts = { VISIB_ONLY_MANAGER: 2, VISIB_ONLY_ADMIN: 4, + + Lang: [ + { + value: 'it', + label: 'Italiano', + }, + { + value: 'es', + label: 'Spagnolo', + }, + { + value: 'enUs', + label: 'Inglese', + }, + ], + Visibility: [ { value: 1, diff --git a/src/components/CGridTableRec/CGridTableRec.ts b/src/components/CGridTableRec/CGridTableRec.ts index 3b6bed91..363341de 100755 --- a/src/components/CGridTableRec/CGridTableRec.ts +++ b/src/components/CGridTableRec/CGridTableRec.ts @@ -190,7 +190,7 @@ export default defineComponent({ const mytitle = ref('') const mycolumns = ref([]) const colkey = ref('') - const search = ref('paoloar773') + const search = ref('') const tablesel = ref('') diff --git a/src/components/CGridTableRec/CGridTableRec.vue b/src/components/CGridTableRec/CGridTableRec.vue index 8d9e7b89..307e9590 100755 --- a/src/components/CGridTableRec/CGridTableRec.vue +++ b/src/components/CGridTableRec/CGridTableRec.vue @@ -389,7 +389,8 @@ :subfield="col.subfield" :isInModif="true" minuteinterval="1" - :visulabel="false" + :visulabel="true" + :insertMode="true" @save="SaveValue" @show="selItem(newRecord, col)" @showandsave="showandsel"> diff --git a/src/components/CMyFriends/CMyFriends.ts b/src/components/CMyFriends/CMyFriends.ts index 7c053743..b0f5b212 100755 --- a/src/components/CMyFriends/CMyFriends.ts +++ b/src/components/CMyFriends/CMyFriends.ts @@ -194,66 +194,6 @@ export default defineComponent({ }) } - function setRequestFriendship(usernameDest: string, value: boolean) { - let msg = '' - if (value) { - msg = t('db.domanda_ask_friend', { username: usernameDest }) - } else { - msg = t('db.domanda_revoke_friend', { username: usernameDest }) - } - - $q.dialog({ - message: msg, - ok: { - label: t('dialog.yes'), - push: true - }, - cancel: { - label: t('dialog.cancel') - }, - title: t('db.domanda') - }).onOk(() => { - - userStore.setFriendsCmd($q, t, username.value, usernameDest, shared_consts.FRIENDSCMD.REQFRIEND, value) - .then((res: any) => { - if (res) { - if (value) { - // ADD to req Friends - userStore.my.profile.asked_friends.push(res) - tools.showPositiveNotif($q, t('db.askedtofriend', { username: usernameDest })) - } else { - // REMOVE to req Friends - userStore.my.profile.asked_friends = userStore.my.profile.asked_friends.filter((rec: IUserFields) => rec.username !== usernameDest) - tools.showPositiveNotif($q, t('db.revoketofriend', { username: usernameDest })) - } - - } else { - tools.showNegativeNotif($q, t('db.recfailed')) - } - }) - }) - } - - function addToMyFriends(usernameDest: string) { - $q.dialog({ - message: t('db.domanda_addtofriend', { username: usernameDest }), - ok: { label: t('dialog.yes'), push: true }, - cancel: { label: t('dialog.cancel') }, - title: t('db.domanda') - }).onOk(() => { - - userStore.setFriendsCmd($q, t, username.value, usernameDest, shared_consts.FRIENDSCMD.SETFRIEND, null) - .then((res: any) => { - if (res) { - console.log('res = ', res) - userStore.my.profile.friends = [...userStore.my.profile.friends, res] - userStore.my.profile.req_friends = userStore.my.profile.req_friends.filter((rec: IFriends) => rec.username !== usernameDest) - tools.showPositiveNotif($q, t('db.addedfriend')) - } - }) - }) - } - function removeFromMyFriends(usernameDest: string) { $q.dialog({ message: t('db.domanda_removefriend', { username: usernameDest }), @@ -329,9 +269,9 @@ export default defineComponent({ } else if (cmd === shared_consts.FRIENDSCMD.BLOCK_USER) { blockUser(usernameDest) } else if (cmd === shared_consts.FRIENDSCMD.SETFRIEND) { - addToMyFriends(usernameDest) + tools.addToMyFriends($q, t, username.value, usernameDest) } else if (cmd === shared_consts.FRIENDSCMD.REQFRIEND) { - setRequestFriendship(usernameDest, value) + tools.setRequestFriendship($q, t, username.value, usernameDest, value) } else if (cmd === shared_consts.FRIENDSCMD.REFUSE_REQ_FRIEND) { refuseReqFriends(usernameDest) } else if (cmd === shared_consts.FRIENDSCMD.CANCEL_REQ_FRIEND) { diff --git a/src/components/CMyPopupEdit/CMyPopupEdit.ts b/src/components/CMyPopupEdit/CMyPopupEdit.ts index 41213ba3..f17d8772 100755 --- a/src/components/CMyPopupEdit/CMyPopupEdit.ts +++ b/src/components/CMyPopupEdit/CMyPopupEdit.ts @@ -45,6 +45,11 @@ export default defineComponent({ required: false, default: false, }, + insertMode: { + type: Boolean, + required: false, + default: false, + }, canModify: { type: Boolean, required: false, diff --git a/src/components/CMyPopupEdit/CMyPopupEdit.vue b/src/components/CMyPopupEdit/CMyPopupEdit.vue index 05469a7b..ac65afab 100755 --- a/src/components/CMyPopupEdit/CMyPopupEdit.vue +++ b/src/components/CMyPopupEdit/CMyPopupEdit.vue @@ -7,12 +7,21 @@
- - - + + + + + + + + +
@@ -201,6 +211,9 @@
+ + {{col.label }}: + - diff --git a/src/root/home_pdnm/home_pdnm.vue b/src/root/home_pdnm/home_pdnm.vue index f2f121df..8e431485 100755 --- a/src/root/home_pdnm/home_pdnm.vue +++ b/src/root/home_pdnm/home_pdnm.vue @@ -21,18 +21,21 @@ +
-
- -
- Ora Accedi al Bot Telegram
- per vedere tutti i Menu e le chat ! -
- -
-
+ + + + + +
+ Accedi al Bot Telegram
+ per vedere tutti i Menu e le chat ! +
+ +
diff --git a/src/statics/lang/it.js b/src/statics/lang/it.js index 00ab8097..525b4d87 100755 --- a/src/statics/lang/it.js +++ b/src/statics/lang/it.js @@ -825,6 +825,7 @@ const msg_it = { index: 'Posizione', riga: 'Riga', active: 'Attivo', + main: 'Menu Principale', lang: 'Lingua', label: 'Etichetta', type: 'Tipo', diff --git a/src/store/Modules/fieldsTable.ts b/src/store/Modules/fieldsTable.ts index c61d3e25..a0cf5208 100755 --- a/src/store/Modules/fieldsTable.ts +++ b/src/store/Modules/fieldsTable.ts @@ -152,7 +152,7 @@ export const colmybot = [ AddCol({ name: 'riga', label_trans: 'bot.riga', fieldtype: costanti.FieldType.number }), AddCol({ name: 'index', label_trans: 'bot.index', fieldtype: costanti.FieldType.number }), AddCol({ name: 'active', label_trans: 'bot.active', fieldtype: costanti.FieldType.boolean }), - AddCol({ name: 'lang', label_trans: 'bot.lang' }), + AddCol({ name: 'lang', label_trans: 'bot.lang', fieldtype: costanti.FieldType.select, jointable: 'lang' }), AddCol({ name: 'main', label_trans: 'bot.main', fieldtype: costanti.FieldType.boolean }), AddCol({ name: 'label', label_trans: 'bot.label' }), AddCol({ name: 'type', label_trans: 'bot.type', fieldtype: costanti.FieldType.select, jointable: 'bottype' }), @@ -1683,6 +1683,15 @@ export const fieldsTable = { colicon: 'icon', noshow: true, }, + { + value: 'lang', + label: 'Lingua', + columns: colTablePermission, + colkey: 'value', + collabel: 'label', + colicon: 'icon', + noshow: true, + }, { value: 'accepted', label: 'Condizioni', diff --git a/src/store/Modules/tools.ts b/src/store/Modules/tools.ts index 13a450b4..1afc9d2e 100644 --- a/src/store/Modules/tools.ts +++ b/src/store/Modules/tools.ts @@ -2,7 +2,7 @@ import { translation } from '@store/Modules/translation' import { IColl, ICollaborations, IDataToSet, - IEvents, + IEvents, IFriends, IListRoutes, IParamDialog, IPathFile, @@ -4345,17 +4345,17 @@ export const tools = { }, getColByLevel(level: number) { let col = '' - if (level === 0){ + if (level === 0) { col = 'grey-5' - } else if (level === 1){ + } else if (level === 1) { col = 'red-5' - } else if (level === 2){ + } else if (level === 2) { col = 'orange-5' - } else if (level === 3){ + } else if (level === 3) { col = 'yellow-5' - } else if (level === 4){ + } else if (level === 4) { col = 'blue-5' - } else if (level === 5){ + } else if (level === 5) { col = 'green-5' } return col @@ -4377,7 +4377,7 @@ export const tools = { return res.status !== PayloadMessageTypes.statusfound } - return Axios.post(VALIDATE_USER_URL, {idapp: process.env.APP_ID, email, key: process.env.PAO_APP_ID}) + return Axios.post(VALIDATE_USER_URL, { idapp: process.env.APP_ID, email, key: process.env.PAO_APP_ID }) .then(onSuccess) .catch((err) => { return true @@ -4386,10 +4386,73 @@ export const tools = { }, isEmail(email: string) { - const res = /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/; + const res = /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/ return res.test(String(email).toLowerCase()) }, + addToMyFriends($q: any, t: any, username: string, usernameDest: string) { + + const userStore = useUserStore() + $q.dialog({ + message: t('db.domanda_addtofriend', { username: usernameDest }), + ok: { label: t('dialog.yes'), push: true }, + cancel: { label: t('dialog.cancel') }, + title: t('db.domanda') + }).onOk(() => { + + userStore.setFriendsCmd($q, t, username, usernameDest, shared_consts.FRIENDSCMD.SETFRIEND, null) + .then((res: any) => { + if (res) { + userStore.my.profile.friends = [...userStore.my.profile.friends, res] + userStore.my.profile.req_friends = userStore.my.profile.req_friends.filter((rec: IFriends) => rec.username !== usernameDest) + tools.showPositiveNotif($q, t('db.addedfriend')) + } + }) + }) + }, + setRequestFriendship($q: any, t: any, username: string, usernameDest: string, value: boolean) { + + const userStore = useUserStore() + + let msg = '' + if (value) { + msg = t('db.domanda_ask_friend', { username: usernameDest }) + } else { + msg = t('db.domanda_revoke_friend', { username: usernameDest }) + } + + $q.dialog({ + message: msg, + ok: { + label: t('dialog.yes'), + push: true + }, + cancel: { + label: t('dialog.cancel') + }, + title: t('db.domanda') + }).onOk(() => { + + userStore.setFriendsCmd($q, t, username, usernameDest, shared_consts.FRIENDSCMD.REQFRIEND, value) + .then((res: any) => { + if (res) { + if (value) { + // ADD to req Friends + userStore.my.profile.asked_friends.push(res) + tools.showPositiveNotif($q, t('db.askedtofriend', { username: usernameDest })) + } else { + // REMOVE to req Friends + userStore.my.profile.asked_friends = userStore.my.profile.asked_friends.filter((rec: IUserFields) => rec.username !== usernameDest) + tools.showPositiveNotif($q, t('db.revoketofriend', { username: usernameDest })) + } + + } else { + tools.showNegativeNotif($q, t('db.recfailed')) + } + }) + }) + }, + // getLocale() { // if (navigator.languages && navigator.languages.length > 0) { diff --git a/src/store/globalStore.ts b/src/store/globalStore.ts index 497ea253..4a625efb 100644 --- a/src/store/globalStore.ts +++ b/src/store/globalStore.ts @@ -1295,6 +1295,7 @@ export const useGlobalStore = defineStore('GlobalStore', { if (table === 'metodo_pagamento') return tools.SelectMetodiPagamento if (table === 'bottype') return shared_consts.BotType if (table === 'visibility') return shared_consts.Visibility + if (table === 'lang') return shared_consts.Lang let myarr = this.getListByTable(table) diff --git a/src/views/user/myprofile/myprofile.ts b/src/views/user/myprofile/myprofile.ts index 244ffe15..af2876e8 100755 --- a/src/views/user/myprofile/myprofile.ts +++ b/src/views/user/myprofile/myprofile.ts @@ -13,6 +13,7 @@ import { toolsext } from '@store/Modules/toolsext' import { useQuasar } from 'quasar' import { costanti } from '@costanti' import { IUserFields } from 'model' +import { shared_consts } from '@/common/shared_vuejs' export default defineComponent({ @@ -22,6 +23,7 @@ export default defineComponent({ setup() { const userStore = useUserStore() const $route = useRoute() + const $q = useQuasar() const { t } = useI18n() const username = computed(() => $route.params.username ? $route.params.username.toString() : userStore.my.username) @@ -82,12 +84,16 @@ export default defineComponent({ tools, costanti, myuser, + shared_consts, getImgUser, checkifShow, getLinkUserTelegram, filtroutente, showPic, myusername, + userStore, + $q, + t, } } }) diff --git a/src/views/user/myprofile/myprofile.vue b/src/views/user/myprofile/myprofile.vue index 203e24dd..13fd671e 100755 --- a/src/views/user/myprofile/myprofile.vue +++ b/src/views/user/myprofile/myprofile.vue @@ -22,6 +22,14 @@ v-if="myuser.profile.nationality">({{ myuser.profile.nationality }})
+
+ +
+
{{ myuser.profile.biografia }}