Group Page corrected

This commit is contained in:
paoloar77
2022-08-09 17:31:49 +02:00
parent 4cde86c113
commit 0c25bed597
18 changed files with 240 additions and 54 deletions

View File

@@ -191,6 +191,7 @@ export const costanti = {
USER_GROUPS: 22,
CREATE_GROUP: 30,
MANAGE_GROUPS: 31,
ADMIN_GROUPS: 40,
CMD_DELETE: 1,
CMD_MODIFY: 2,

View File

@@ -596,6 +596,7 @@ export const colmyUserGroup = [
fieldtype: costanti.FieldType.multiselect,
jointable: 'friendsandme',
field_outtype: costanti.FieldType.object,
showWhen: costanti.showWhen.InView_OnlyifExist,
}),
AddCol({
name: 'date_created', label_trans: 'reg.pub_created', fieldtype: costanti.FieldType.onlydate,

View File

@@ -4811,6 +4811,54 @@ export const tools = {
})
},
addtoAdminOfMyGroup($q: any, username: string, groupnameDest: string, domanda: any = '') {
const userStore = useUserStore()
$q.dialog({
message: domanda ? domanda : t('db.domanda_addadminofmygroup', { username, groupnameDest }),
ok: { label: t('dialog.yes'), push: true },
cancel: { label: t('dialog.cancel') },
title: t('db.domanda')
}).onOk(() => {
userStore.setGroupsCmd($q, t, username, groupnameDest, shared_consts.GROUPSCMD.ADDADMIN_OFMYGROUP, null).then((res) => {
if (res) {
const mygrp = userStore.my.profile.manage_mygroups.find((rec: IMyGroup) => rec.groupname === groupnameDest)
console.log('mygrp', mygrp)
if (mygrp && mygrp.admins) {
mygrp.admins = [...mygrp.admins, {username, date: new Date}]
console.log('mygrp.admins', mygrp.admins)
tools.showPositiveNotif($q, t('db.addedtoadmin', { username }))
}
}
})
})
},
removeAdminOfMyGroup($q: any, username: string, groupnameDest: string, domanda: any = '') {
const userStore = useUserStore()
$q.dialog({
message: domanda ? domanda : t('db.domanda_removeadminofmygroup', { username, groupnameDest }),
ok: { label: t('dialog.yes'), push: true },
cancel: { label: t('dialog.cancel') },
title: t('db.domanda')
}).onOk(() => {
userStore.setGroupsCmd($q, t, username, groupnameDest, shared_consts.GROUPSCMD.REMOVEADMIN_OFMYGROUP, null).then((res) => {
if (res) {
const mygrp = userStore.my.profile.manage_mygroups.find((rec: IMyGroup) => rec.groupname === groupnameDest)
console.log('mygrp', mygrp)
if (mygrp && mygrp.admins) {
mygrp.admins = mygrp.admins.filter((rec: any) => rec.username !== username)
console.log('mygrp.admins', mygrp.admins)
tools.showPositiveNotif($q, t('db.removedtoadmin', { username }))
}
}
})
})
},
DeleteGroup($q: any, username: string, groupnameDest: string, domanda: any = '') {
const userStore = useUserStore()
@@ -5107,6 +5155,69 @@ export const tools = {
},
iAmTheCreatorOfTheGroup(groupname: string) {
const userStore = useUserStore()
let risultato = false
if (userStore.my.profile.manage_mygroups) {
const ris = userStore.my.profile.manage_mygroups.find((grp: IMyGroup) => {
if (grp.groupname === groupname) {
return true
}
})
// console.log('ris', ris)
return (ris && ris.createdBy === userStore.my.username)
}
return risultato
},
isUserTheCreatorOfTheGroup(groupname: string, username: string) {
const userStore = useUserStore()
let risultato = false
if (userStore.my.profile.manage_mygroups) {
const ris = userStore.my.profile.manage_mygroups.find((grp: IMyGroup) => {
if (grp.groupname === groupname) {
return true
}
})
// console.log('ris', ris)
return (ris && ris.createdBy === username)
}
return risultato
},
isUserAdminGroup(groupname: string, username: string) {
const userStore = useUserStore()
let risultato = false
if (userStore.my.profile.manage_mygroups) {
const ris = userStore.my.profile.manage_mygroups.find((grp: IMyGroup) => {
if (grp.groupname === groupname) {
return true
}
})
// console.log('ris', ris)
if (ris && ris.admins) {
const isadmin = ris.admins.find((user: IFriends) => user.username === username)
risultato = !!isadmin
}
}
return risultato
},
setCmd($q: any, cmd: number, username: string, value: any, dest: string) {
console.log('setcmd', cmd)
if (cmd === shared_consts.GROUPSCMD.REMOVE_FROM_MYGROUP) {
@@ -5117,6 +5228,10 @@ export const tools = {
tools.blockGroup($q, username, dest)
} else if (cmd === shared_consts.GROUPSCMD.SETGROUP) {
tools.addToMyGroups($q, username, dest)
} else if (cmd === shared_consts.GROUPSCMD.ADDADMIN_OFMYGROUP) {
tools.addtoAdminOfMyGroup($q, username, dest)
} else if (cmd === shared_consts.GROUPSCMD.REMOVEADMIN_OFMYGROUP) {
tools.removeAdminOfMyGroup($q, username, dest)
} else if (cmd === shared_consts.GROUPSCMD.REQGROUP) {
tools.setRequestGroup($q, username, dest, value)
} else if (cmd === shared_consts.GROUPSCMD.REFUSE_REQ_GROUP) {

View File

@@ -811,7 +811,8 @@ export const useGlobalStore = defineStore('GlobalStore', {
return Api.SendReq('/gettable', 'POST', params)
.then((res) => {
this.serverError = false
// console.table(res)
// if (tools.isDebug())
// console.table(res)
return res.data
})
.catch((error) => {