comparison libpurple/protocols/qq/group.c @ 23754:967344bc404d

applied changes from f12c8903079425d7850fa183df0b3f937b2952be through 8cebefbc6cd5d84acb69c74e69e8821f11dd225d Backport of 8cebefbc6cd5d84acb69c74e69e8821f11dd225d to avoid having other changes overwritten. 2008.08.16 - ccpaging <ecc_hy(at)hotmail.com> * Rename group to room. If you used pidginqq before, this may create a new room with same title, you may delete old one * Replace purple_debug with purple_debug_info, purple_debug_warning, purple_debug_error * Add server notice and server new, and two options to turn on/off * Minor modify for reducing transaction's debug infor * Minor modifies for system notice and QQ news. * Add 4 new strings need translate compare with p10. committer: Daniel Atallah <daniel.atallah@gmail.com>
author SHiNE CsyFeK <csyfek@gmail.com>
date Mon, 15 Sep 2008 02:59:23 +0000
parents 5f454b975a99
children 69c218fd5d54 25f62d21b3f8
comparison
equal deleted inserted replaced
23753:5f454b975a99 23754:967344bc404d
62 62
63 m = NULL; 63 m = NULL;
64 64
65 pce = g_new0(struct proto_chat_entry, 1); 65 pce = g_new0(struct proto_chat_entry, 1);
66 pce->label = _("ID: "); 66 pce->label = _("ID: ");
67 pce->identifier = QQ_GROUP_KEY_EXTERNAL_ID; 67 pce->identifier = QQ_ROOM_KEY_EXTERNAL_ID;
68 m = g_list_append(m, pce); 68 m = g_list_append(m, pce);
69 69
70 return m; 70 return m;
71 } 71 }
72 72
75 GHashTable *defaults; 75 GHashTable *defaults;
76 76
77 defaults = g_hash_table_new_full(g_str_hash, g_str_equal, NULL, g_free); 77 defaults = g_hash_table_new_full(g_str_hash, g_str_equal, NULL, g_free);
78 78
79 if (chat_name != NULL) 79 if (chat_name != NULL)
80 g_hash_table_insert(defaults, QQ_GROUP_KEY_EXTERNAL_ID, g_strdup(chat_name)); 80 g_hash_table_insert(defaults, QQ_ROOM_KEY_EXTERNAL_ID, g_strdup(chat_name));
81 81
82 return defaults; 82 return defaults;
83 } 83 }
84 84
85 /* get a list of qq groups */ 85 /* get a list of qq groups */
94 94
95 fields = NULL; 95 fields = NULL;
96 rl = purple_roomlist_new(purple_connection_get_account(gc)); 96 rl = purple_roomlist_new(purple_connection_get_account(gc));
97 qd->roomlist = rl; 97 qd->roomlist = rl;
98 98
99 f = purple_roomlist_field_new(PURPLE_ROOMLIST_FIELD_STRING, _("Group ID"), QQ_GROUP_KEY_EXTERNAL_ID, FALSE); 99 f = purple_roomlist_field_new(PURPLE_ROOMLIST_FIELD_STRING, _("Group ID"), QQ_ROOM_KEY_EXTERNAL_ID, FALSE);
100 fields = g_list_append(fields, f); 100 fields = g_list_append(fields, f);
101 f = purple_roomlist_field_new(PURPLE_ROOMLIST_FIELD_STRING, _("Creator"), QQ_GROUP_KEY_CREATOR_UID, FALSE); 101 f = purple_roomlist_field_new(PURPLE_ROOMLIST_FIELD_STRING, _("Creator"), QQ_ROOM_KEY_CREATOR_UID, FALSE);
102 fields = g_list_append(fields, f); 102 fields = g_list_append(fields, f);
103 f = purple_roomlist_field_new(PURPLE_ROOMLIST_FIELD_STRING, 103 f = purple_roomlist_field_new(PURPLE_ROOMLIST_FIELD_STRING,
104 _("Group Description"), QQ_GROUP_KEY_GROUP_DESC_UTF8, FALSE); 104 _("Group Description"), QQ_ROOM_KEY_DESC_UTF8, FALSE);
105 fields = g_list_append(fields, f); 105 fields = g_list_append(fields, f);
106 f = purple_roomlist_field_new(PURPLE_ROOMLIST_FIELD_STRING, "", QQ_GROUP_KEY_INTERNAL_ID, TRUE); 106 f = purple_roomlist_field_new(PURPLE_ROOMLIST_FIELD_STRING, "", QQ_ROOM_KEY_INTERNAL_ID, TRUE);
107 fields = g_list_append(fields, f); 107 fields = g_list_append(fields, f);
108 f = purple_roomlist_field_new(PURPLE_ROOMLIST_FIELD_STRING, "", QQ_GROUP_KEY_TYPE, TRUE); 108 f = purple_roomlist_field_new(PURPLE_ROOMLIST_FIELD_STRING, "", QQ_ROOM_KEY_TYPE, TRUE);
109 fields = g_list_append(fields, f); 109 fields = g_list_append(fields, f);
110 f = purple_roomlist_field_new(PURPLE_ROOMLIST_FIELD_STRING, _("Auth"), QQ_GROUP_KEY_AUTH_TYPE, TRUE); 110 f = purple_roomlist_field_new(PURPLE_ROOMLIST_FIELD_STRING, _("Auth"), QQ_ROOM_KEY_AUTH_TYPE, TRUE);
111 fields = g_list_append(fields, f); 111 fields = g_list_append(fields, f);
112 f = purple_roomlist_field_new(PURPLE_ROOMLIST_FIELD_STRING, "", QQ_GROUP_KEY_GROUP_CATEGORY, TRUE); 112 f = purple_roomlist_field_new(PURPLE_ROOMLIST_FIELD_STRING, "", QQ_ROOM_KEY_CATEGORY, TRUE);
113 fields = g_list_append(fields, f); 113 fields = g_list_append(fields, f);
114 f = purple_roomlist_field_new(PURPLE_ROOMLIST_FIELD_STRING, "", QQ_GROUP_KEY_GROUP_NAME_UTF8, TRUE); 114 f = purple_roomlist_field_new(PURPLE_ROOMLIST_FIELD_STRING, "", QQ_ROOM_KEY_TITLE_UTF8, TRUE);
115 115
116 fields = g_list_append(fields, f); 116 fields = g_list_append(fields, f);
117 purple_roomlist_set_fields(rl, fields); 117 purple_roomlist_set_fields(rl, fields);
118 purple_roomlist_set_in_progress(qd->roomlist, TRUE); 118 purple_roomlist_set_in_progress(qd->roomlist, TRUE);
119 119
120 purple_request_input(gc, _("QQ Qun"), 120 purple_request_input(gc, _("QQ Qun"),
121 _("Please enter external group ID"), 121 _("Please enter Qun number"),
122 _("You can only search for permanent QQ groups\n"), 122 _("You can only search for permanent Qun\n"),
123 NULL, FALSE, FALSE, NULL, 123 NULL, FALSE, FALSE, NULL,
124 _("Search"), G_CALLBACK(_qq_group_search_callback), 124 _("Search"), G_CALLBACK(_qq_group_search_callback),
125 _("Cancel"), G_CALLBACK(_qq_group_search_cancel_callback), 125 _("Cancel"), G_CALLBACK(_qq_group_search_cancel_callback),
126 purple_connection_get_account(gc), NULL, NULL, 126 purple_connection_get_account(gc), NULL, NULL,
127 gc); 127 gc);
155 155
156 account = purple_connection_get_account(gc); 156 account = purple_connection_get_account(gc);
157 157
158 purple_group = purple_find_group(PURPLE_GROUP_QQ_QUN); 158 purple_group = purple_find_group(PURPLE_GROUP_QQ_QUN);
159 if (purple_group == NULL) { 159 if (purple_group == NULL) {
160 purple_debug(PURPLE_DEBUG_INFO, "QQ", "We have no QQ Qun\n"); 160 purple_debug_info("QQ", "We have no QQ Qun\n");
161 return; 161 return;
162 } 162 }
163 163
164 count = 0; 164 count = 0;
165 for (node = ((PurpleBlistNode *) purple_group)->child; node != NULL; node = node->next) { 165 for (node = ((PurpleBlistNode *) purple_group)->child; node != NULL; node = node->next) {
176 176
177 if (group->id <= 0) 177 if (group->id <= 0)
178 continue; 178 continue;
179 179
180 count++; 180 count++;
181 qq_send_room_cmd_only(gc, QQ_ROOM_CMD_GET_INFO, group->id);
182 } 181 }
183 182
184 purple_debug(PURPLE_DEBUG_INFO, "QQ", "Load %d QQ Qun configurations\n", count); 183 purple_debug_info("QQ", "Load %d QQ Qun configurations\n", count);
185 } 184 }