Group Page corrected
This commit is contained in:
@@ -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,
|
||||
|
||||
@@ -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,
|
||||
|
||||
@@ -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) {
|
||||
|
||||
Reference in New Issue
Block a user