1 /* +------------------------------------+
\r * | Inspire Internet Relay Chat Daemon |
\r * +------------------------------------+
\r *
\r * InspIRCd is copyright (C) 2002-2007 ChatSpike-Dev.
\r * E-mail:
\r * <brain@chatspike.net>
\r * <Craig@chatspike.net>
\r *
\r * Written by Craig Edwards, Craig McLure, and others.
\r * This program is free but copyrighted software; see
\r * the file COPYING for details.
\r *
\r * ---------------------------------------------------
\r */
\r\r#ifndef __CMD_WHO_H__
\r#define __CMD_WHO_H__
\r\r// include the common header files
\r\r#include "users.h"
\r#include "channels.h"
\r\r/** Handle /WHO. These command handlers can be reloaded by the core,
\r * and handle basic RFC1459 commands. Commands within modules work
\r * the same way, however, they can be fully unloaded, where these
\r * may not.
\r */
\rclass cmd_who : public command_t
\r{
\r bool CanView(chanrec* chan, userrec* user);
\r bool opt_viewopersonly;
\r bool opt_showrealhost;
\r bool opt_unlimit;
\r bool opt_realname;
\r bool opt_mode;
\r bool opt_ident;
\r bool opt_metadata;
\r bool opt_port;
\r bool opt_away;
\r bool opt_local;
\r bool opt_far;
\r public:
\r /** Constructor for who.
\r */
\r cmd_who (InspIRCd* Instance) : command_t(Instance,"WHO",0,1) { syntax = "<server>|<nickname>|<channel>|<realname>|<host>|0 [ohurmMiaplf]"; }
\r void SendWhoLine(userrec* user, const std::string &initial, chanrec* ch, userrec* u, std::vector<std::string> &whoresults);
\r /** Handle command.
\r * @param parameters The parameters to the comamnd
\r * @param pcnt The number of parameters passed to teh command
\r * @param user The user issuing the command
\r * @return A value from CmdResult to indicate command success or failure.
\r */
\r CmdResult Handle(const char** parameters, int pcnt, userrec *user);
\r bool whomatch(userrec* user, const char* matchtext);
\r};
\r\r#endif
\r