- /* <- :twisted.oscnet.org 330 w00t2 w00t2 w00t :is logged in as */
- virtual void OnWhois(userrec* source, userrec* dest)
+/** Channel mode +R - unidentified users cannot join
+ */
+class AChannel_R : public SimpleChannelModeHandler
+{
+ public:
+ AChannel_R(Module* Creator) : SimpleChannelModeHandler(Creator, "reginvite", 'R') { }
+};
+
+/** User mode +R - unidentified users cannot message
+ */
+class AUser_R : public SimpleUserModeHandler
+{
+ public:
+ AUser_R(Module* Creator) : SimpleUserModeHandler(Creator, "regdeaf", 'R') { }
+};
+
+/** Channel mode +M - unidentified users cannot message channel
+ */
+class AChannel_M : public SimpleChannelModeHandler
+{
+ public:
+ AChannel_M(Module* Creator) : SimpleChannelModeHandler(Creator, "regmoderated", 'M') { }
+};
+
+class ModuleServicesAccount : public Module
+{
+ AChannel_R m1;
+ AChannel_M m2;
+ AUser_R m3;
+ Channel_r m4;
+ User_r m5;
+ AccountExtItem accountname;
+ public:
+ ModuleServicesAccount() : m1(this), m2(this), m3(this), m4(this), m5(this),
+ accountname("accountname", this)