MODEACTION_ALLOW = 1 /* Allow the mode */
};
-class ModeOutput
-{
- private:
- std::string par;
- ModeAction act;
- public:
- ModeOutput(std::string parameter, ModeAction action);
- ModeAction GetAction();
- std::string& GetParameter();
-};
-
class ModeHandler
{
char mode;
int GetNumParams();
char GetModeChar();
- virtual ModeOutput OnModeChange(userrec* source, userrec* dest, chanrec* channel, const std::string ¶meter, bool adding);
+ virtual ModeAction OnModeChange(userrec* source, userrec* dest, chanrec* channel, std::string ¶meter, bool adding); /* Can change the mode parameter as its a ref */
virtual void DisplayList(userrec* user, chanrec* channel);
virtual bool CheckTimeStamp(time_t theirs, time_t ours, const std::string &their_param, const std::string &our_param, chanrec* channel);
};
char GetModeChar();
ModeType GetModeType();
- virtual bool BeforeMode(userrec* source, userrec* dest, chanrec* channel, const std::string ¶meter, bool adding);
+ virtual bool BeforeMode(userrec* source, userrec* dest, chanrec* channel, std::string ¶meter, bool adding); /* Can change the mode parameter */
virtual void AfterMode(userrec* source, userrec* dest, chanrec* channel, const std::string ¶meter, bool adding);
};
extern time_t TIME;
-ModeOutput::ModeOutput(std::string parameter, ModeAction action) : par(parameter), act(action)
-{
-}
-
-ModeAction ModeOutput::GetAction()
-{
- return act;
-}
-
-std::string& ModeOutput::GetParameter()
-{
- return par;
-}
-
ModeHandler::ModeHandler(char modeletter, int parameters, bool listmode, ModeType type, bool operonly) : mode(modeletter), n_params(parameters), list(listmode), m_type(type), oper(operonly)
{
}
return mode;
}
-ModeOutput ModeHandler::OnModeChange(userrec* source, userrec* dest, chanrec* channel, const std::string ¶meter, bool adding)
+ModeAction ModeHandler::OnModeChange(userrec* source, userrec* dest, chanrec* channel, std::string ¶meter, bool adding)
{
- return ModeOutput("", MODEACTION_DENY);
+ return MODEACTION_DENY;
}
void ModeHandler::DisplayList(userrec* user, chanrec* channel)
return m_type;
}
-bool ModeWatcher::BeforeMode(userrec* source, userrec* dest, chanrec* channel, const std::string ¶meter, bool adding)
+bool ModeWatcher::BeforeMode(userrec* source, userrec* dest, chanrec* channel, std::string ¶meter, bool adding)
{
return true;
}