comparison mcabber/src/jabglue.c @ 527:d721b3502a77

Notice when we are ejected from a room
author Mikael Berthe <mikael@lilotux.net>
date Sun, 20 Nov 2005 23:30:31 +0100
parents fc6bc26f891e
children aee9a279a0f3
comparison
equal deleted inserted replaced
526:980b4e6a1e8f 527:d721b3502a77
1222 if (!newname_noutf8) 1222 if (!newname_noutf8)
1223 scr_LogPrint(LPRINT_LOG, 1223 scr_LogPrint(LPRINT_LOG,
1224 "Decoding of new nickname has failed: %s", 1224 "Decoding of new nickname has failed: %s",
1225 mbnewnick); 1225 mbnewnick);
1226 mbuf = g_strdup_printf("%s is now known as %s", rname, 1226 mbuf = g_strdup_printf("%s is now known as %s", rname,
1227 (newname_noutf8 ? newname_noutf8 : "(?)")); 1227 (newname_noutf8 ? newname_noutf8 : "(?)"));
1228 scr_WriteIncomingMessage(r, mbuf, 0, 1228 scr_WriteIncomingMessage(r, mbuf, 0,
1229 HBB_PREFIX_INFO|HBB_PREFIX_NOFLAG); 1229 HBB_PREFIX_INFO|HBB_PREFIX_NOFLAG);
1230 if (log_muc_conf) hlog_write_message(r, 0, FALSE, mbuf); 1230 if (log_muc_conf) hlog_write_message(r, 0, FALSE, mbuf);
1231 g_free(mbuf); 1231 g_free(mbuf);
1232 if (newname_noutf8) { 1232 if (newname_noutf8) {
1240 } 1240 }
1241 1241
1242 // Check for departure/arrival 1242 // Check for departure/arrival
1243 if (!mbnewnick && mbrole == role_none) { 1243 if (!mbnewnick && mbrole == role_none) {
1244 gchar *mbuf; 1244 gchar *mbuf;
1245
1246 // If this is a leave, check if it is ourself
1247 m = buddy_getnickname(room_elt->data);
1248 if (m && !strcmp(rname, m)) {
1249 // _We_ have left! (kicked, banned, etc.)
1250 buddy_setnickname(room_elt->data, NULL);
1251 buddy_del_all_resources(room_elt->data);
1252 scr_LogPrint(LPRINT_LOGNORM, "You have left %s", r);
1253 scr_WriteIncomingMessage(r, "You have left", 0,
1254 HBB_PREFIX_INFO|HBB_PREFIX_NOFLAG);
1255 g_free(r);
1256 if (s) g_free(s);
1257 update_roster = TRUE;
1258 break;
1259 }
1260
1245 if (s) mbuf = g_strdup_printf("%s has left: %s", rname, s); 1261 if (s) mbuf = g_strdup_printf("%s has left: %s", rname, s);
1246 else mbuf = g_strdup_printf("%s has left", rname); 1262 else mbuf = g_strdup_printf("%s has left", rname);
1247 scr_WriteIncomingMessage(r, mbuf, 0, 1263 scr_WriteIncomingMessage(r, mbuf, 0,
1248 HBB_PREFIX_INFO|HBB_PREFIX_NOFLAG); 1264 HBB_PREFIX_INFO|HBB_PREFIX_NOFLAG);
1249 if (log_muc_conf) hlog_write_message(r, 0, FALSE, mbuf); 1265 if (log_muc_conf) hlog_write_message(r, 0, FALSE, mbuf);