+bool cmd_who::CanView(chanrec* chan, userrec* user)
+{
+ if (!user || !chan)
+ return false;
+
+ /* Execute items in fastest-to-execute first order */
+ if (*user->oper)
+ return true;
+ else if (!chan->IsModeSet('s') && !chan->IsModeSet('p'))
+ return true;
+ else if (chan->HasUser(user))
+ return true;
+
+ return false;
+}
+