]> jfr.im git - solanum.git/blobdiff - extensions/m_ojoin.c
Merge pull request #53 from ShadowNinja/clarify_U+R
[solanum.git] / extensions / m_ojoin.c
index 96a1775bb0c9e2814950f22bc9c7b24532ccbbdf..37a09050fdf8a9df0a4082ed499fb616a38156e7 100644 (file)
  */
 
 #include "stdinc.h"
-#include "tools.h"
 #include "channel.h"
-#include "client.h" 
+#include "client.h"
 #include "ircd.h"
 #include "numeric.h"
-#include "s_log.h"
+#include "logger.h"
 #include "s_serv.h"
 #include "s_conf.h"
-#include "s_newconf.h" 
+#include "s_newconf.h"
 #include "send.h"
 #include "whowas.h"
-#include "irc_string.h"
-#include "hash.h" 
+#include "match.h"
+#include "hash.h"
 #include "msg.h"
 #include "parse.h"
 #include "modules.h"
+#include "messages.h"
 
 static int mo_ojoin(struct Client *client_p, struct Client *source_p, int parc, const char *parv[]);
 
@@ -51,7 +51,6 @@ DECLARE_MODULE_AV1(ojoin, NULL, NULL, ojoin_clist, NULL, NULL, "$Revision: 3554
 
 /*
 ** mo_ojoin
-**      parv[0] = sender prefix
 **      parv[1] = channel
 */
 static int
@@ -67,7 +66,7 @@ mo_ojoin(struct Client *client_p, struct Client *source_p, int parc, const char
                return 0;
        }
 
-       if(*parv[1] == '@' || *parv[1] == '%' || *parv[1] == '+')
+       if(*parv[1] == '@' || *parv[1] == '+')
        {
                parv[1]++;
                move_me = 1;
@@ -106,12 +105,7 @@ mo_ojoin(struct Client *client_p, struct Client *source_p, int parc, const char
                sendto_server(client_p, chptr, CAP_TS6, NOCAPS,
                              ":%s SJOIN %ld %s + :@%s",
                              me.id, (long) chptr->channelts, chptr->chname, source_p->id);
-               sendto_server(client_p, chptr, NOCAPS, CAP_TS6,
-                             ":%s SJOIN %ld %s + :@%s",
-                             me.name, (long) chptr->channelts, chptr->chname, source_p->name);
-               sendto_channel_local(ALL_MEMBERS, chptr, ":%s!%s@%s JOIN %s",
-                                    source_p->name,
-                                    source_p->username, source_p->host, chptr->chname);
+               send_channel_join(chptr, source_p);
                sendto_channel_local(ALL_MEMBERS, chptr, ":%s MODE %s +o %s",
                                     me.name, chptr->chname, source_p->name);
 
@@ -122,12 +116,7 @@ mo_ojoin(struct Client *client_p, struct Client *source_p, int parc, const char
                sendto_server(client_p, chptr, CAP_TS6, NOCAPS,
                              ":%s SJOIN %ld %s + :+%s",
                              me.id, (long) chptr->channelts, chptr->chname, source_p->id);
-               sendto_server(client_p, chptr, NOCAPS, CAP_TS6,
-                             ":%s SJOIN %ld %s + :+%s",
-                             me.name, (long) chptr->channelts, chptr->chname, source_p->name);
-               sendto_channel_local(ALL_MEMBERS, chptr, ":%s!%s@%s JOIN %s",
-                                    source_p->name,
-                                    source_p->username, source_p->host, chptr->chname);
+               send_channel_join(chptr, source_p);
                sendto_channel_local(ALL_MEMBERS, chptr, ":%s MODE %s +v %s",
                                     me.name, chptr->chname, source_p->name);
        }
@@ -137,12 +126,7 @@ mo_ojoin(struct Client *client_p, struct Client *source_p, int parc, const char
                sendto_server(client_p, chptr, CAP_TS6, NOCAPS,
                              ":%s JOIN %ld %s +",
                              source_p->id, (long) chptr->channelts, chptr->chname);
-               sendto_server(client_p, chptr, NOCAPS, CAP_TS6,
-                             ":%s SJOIN %ld %s + :%s",
-                             me.name, (long) chptr->channelts, chptr->chname, source_p->name);
-               sendto_channel_local(ALL_MEMBERS, chptr, ":%s!%s@%s JOIN %s",
-                                    source_p->name,
-                                    source_p->username, source_p->host, chptr->chname);
+               send_channel_join(chptr, source_p);
        }
 
        /* send the topic... */
@@ -154,7 +138,7 @@ mo_ojoin(struct Client *client_p, struct Client *source_p, int parc, const char
                           source_p->name, chptr->chname, chptr->topic_info, chptr->topic_time);
        }
 
-       source_p->localClient->last_join_time = CurrentTime;
+       source_p->localClient->last_join_time = rb_current_time();
        channel_member_names(chptr, source_p, 1);
 
        return 0;