comparison mcabber/src/jabglue.c @ 1166:c4da23bf8958

Add option 'muc_flag_joins'
author Mikael Berthe <mikael@lilotux.net>
date Sat, 17 Feb 2007 15:14:39 +0100
parents 683d64f2c055
children 03d8fafe8104
comparison
equal deleted inserted replaced
1165:d5b26a0a9771 1166:c4da23bf8958
1944 // Check for nickname change 1944 // Check for nickname change
1945 if (statuscode == 303 && mbnick) { 1945 if (statuscode == 303 && mbnick) {
1946 mbuf = g_strdup_printf("%s is now known as %s", rname, mbnick); 1946 mbuf = g_strdup_printf("%s is now known as %s", rname, mbnick);
1947 scr_WriteIncomingMessage(roomjid, mbuf, usttime, 1947 scr_WriteIncomingMessage(roomjid, mbuf, usttime,
1948 HBB_PREFIX_INFO|HBB_PREFIX_NOFLAG); 1948 HBB_PREFIX_INFO|HBB_PREFIX_NOFLAG);
1949 if (log_muc_conf) hlog_write_message(roomjid, 0, FALSE, mbuf); 1949 if (log_muc_conf)
1950 hlog_write_message(roomjid, 0, FALSE, mbuf);
1950 g_free(mbuf); 1951 g_free(mbuf);
1951 buddy_resource_setname(room_elt->data, rname, mbnick); 1952 buddy_resource_setname(room_elt->data, rname, mbnick);
1952 // Maybe it's _our_ nickname... 1953 // Maybe it's _our_ nickname...
1953 if (ournick && !strcmp(rname, ournick)) 1954 if (ournick && !strcmp(rname, ournick))
1954 buddy_setnickname(room_elt->data, mbnick); 1955 buddy_setnickname(room_elt->data, mbnick);
2024 } 2025 }
2025 } 2026 }
2026 } 2027 }
2027 2028
2028 msgflags = HBB_PREFIX_INFO; 2029 msgflags = HBB_PREFIX_INFO;
2029 if (!we_left) 2030 if (!we_left && settings_opt_get_int("muc_flag_joins") != 2)
2030 msgflags |= HBB_PREFIX_NOFLAG; 2031 msgflags |= HBB_PREFIX_NOFLAG;
2031 2032
2032 scr_WriteIncomingMessage(roomjid, mbuf, usttime, msgflags); 2033 scr_WriteIncomingMessage(roomjid, mbuf, usttime, msgflags);
2033 2034
2034 if (log_muc_conf) hlog_write_message(roomjid, 0, FALSE, mbuf); 2035 if (log_muc_conf)
2036 hlog_write_message(roomjid, 0, FALSE, mbuf);
2035 2037
2036 if (we_left) { 2038 if (we_left) {
2037 scr_LogPrint(LPRINT_LOGNORM, "%s", mbuf); 2039 scr_LogPrint(LPRINT_LOGNORM, "%s", mbuf);
2038 g_free(mbuf); 2040 g_free(mbuf);
2039 return; 2041 return;
2060 // Display current mbuf and create a new message for the member 2062 // Display current mbuf and create a new message for the member
2061 // Note: the usttime timestamp is related to the other member, 2063 // Note: the usttime timestamp is related to the other member,
2062 // so we use 0 here. 2064 // so we use 0 here.
2063 scr_WriteIncomingMessage(roomjid, mbuf, 0, 2065 scr_WriteIncomingMessage(roomjid, mbuf, 0,
2064 HBB_PREFIX_INFO|HBB_PREFIX_NOFLAG); 2066 HBB_PREFIX_INFO|HBB_PREFIX_NOFLAG);
2065 if (log_muc_conf) hlog_write_message(roomjid, 0, FALSE, mbuf); 2067 if (log_muc_conf)
2068 hlog_write_message(roomjid, 0, FALSE, mbuf);
2066 g_free(mbuf); 2069 g_free(mbuf);
2067 mbuf = g_strdup_printf("%s has joined", rname); 2070 mbuf = g_strdup_printf("%s has joined", rname);
2068 new_member = TRUE; 2071 new_member = TRUE;
2069 } 2072 }
2070 } else { 2073 } else {
2074 } else 2077 } else
2075 mbuf = NULL; 2078 mbuf = NULL;
2076 } 2079 }
2077 2080
2078 if (mbuf) { 2081 if (mbuf) {
2079 scr_WriteIncomingMessage(roomjid, mbuf, usttime, 2082 msgflags = HBB_PREFIX_INFO;
2080 HBB_PREFIX_INFO|HBB_PREFIX_NOFLAG); 2083 if (!settings_opt_get_int("muc_flag_joins"))
2081 if (log_muc_conf) hlog_write_message(roomjid, 0, FALSE, mbuf); 2084 msgflags |= HBB_PREFIX_NOFLAG;
2085 scr_WriteIncomingMessage(roomjid, mbuf, usttime, msgflags);
2086 if (log_muc_conf)
2087 hlog_write_message(roomjid, 0, FALSE, mbuf);
2082 g_free(mbuf); 2088 g_free(mbuf);
2083 } 2089 }
2084 } 2090 }
2085 2091
2086 // Update room member status 2092 // Update room member status