- /* HELLOOO, IS ANYBODY THERE? -- nope, just us. */
- user->WriteServ("353 %s = %s :%s", user->nick, Ptr->name, user->nick);
- user->WriteServ("366 %s %s :End of /NAMES list.", user->nick, Ptr->name);
- return 1;
+ if (ShowOps)
+ {
+ /* Leave the names list alone, theyre an op
+ * doing /names on the channel after joining it
+ */
+ if (Ptr->GetStatus(user) >= STATUS_OP)
+ {
+ nameslist = Ptr->GetUsers();
+ return 0;
+ }
+
+ /* Show all the opped users */
+ nl = *(Ptr->GetOppedUsers());
+ nl[user] = user->nick;
+ nameslist = &nl;
+ return 0;
+ }
+ else
+ {
+ /* HELLOOO, IS ANYBODY THERE? -- nope, just us. */
+ user->WriteServ("353 %s = %s :%s", user->nick, Ptr->name, user->nick);
+ user->WriteServ("366 %s %s :End of /NAMES list.", user->nick, Ptr->name);
+ return 1;
+ }