Removed duplicate code and added member modal event (#10542)

* Removed duplicate code and added member modal event

* Removed console

* Removed console log
This commit is contained in:
Keith Holliday
2018-07-30 13:56:17 +08:00
committed by GitHub
parent 9205ec10b3
commit 2fc233e70f
4 changed files with 36 additions and 21 deletions

View File

@@ -344,14 +344,14 @@ export default {
this.tasksByType[task.type].splice(index, 1);
},
showMemberModal () {
// @TODO: Change these to options and add a custom event to members modal
this.$store.state.memberModalOptions.challengeId = this.challenge._id;
this.$store.state.memberModalOptions.groupId = 'challenge'; // @TODO: change these terrible settings
this.$store.state.memberModalOptions.group = this.group;
this.$store.state.memberModalOptions.memberCount = this.challenge.memberCount;
this.$store.state.memberModalOptions.viewingMembers = this.members;
this.$store.state.memberModalOptions.fetchMoreMembers = this.loadMembers;
this.$root.$emit('bv::show::modal', 'members-modal');
this.$root.$emit('habitica:show-member-modal', {
challengeId: this.challenge._id,
groupId: 'challenge', // @TODO: change these terrible settings
group: this.group,
memberCount: this.challenge.memberCount,
viewingMembers: this.members,
fetchMoreMembers: this.loadMembers,
});
},
async joinChallenge () {
this.user.challenges.push(this.searchId);

View File

@@ -426,12 +426,13 @@ export default {
return this.$store.dispatch('members:getGroupMembers', payload);
},
showMemberModal () {
this.$store.state.memberModalOptions.groupId = this.group._id;
this.$store.state.memberModalOptions.group = this.group;
this.$store.state.memberModalOptions.memberCount = this.group.memberCount;
this.$store.state.memberModalOptions.viewingMembers = this.members;
this.$store.state.memberModalOptions.fetchMoreMembers = this.loadMembers;
this.$root.$emit('bv::show::modal', 'members-modal');
this.$root.$emit('habitica:show-member-modal', {
groupId: this.group._id,
group: this.group,
memberCount: this.group.memberCount,
viewingMembers: this.members,
fetchMoreMembers: this.loadMembers,
});
},
fetchRecentMessages () {
this.fetchGuild();

View File

@@ -278,7 +278,20 @@ export default {
};
},
mounted () {
this.$root.$on('habitica:show-member-modal', (data) => {
// @TODO: Remove store
this.$store.state.memberModalOptions.challengeId = data.challengeId;
this.$store.state.memberModalOptions.groupId = data.groupId;
this.$store.state.memberModalOptions.group = data.group;
this.$store.state.memberModalOptions.memberCount = data.memberCount;
this.$store.state.memberModalOptions.viewingMembers = data.viewingMembers;
this.$store.state.memberModalOptions.fetchMoreMembers = data.fetchMoreMembers;
this.$root.$emit('bv::show::modal', 'members-modal');
this.getMembers();
});
},
destroyed () {
this.$root.$off('habitica:show-member-modal');
},
computed: {
...mapState({user: 'user.data'}),
@@ -363,6 +376,7 @@ export default {
});
this.invites = invites;
}
if (this.$store.state.memberModalOptions.viewingMembers.length > 0) {
this.members = this.$store.state.memberModalOptions.viewingMembers;
}

View File

@@ -176,11 +176,11 @@ export default {
}
},
showPartyMembers () {
// Set the party details for the members-modal component
this.$store.state.memberModalOptions.groupId = this.user.party._id;
this.$store.state.memberModalOptions.viewingMembers = this.partyMembers;
this.$store.state.memberModalOptions.group = this.user.party;
this.$root.$emit('bv::show::modal', 'members-modal');
this.$root.$emit('habitica:show-member-modal', {
groupId: this.user.party._id,
viewingMembers: this.partyMembers,
group: this.user.party,
});
},
setPartyMembersWidth ($event) {
if (this.currentWidth !== $event.width) {