Mercurial > pidgin
diff libpurple/protocols/qq/group.c @ 25141:5ace6c024230
propagate from branch 'im.pidgin.pidgin' (head 7821a3549d7d99473e999dc067afc4218addcc1e)
to branch 'local.struct.hiding' (head 4235f268e41a5ad75efa1010b697599c0c0dd28a)
author | Sadrul Habib Chowdhury <imadil@gmail.com> |
---|---|
date | Fri, 31 Oct 2008 07:59:46 +0000 |
parents | 16734635febf 1ee91ff0d5fe |
children |
line wrap: on
line diff
--- a/libpurple/protocols/qq/group.c Sat Oct 04 21:46:10 2008 +0000 +++ b/libpurple/protocols/qq/group.c Fri Oct 31 07:59:46 2008 +0000 @@ -30,20 +30,19 @@ #include "group_internal.h" #include "group_info.h" -#include "group_search.h" +#include "group_join.h" #include "utils.h" #include "qq_network.h" -#include "header_info.h" -#include "group.h" +#include "qq_define.h" static void _qq_group_search_callback(PurpleConnection *gc, const gchar *input) { guint32 ext_id; g_return_if_fail(input != NULL); - ext_id = qq_string_to_dec_value(input); + ext_id = strtol(input, NULL, 10); /* 0x00000000 means search for demo group */ - qq_send_cmd_group_search_group(gc, ext_id); + qq_request_room_search(gc, ext_id, QQ_ROOM_SEARCH_ONLY); } static void _qq_group_search_cancel_callback(PurpleConnection *gc, const gchar *input) @@ -98,20 +97,8 @@ f = purple_roomlist_field_new(PURPLE_ROOMLIST_FIELD_STRING, _("Group ID"), QQ_ROOM_KEY_EXTERNAL_ID, FALSE); fields = g_list_append(fields, f); - f = purple_roomlist_field_new(PURPLE_ROOMLIST_FIELD_STRING, _("Creator"), QQ_ROOM_KEY_CREATOR_UID, FALSE); - fields = g_list_append(fields, f); - f = purple_roomlist_field_new(PURPLE_ROOMLIST_FIELD_STRING, - _("Group Description"), QQ_ROOM_KEY_DESC_UTF8, FALSE); - fields = g_list_append(fields, f); f = purple_roomlist_field_new(PURPLE_ROOMLIST_FIELD_STRING, "", QQ_ROOM_KEY_INTERNAL_ID, TRUE); fields = g_list_append(fields, f); - f = purple_roomlist_field_new(PURPLE_ROOMLIST_FIELD_STRING, "", QQ_ROOM_KEY_TYPE, TRUE); - fields = g_list_append(fields, f); - f = purple_roomlist_field_new(PURPLE_ROOMLIST_FIELD_STRING, _("Auth"), QQ_ROOM_KEY_AUTH_TYPE, TRUE); - fields = g_list_append(fields, f); - f = purple_roomlist_field_new(PURPLE_ROOMLIST_FIELD_STRING, "", QQ_ROOM_KEY_CATEGORY, TRUE); - fields = g_list_append(fields, f); - f = purple_roomlist_field_new(PURPLE_ROOMLIST_FIELD_STRING, "", QQ_ROOM_KEY_TITLE_UTF8, TRUE); fields = g_list_append(fields, f); purple_roomlist_set_fields(rl, fields); @@ -142,43 +129,3 @@ purple_roomlist_set_in_progress(list, FALSE); purple_roomlist_unref(list); } - -/* this should be called upon signin, even when we did not open group chat window */ -void qq_group_init(PurpleConnection *gc) -{ - PurpleAccount *account; - PurpleChat *chat; - PurpleGroup *purple_group; - PurpleBlistNode *node; - qq_group *group; - gint count; - - account = purple_connection_get_account(gc); - - purple_group = purple_find_group(PURPLE_GROUP_QQ_QUN); - if (purple_group == NULL) { - purple_debug_info("QQ", "We have no QQ Qun\n"); - return; - } - - count = 0; - for (node = ((PurpleBlistNode *) purple_group)->child; node != NULL; node = node->next) { - if ( !PURPLE_BLIST_NODE_IS_CHAT(node)) { - continue; - } - /* got one */ - chat = (PurpleChat *) node; - if (account != purple_chat_get_account(chat)) /* not qq account*/ - continue; - group = qq_room_create_by_hashtable(gc, purple_chat_get_components(chat)); - if (group == NULL) - continue; - - if (group->id <= 0) - continue; - - count++; - } - - purple_debug_info("QQ", "Load %d QQ Qun configurations\n", count); -}