]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/modules/m_inviteexception.cpp
Socket engine tweaks to fix a glitch, and improvements to new m_ident
[user/henk/code/inspircd.git] / src / modules / m_inviteexception.cpp
index 8cca13b1e95f72573d21af91bf29f4520e20fd9c..7e126799544d78a0704f9a6c85554f338a1d1d95 100644 (file)
  * ---------------------------------------------------
  */
 
-#include <string>
-#include <vector>
-#include "users.h"
-#include "channels.h"
-#include "modules.h"
-#include "mode.h"
+#include "inspircd.h"
 #include "u_listmode.h"
 
 /* $ModDesc: Provides support for the +I channel mode */
@@ -51,7 +46,7 @@ public:
                ie = new InviteException(ServerInstance);
                if (!ServerInstance->AddMode(ie, 'I'))
                        throw ModuleException("Could not add new modes!");
-               ServerInstance->PublishInterface("ChannelBanList", this);
+               ServerInstance->Modules->PublishInterface("ChannelBanList", this);
        }
 
        virtual void Implements(char* List)
@@ -65,7 +60,7 @@ public:
                output.append(" INVEX=I");
        }
         
-       virtual int OnCheckInvite(userrec* user, chanrec* chan)
+       virtual int OnCheckInvite(User* user, Channel* chan)
        {
                if(chan != NULL)
                {
@@ -120,17 +115,17 @@ public:
                ie->DoCleanup(target_type, item);
        }
 
-       virtual void OnSyncChannel(chanrec* chan, Module* proto, void* opaque)
+       virtual void OnSyncChannel(Channel* chan, Module* proto, void* opaque)
        {
                ie->DoSyncChannel(chan, proto, opaque);
        }
 
-       virtual void OnChannelDelete(chanrec* chan)
+       virtual void OnChannelDelete(Channel* chan)
        {
                ie->DoChannelDelete(chan);
        }
 
-       virtual void OnRehash(userrec* user, const std::string &param)
+       virtual void OnRehash(User* user, const std::string &param)
        {
                ie->DoRehash();
        }
@@ -144,31 +139,8 @@ public:
        {
                ServerInstance->Modes->DelMode(ie);
                DELETE(ie);
-               ServerInstance->UnpublishInterface("ChannelBanList", this);
+               ServerInstance->Modules->UnpublishInterface("ChannelBanList", this);
        }
 };
 
-
-class ModuleInviteExceptionFactory : public ModuleFactory
-{
- public:
-       ModuleInviteExceptionFactory()
-       {
-       }
-       
-       ~ModuleInviteExceptionFactory()
-       {
-       }
-       
-       virtual Module * CreateModule(InspIRCd* Me)
-       {
-               return new ModuleInviteException(Me);
-       }
-       
-};
-
-
-extern "C" void * init_module( void )
-{
-       return new ModuleInviteExceptionFactory;
-}
+MODULE_INIT(ModuleInviteException)