sas             Fri Jan 12 07:27:54 2001 EDT

  Modified files:              
    /php4/ext/ircg      ircg.c 
  Log:
  Add a hook for signaling "you're gone" to the client on channel part
  
  
Index: php4/ext/ircg/ircg.c
diff -u php4/ext/ircg/ircg.c:1.18 php4/ext/ircg/ircg.c:1.19
--- php4/ext/ircg/ircg.c:1.18   Fri Jan 12 06:51:12 2001
+++ php4/ext/ircg/ircg.c        Fri Jan 12 07:27:53 2001
@@ -46,6 +46,7 @@
        FMT_MSG_ERROR,
        FMT_MSG_FATAL_ERROR,
        FMT_MSG_JOIN_LIST_END,
+       FMT_MSG_SELF_PART,
        NO_FMTS
 };
 
@@ -88,6 +89,7 @@
        "%f changes topic on %c to %m<br />",
        "Error: %m<br />",
        "Fatal Error: %m<br />",
+       "",
        ""
 };
 
@@ -402,6 +404,15 @@
        smart_str_free_ex(&m, 1);
 }
 
+static void part_handler(irconn_t *ircc, const char *channel, void *dummy)
+{
+       php_irconn_t *conn = dummy;
+       static smart_str m;
+
+       format_msg(MSG(conn, FMT_MSG_SELF_PART), channel, NULL, NULL, "", &m);
+       msg_send(conn, &m);
+}
+
 static void user_leave(irconn_t *ircc, const char *channel, smart_str *user, void 
*dummy)
 {
        php_irconn_t *conn = dummy;
@@ -487,7 +498,7 @@
 
        if (!conn) RETURN_FALSE;
        
-       irc_join(&conn->conn, Z_STRVAL_PP(p2), NULL, NULL, user_add, user_leave, 
user_kick, new_topic, conn);
+       irc_join(&conn->conn, Z_STRVAL_PP(p2), NULL, part_handler, user_add, 
+user_leave, user_kick, new_topic, conn);
        RETVAL_TRUE;
 }
 



-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]

Reply via email to