]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/modules/m_cban.cpp
Argh, i give up
[user/henk/code/inspircd.git] / src / modules / m_cban.cpp
index 9835bdf435665a75b4581cb73c6c7a789ffb1382..7b245bfb88564f48e296cfb2e6d171c3c2fc49b5 100644 (file)
  */
 
 #include "inspircd.h"
-#include <algorithm>
-#include "users.h"
-#include "channels.h"
-#include "modules.h"
-#include "configreader.h"
 
 /* $ModDesc: Gives /cban, aka C:lines. Think Q:lines, for channels. */
 
@@ -49,16 +44,17 @@ cbanlist cbans;
 
 /** Handle /CBAN
  */
-class cmd_cban : public command_t
+class CommandCban : public Command
 {
  public:
-       cmd_cban(InspIRCd* Me) : command_t(Me, "CBAN", 'o', 1)
+       CommandCban(InspIRCd* Me) : Command(Me, "CBAN", 'o', 1)
        {
                this->source = "m_cban.so";
                this->syntax = "<channel> [<duration> :<reason>]";
+               TRANSLATE4(TR_TEXT,TR_TEXT,TR_TEXT,TR_END);
        }
 
-       CmdResult Handle(const char** parameters, int pcnt, userrec *user)
+       CmdResult Handle(const char** parameters, int pcnt, User *user)
        {
                /* syntax: CBAN #channel time :reason goes here */
                /* 'time' is a human-readable timestring, like 2d3h2s. */
@@ -122,23 +118,21 @@ bool CBanComp(const CBan &ban1, const CBan &ban2)
 
 class ModuleCBan : public Module
 {
-       cmd_cban* mycommand;
+       CommandCban* mycommand;
        
 
  public:
        ModuleCBan(InspIRCd* Me) : Module(Me)
        {
                
-               mycommand = new cmd_cban(Me);
+               mycommand = new CommandCban(Me);
                ServerInstance->AddCommand(mycommand);
+               Implementation eventlist[] = { I_OnUserPreJoin, I_OnSyncOtherMetaData, I_OnDecodeMetaData, I_OnStats };
+               ServerInstance->Modules->Attach(eventlist, this, 4);
        }
 
-       void Implements(char* List)
-       {
-               List[I_OnUserPreJoin] = List[I_OnSyncOtherMetaData] = List[I_OnDecodeMetaData] = List[I_OnStats] = 1;
-       }
        
-       virtual int OnStats(char symbol, userrec* user, string_list &results)
+       virtual int OnStats(char symbol, User* user, string_list &results)
        {
                ExpireBans();
        
@@ -154,7 +148,7 @@ class ModuleCBan : public Module
                return 0;
        }
 
-       virtual int OnUserPreJoin(userrec *user, chanrec *chan, const char *cname, std::string &privs)
+       virtual int OnUserPreJoin(User *user, Channel *chan, const char *cname, std::string &privs)
        {
                ExpireBans();