Display correct kick modes

Defining both the kicker and the target before any code touches the
channel user list ensures that everything is passed to the template.
This commit is contained in:
dgw 2017-09-13 13:43:45 -05:00
parent 15b922595f
commit e4c6d78762
2 changed files with 7 additions and 7 deletions

View file

@ -1,6 +1,6 @@
{{> ../user_name nick=from}} {{> ../user_name nick=from.nick mode=from.mode}}
has kicked has kicked
{{> ../user_name nick=target mode=""}} {{> ../user_name nick=target.nick mode=target.mode}}
{{#if text}} {{#if text}}
<i class="part-reason">({{{parse text}}})</i> <i class="part-reason">({{{parse text}}})</i>
{{/if}} {{/if}}

View file

@ -11,12 +11,13 @@ module.exports = function(irc, network) {
return; return;
} }
const user = chan.findUser(data.kicked); const kicker = chan.findUser(data.nick);
const target = chan.findUser(data.kicked);
if (data.kicked === irc.user.nick) { if (data.kicked === irc.user.nick) {
chan.users = []; chan.users = [];
} else { } else {
chan.users = _.without(chan.users, user); chan.users = _.without(chan.users, target);
} }
client.emit("users", { client.emit("users", {
@ -26,9 +27,8 @@ module.exports = function(irc, network) {
var msg = new Msg({ var msg = new Msg({
type: Msg.Type.KICK, type: Msg.Type.KICK,
time: data.time, time: data.time,
mode: user.mode, from: kicker,
from: data.nick, target: target,
target: data.kicked,
text: data.message || "", text: data.message || "",
highlight: data.kicked === irc.user.nick, highlight: data.kicked === irc.user.nick,
self: data.nick === irc.user.nick self: data.nick === irc.user.nick