diff --git a/client/components/ContextMenu.vue b/client/components/ContextMenu.vue index a1cfefc2..5b0b99d8 100644 --- a/client/components/ContextMenu.vue +++ b/client/components/ContextMenu.vue @@ -75,14 +75,19 @@ export default { this.open(data.event, items); }, openUserContextMenu(data) { - const {network, channel} = this.$store.state.activeChannel; + const activeChannel = this.$store.state.activeChannel; + // If there's an active network and channel use them + let {network, channel} = activeChannel ? activeChannel : {network: null, channel: null}; - const items = generateUserContextMenu( - this.$root, - channel, - network, - channel.users.find((u) => u.nick === data.user.nick) || {nick: data.user.nick} - ); + // Use network and channel from event if specified + network = data.network ? data.network : network; + channel = data.channel ? data.channel : channel; + + const defaultUser = {nick: data.user.nick}; + let user = channel ? channel.users.find((u) => u.nick === data.user.nick) : defaultUser; + user = user ? user : defaultUser; + + const items = generateUserContextMenu(this.$root, channel, network, user); this.open(data.event, items); }, open(event, items) { diff --git a/client/components/Message.vue b/client/components/Message.vue index 96bdafcf..e27c50fd 100644 --- a/client/components/Message.vue +++ b/client/components/Message.vue @@ -24,9 +24,12 @@