*/
class User;
-/** Visibility data for a user.
- * If a user has a non-null instance of this class in their User,
- * then it is used to determine if this user is visible to other users
- * or not.
- */
-class CoreExport VisData
-{
- public:
- /** Create a visdata
- */
- VisData();
- /** Destroy a visdata
- */
- virtual ~VisData();
- /** Is this user visible to some other user?
- * @param user The other user to compare to
- * @return true True if the user is visible to the other user, false if not
- */
- virtual bool VisibleTo(User* user);
-};
-
/** Holds all information about a user
* This class stores all information about a user connected to the irc server. Everything about a
* connection is stored here primarily, from the user's socket ID (file descriptor) through to the
*/
ConnectClass *MyClass;
- /** User visibility state, see definition of VisData.
- */
- VisData* Visibility;
-
/** Hostname of connection.
* This should be valid as per RFC1035.
*/
*/
std::string sendq;
- /** Message user will quit with. Not to be set externally.
- */
- std::string quitmsg;
-
- /** Quit message shown to opers - not to be set externally.
- */
- std::string operquitmsg;
-
/** Whether or not to send an snotice about this user's quitting
*/
bool quietquit;
*/
void ShowRULES();
- /** Set oper-specific quit message shown to opers only when the user quits
- * (overrides any sent by QuitUser)
- */
- void SetOperQuit(const std::string &oquit);
-
- /** Get oper-specific quit message shown only to opers when the user quits.
- * (overrides any sent by QuitUser)
- */
- const std::string& GetOperQuit();
-
/** Increases a user's command penalty by a set amount.
*/
void IncreasePenalty(int increase);