state->cli_change[i].client,
state->cli_change[i].oplevel);
- if(MyUser(state->sptr) && (state->chptr->mode.mode & MODE_AUDITORIUM) && (state->cli_change[i].flag & MODE_CHANOP)) {
- do_names(state->sptr, state->chptr, NAMES_ALL|NAMES_EON|((member->status & MODE_CHANOP) ? 0 : NAMES_OPS));
+ if(MyUser(member->user) && (member->channel->mode.mode & MODE_AUDITORIUM) && (state->cli_change[i].flag & MODE_CHANOP)) {
+ do_names(member->user, member->channel, NAMES_ALL|NAMES_EON|((member->status & MODE_CHANOP) ? 0 : NAMES_OPS));
}
} /* for (i = 0; state->cli_change[i].flags; i++) */
}
}
}
- if((chan->mode.mode & MODE_DELJOINS) && !(flags & CHFL_VOICED_OR_OPPED)) {
+ if((chan->mode.mode & MODE_AUDITORIUM) && !(flags & CHFL_VOICED_OR_OPPED)) {
//we have to send this JOIN event to ops only...
sendcmdto_channel_butserv_butone(jbuf->jb_source, CMD_JOIN, chan, NULL, SKIP_NONOPS, "%H", chan);
if(MyUser(jbuf->jb_source))
if (!ShowChannel(sptr, ch2ptr))
continue; /* Don't show secret chans. */
else if ((member = find_channel_member(sptr, ch2ptr))) {
-
- do_names(sptr, ch2ptr, showingdelayed|NAMES_ALL|((chptr->mode.mode & MODE_AUDITORIUM) && !(member->status & MODE_CHANOP) ? NAMES_OPS : 0)); /* Full list if we're in this chan. */
+ do_names(sptr, ch2ptr, showingdelayed|NAMES_ALL|((ch2ptr->mode.mode & MODE_AUDITORIUM) && !(member->status & MODE_CHANOP) ? NAMES_OPS : 0)); /* Full list if we're in this chan. */
} else
- do_names(sptr, ch2ptr, showingdelayed|NAMES_VIS|((chptr->mode.mode & MODE_AUDITORIUM) ? NAMES_OPS : 0));
+ do_names(sptr, ch2ptr, showingdelayed|NAMES_VIS|((ch2ptr->mode.mode & MODE_AUDITORIUM) ? NAMES_OPS : 0));
}
/* List all remaining users on channel '*' */