Thu, 20 Sep 2007 16:30:17 +0000
Use an independant status type for 'current media' stuff, instead of using
status attributes. This includes changes in both xmpp and msn.
Also, in MSN, CurrentMedia is sent with PSM if you turn on the status and
set the attributes on the account.
| 5309 | 1 | /** |
| 2 | * @file user.c User functions | |
| 3 | * | |
| 15884 | 4 | * purple |
| 5309 | 5 | * |
| 15884 | 6 | * Purple is the legal property of its developers, whose names are too numerous |
|
9198
e8eb6d5eb9eb
[gaim-migrate @ 9993]
Christian Hammond <chipx86@chipx86.com>
parents:
9193
diff
changeset
|
7 | * to list here. Please refer to the COPYRIGHT file distributed with this |
|
e8eb6d5eb9eb
[gaim-migrate @ 9993]
Christian Hammond <chipx86@chipx86.com>
parents:
9193
diff
changeset
|
8 | * source distribution. |
|
6701
7e2db9273748
[gaim-migrate @ 7227]
Christian Hammond <chipx86@chipx86.com>
parents:
5518
diff
changeset
|
9 | * |
| 5309 | 10 | * This program is free software; you can redistribute it and/or modify |
| 11 | * it under the terms of the GNU General Public License as published by | |
| 12 | * the Free Software Foundation; either version 2 of the License, or | |
| 13 | * (at your option) any later version. | |
| 14 | * | |
| 15 | * This program is distributed in the hope that it will be useful, | |
| 16 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 17 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 18 | * GNU General Public License for more details. | |
| 19 | * | |
| 20 | * You should have received a copy of the GNU General Public License | |
| 21 | * along with this program; if not, write to the Free Software | |
|
19859
71d37b57eff2
The FSF changed its address a while ago; our files were out of date.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
16912
diff
changeset
|
22 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA |
| 5309 | 23 | */ |
| 24 | #include "msn.h" | |
| 25 | #include "user.h" | |
|
9860
8f54a6091294
[gaim-migrate @ 10739]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
9776
diff
changeset
|
26 | #include "slp.h" |
| 5309 | 27 | |
| 13855 | 28 | /*new a user object*/ |
| 5309 | 29 | MsnUser * |
|
9193
6e76f1367896
[gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
8475
diff
changeset
|
30 | msn_user_new(MsnUserList *userlist, const char *passport, |
|
6e76f1367896
[gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
8475
diff
changeset
|
31 | const char *store_name) |
| 5309 | 32 | { |
| 33 | MsnUser *user; | |
| 34 | ||
|
9193
6e76f1367896
[gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
8475
diff
changeset
|
35 | user = g_new0(MsnUser, 1); |
| 5309 | 36 | |
|
9193
6e76f1367896
[gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
8475
diff
changeset
|
37 | user->userlist = userlist; |
| 5309 | 38 | |
|
9193
6e76f1367896
[gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
8475
diff
changeset
|
39 | msn_user_set_passport(user, passport); |
|
9209
3deda121206d
[gaim-migrate @ 10004]
Christian Hammond <chipx86@chipx86.com>
parents:
9198
diff
changeset
|
40 | msn_user_set_store_name(user, store_name); |
| 5309 | 41 | |
|
6858
a367cfd3e75f
[gaim-migrate @ 7403]
Christian Hammond <chipx86@chipx86.com>
parents:
6800
diff
changeset
|
42 | /* |
|
a367cfd3e75f
[gaim-migrate @ 7403]
Christian Hammond <chipx86@chipx86.com>
parents:
6800
diff
changeset
|
43 | * XXX This seems to reset the friendly name from what it should be |
|
a367cfd3e75f
[gaim-migrate @ 7403]
Christian Hammond <chipx86@chipx86.com>
parents:
6800
diff
changeset
|
44 | * to the passport when moving users. So, screw it :) |
|
a367cfd3e75f
[gaim-migrate @ 7403]
Christian Hammond <chipx86@chipx86.com>
parents:
6800
diff
changeset
|
45 | */ |
|
a367cfd3e75f
[gaim-migrate @ 7403]
Christian Hammond <chipx86@chipx86.com>
parents:
6800
diff
changeset
|
46 | #if 0 |
| 5309 | 47 | if (name != NULL) |
| 48 | msn_user_set_name(user, name); | |
|
6858
a367cfd3e75f
[gaim-migrate @ 7403]
Christian Hammond <chipx86@chipx86.com>
parents:
6800
diff
changeset
|
49 | #endif |
| 5309 | 50 | |
| 51 | return user; | |
| 52 | } | |
| 53 | ||
| 13855 | 54 | /*destroy a user object*/ |
| 5309 | 55 | void |
| 56 | msn_user_destroy(MsnUser *user) | |
| 57 | { | |
| 58 | g_return_if_fail(user != NULL); | |
| 59 | ||
|
5475
a2f856cac665
[gaim-migrate @ 5871]
Christian Hammond <chipx86@chipx86.com>
parents:
5363
diff
changeset
|
60 | if (user->clientcaps != NULL) |
|
a2f856cac665
[gaim-migrate @ 5871]
Christian Hammond <chipx86@chipx86.com>
parents:
5363
diff
changeset
|
61 | g_hash_table_destroy(user->clientcaps); |
|
5316
ec9cbe50e70c
[gaim-migrate @ 5688]
Christian Hammond <chipx86@chipx86.com>
parents:
5309
diff
changeset
|
62 | |
|
6701
7e2db9273748
[gaim-migrate @ 7227]
Christian Hammond <chipx86@chipx86.com>
parents:
5518
diff
changeset
|
63 | if (user->group_ids != NULL) |
|
20508
a8855578906a
Revert a bunch of whitespace changes so reviewing a diff against
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20494
diff
changeset
|
64 | { |
| 13899 | 65 | GList *l; |
|
20508
a8855578906a
Revert a bunch of whitespace changes so reviewing a diff against
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20494
diff
changeset
|
66 | for (l = user->group_ids; l != NULL; l = l->next) |
|
a8855578906a
Revert a bunch of whitespace changes so reviewing a diff against
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20494
diff
changeset
|
67 | { |
| 13899 | 68 | g_free(l->data); |
| 69 | } | |
|
6701
7e2db9273748
[gaim-migrate @ 7227]
Christian Hammond <chipx86@chipx86.com>
parents:
5518
diff
changeset
|
70 | g_list_free(user->group_ids); |
| 13899 | 71 | } |
|
6701
7e2db9273748
[gaim-migrate @ 7227]
Christian Hammond <chipx86@chipx86.com>
parents:
5518
diff
changeset
|
72 | |
|
6800
8f99c220b503
[gaim-migrate @ 7340]
Christian Hammond <chipx86@chipx86.com>
parents:
6788
diff
changeset
|
73 | if (user->msnobj != NULL) |
|
8f99c220b503
[gaim-migrate @ 7340]
Christian Hammond <chipx86@chipx86.com>
parents:
6788
diff
changeset
|
74 | msn_object_destroy(user->msnobj); |
|
8f99c220b503
[gaim-migrate @ 7340]
Christian Hammond <chipx86@chipx86.com>
parents:
6788
diff
changeset
|
75 | |
|
13695
64da09d24cbe
[gaim-migrate @ 16096]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
12315
diff
changeset
|
76 | g_free(user->passport); |
|
64da09d24cbe
[gaim-migrate @ 16096]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
12315
diff
changeset
|
77 | g_free(user->friendly_name); |
|
64da09d24cbe
[gaim-migrate @ 16096]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
12315
diff
changeset
|
78 | g_free(user->store_name); |
| 13855 | 79 | g_free(user->uid); |
|
13695
64da09d24cbe
[gaim-migrate @ 16096]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
12315
diff
changeset
|
80 | g_free(user->phone.home); |
|
64da09d24cbe
[gaim-migrate @ 16096]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
12315
diff
changeset
|
81 | g_free(user->phone.work); |
|
64da09d24cbe
[gaim-migrate @ 16096]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
12315
diff
changeset
|
82 | g_free(user->phone.mobile); |
|
21193
e918a1846d03
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20597
diff
changeset
|
83 | g_free(user->media.artist); |
|
e918a1846d03
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20597
diff
changeset
|
84 | g_free(user->media.title); |
|
e918a1846d03
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20597
diff
changeset
|
85 | g_free(user->media.album); |
| 5309 | 86 | |
| 87 | g_free(user); | |
| 88 | } | |
| 89 | ||
| 90 | void | |
|
10451
2df35a139363
[gaim-migrate @ 11717]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
10388
diff
changeset
|
91 | msn_user_update(MsnUser *user) |
|
2df35a139363
[gaim-migrate @ 11717]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
10388
diff
changeset
|
92 | { |
| 15884 | 93 | PurpleAccount *account; |
|
10451
2df35a139363
[gaim-migrate @ 11717]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
10388
diff
changeset
|
94 | |
|
2df35a139363
[gaim-migrate @ 11717]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
10388
diff
changeset
|
95 | account = user->userlist->session->account; |
|
2df35a139363
[gaim-migrate @ 11717]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
10388
diff
changeset
|
96 | |
|
21193
e918a1846d03
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20597
diff
changeset
|
97 | if (user->status != NULL) { |
|
e918a1846d03
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20597
diff
changeset
|
98 | gboolean offline = (strcmp(user->status, "offline") == 0); |
|
16183
92409c474659
Committing khc's msnp14 changes from Trac Ticket #148. --rlaager
Ka-Hing Cheung <khc@pidgin.im>
parents:
15884
diff
changeset
|
99 | purple_prpl_got_user_status(account, user->passport, user->status, |
|
21193
e918a1846d03
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20597
diff
changeset
|
100 | "message", user->statusline, NULL); |
|
e918a1846d03
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20597
diff
changeset
|
101 | |
|
e918a1846d03
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20597
diff
changeset
|
102 | if (!offline && user->media.title) { |
|
e918a1846d03
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20597
diff
changeset
|
103 | purple_prpl_got_user_status(account, user->passport, "tune", |
|
e918a1846d03
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20597
diff
changeset
|
104 | PURPLE_TUNE_ARTIST, user->media.artist, |
|
e918a1846d03
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20597
diff
changeset
|
105 | PURPLE_TUNE_ALBUM, user->media.album, |
|
e918a1846d03
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20597
diff
changeset
|
106 | PURPLE_TUNE_TITLE, user->media.title, |
|
e918a1846d03
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20597
diff
changeset
|
107 | NULL); |
|
e918a1846d03
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20597
diff
changeset
|
108 | } else { |
|
e918a1846d03
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20597
diff
changeset
|
109 | purple_prpl_got_user_status_deactive(account, user->passport, "tune"); |
|
e918a1846d03
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20597
diff
changeset
|
110 | } |
|
e918a1846d03
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20597
diff
changeset
|
111 | |
|
e918a1846d03
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20597
diff
changeset
|
112 | if (!offline && user->mobile) { |
| 15884 | 113 | purple_prpl_got_user_status(account, user->passport, "mobile", NULL); |
|
15602
6d1d20a9e297
This is my attempt at MSN mobile status, but I suspect MSN mobile status doesn't exist. If it's confirmed that it doesn't, I'll revert this. But I want to keep it for posterity, in case it does exist
Sean Egan <seanegan@pidgin.im>
parents:
15435
diff
changeset
|
114 | } else { |
| 15884 | 115 | purple_prpl_got_user_status_deactive(account, user->passport, "mobile"); |
|
15602
6d1d20a9e297
This is my attempt at MSN mobile status, but I suspect MSN mobile status doesn't exist. If it's confirmed that it doesn't, I'll revert this. But I want to keep it for posterity, in case it does exist
Sean Egan <seanegan@pidgin.im>
parents:
15435
diff
changeset
|
116 | } |
|
6d1d20a9e297
This is my attempt at MSN mobile status, but I suspect MSN mobile status doesn't exist. If it's confirmed that it doesn't, I'll revert this. But I want to keep it for posterity, in case it does exist
Sean Egan <seanegan@pidgin.im>
parents:
15435
diff
changeset
|
117 | } |
|
10451
2df35a139363
[gaim-migrate @ 11717]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
10388
diff
changeset
|
118 | |
|
2df35a139363
[gaim-migrate @ 11717]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
10388
diff
changeset
|
119 | if (user->idle) |
| 15884 | 120 | purple_prpl_got_user_idle(account, user->passport, TRUE, -1); |
|
10451
2df35a139363
[gaim-migrate @ 11717]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
10388
diff
changeset
|
121 | else |
| 15884 | 122 | purple_prpl_got_user_idle(account, user->passport, FALSE, 0); |
|
10451
2df35a139363
[gaim-migrate @ 11717]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
10388
diff
changeset
|
123 | } |
|
2df35a139363
[gaim-migrate @ 11717]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
10388
diff
changeset
|
124 | |
|
2df35a139363
[gaim-migrate @ 11717]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
10388
diff
changeset
|
125 | void |
|
2df35a139363
[gaim-migrate @ 11717]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
10388
diff
changeset
|
126 | msn_user_set_state(MsnUser *user, const char *state) |
|
2df35a139363
[gaim-migrate @ 11717]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
10388
diff
changeset
|
127 | { |
|
2df35a139363
[gaim-migrate @ 11717]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
10388
diff
changeset
|
128 | const char *status; |
|
2df35a139363
[gaim-migrate @ 11717]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
10388
diff
changeset
|
129 | |
|
2df35a139363
[gaim-migrate @ 11717]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
10388
diff
changeset
|
130 | if (!g_ascii_strcasecmp(state, "BSY")) |
|
2df35a139363
[gaim-migrate @ 11717]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
10388
diff
changeset
|
131 | status = "busy"; |
|
2df35a139363
[gaim-migrate @ 11717]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
10388
diff
changeset
|
132 | else if (!g_ascii_strcasecmp(state, "BRB")) |
|
2df35a139363
[gaim-migrate @ 11717]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
10388
diff
changeset
|
133 | status = "brb"; |
|
2df35a139363
[gaim-migrate @ 11717]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
10388
diff
changeset
|
134 | else if (!g_ascii_strcasecmp(state, "AWY")) |
|
2df35a139363
[gaim-migrate @ 11717]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
10388
diff
changeset
|
135 | status = "away"; |
|
2df35a139363
[gaim-migrate @ 11717]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
10388
diff
changeset
|
136 | else if (!g_ascii_strcasecmp(state, "PHN")) |
|
2df35a139363
[gaim-migrate @ 11717]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
10388
diff
changeset
|
137 | status = "phone"; |
|
2df35a139363
[gaim-migrate @ 11717]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
10388
diff
changeset
|
138 | else if (!g_ascii_strcasecmp(state, "LUN")) |
|
2df35a139363
[gaim-migrate @ 11717]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
10388
diff
changeset
|
139 | status = "lunch"; |
|
2df35a139363
[gaim-migrate @ 11717]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
10388
diff
changeset
|
140 | else |
|
2df35a139363
[gaim-migrate @ 11717]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
10388
diff
changeset
|
141 | status = "available"; |
|
2df35a139363
[gaim-migrate @ 11717]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
10388
diff
changeset
|
142 | |
|
2df35a139363
[gaim-migrate @ 11717]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
10388
diff
changeset
|
143 | if (!g_ascii_strcasecmp(state, "IDL")) |
|
2df35a139363
[gaim-migrate @ 11717]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
10388
diff
changeset
|
144 | user->idle = TRUE; |
|
2df35a139363
[gaim-migrate @ 11717]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
10388
diff
changeset
|
145 | else |
|
2df35a139363
[gaim-migrate @ 11717]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
10388
diff
changeset
|
146 | user->idle = FALSE; |
|
2df35a139363
[gaim-migrate @ 11717]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
10388
diff
changeset
|
147 | |
|
2df35a139363
[gaim-migrate @ 11717]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
10388
diff
changeset
|
148 | user->status = status; |
|
2df35a139363
[gaim-migrate @ 11717]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
10388
diff
changeset
|
149 | } |
|
2df35a139363
[gaim-migrate @ 11717]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
10388
diff
changeset
|
150 | |
|
2df35a139363
[gaim-migrate @ 11717]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
10388
diff
changeset
|
151 | void |
| 5309 | 152 | msn_user_set_passport(MsnUser *user, const char *passport) |
| 153 | { | |
| 154 | g_return_if_fail(user != NULL); | |
| 155 | ||
|
13695
64da09d24cbe
[gaim-migrate @ 16096]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
12315
diff
changeset
|
156 | g_free(user->passport); |
| 5309 | 157 | user->passport = g_strdup(passport); |
| 158 | } | |
| 159 | ||
| 160 | void | |
|
9193
6e76f1367896
[gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
8475
diff
changeset
|
161 | msn_user_set_friendly_name(MsnUser *user, const char *name) |
| 5309 | 162 | { |
| 163 | g_return_if_fail(user != NULL); | |
| 164 | ||
|
13695
64da09d24cbe
[gaim-migrate @ 16096]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
12315
diff
changeset
|
165 | g_free(user->friendly_name); |
|
9193
6e76f1367896
[gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
8475
diff
changeset
|
166 | user->friendly_name = g_strdup(name); |
|
6e76f1367896
[gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
8475
diff
changeset
|
167 | } |
| 5309 | 168 | |
|
9193
6e76f1367896
[gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
8475
diff
changeset
|
169 | void |
| 13888 | 170 | msn_user_set_statusline(MsnUser *user, const char *statusline) |
| 171 | { | |
| 172 | g_return_if_fail(user != NULL); | |
| 173 | ||
| 174 | g_free(user->statusline); | |
| 175 | user->statusline = g_strdup(statusline); | |
| 176 | } | |
| 177 | ||
| 178 | void | |
|
21193
e918a1846d03
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20597
diff
changeset
|
179 | msn_user_set_currentmedia(MsnUser *user, const CurrentMedia *media) |
|
16183
92409c474659
Committing khc's msnp14 changes from Trac Ticket #148. --rlaager
Ka-Hing Cheung <khc@pidgin.im>
parents:
15884
diff
changeset
|
180 | { |
|
92409c474659
Committing khc's msnp14 changes from Trac Ticket #148. --rlaager
Ka-Hing Cheung <khc@pidgin.im>
parents:
15884
diff
changeset
|
181 | g_return_if_fail(user != NULL); |
|
92409c474659
Committing khc's msnp14 changes from Trac Ticket #148. --rlaager
Ka-Hing Cheung <khc@pidgin.im>
parents:
15884
diff
changeset
|
182 | |
|
21193
e918a1846d03
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20597
diff
changeset
|
183 | g_free(user->media.title); |
|
e918a1846d03
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20597
diff
changeset
|
184 | g_free(user->media.album); |
|
e918a1846d03
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20597
diff
changeset
|
185 | g_free(user->media.artist); |
|
e918a1846d03
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20597
diff
changeset
|
186 | |
|
e918a1846d03
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20597
diff
changeset
|
187 | user->media.title = media ? g_strdup(media->title) : NULL; |
|
e918a1846d03
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20597
diff
changeset
|
188 | user->media.artist = media ? g_strdup(media->artist) : NULL; |
|
e918a1846d03
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20597
diff
changeset
|
189 | user->media.album = media ? g_strdup(media->album) : NULL; |
|
16183
92409c474659
Committing khc's msnp14 changes from Trac Ticket #148. --rlaager
Ka-Hing Cheung <khc@pidgin.im>
parents:
15884
diff
changeset
|
190 | } |
|
92409c474659
Committing khc's msnp14 changes from Trac Ticket #148. --rlaager
Ka-Hing Cheung <khc@pidgin.im>
parents:
15884
diff
changeset
|
191 | |
|
92409c474659
Committing khc's msnp14 changes from Trac Ticket #148. --rlaager
Ka-Hing Cheung <khc@pidgin.im>
parents:
15884
diff
changeset
|
192 | void |
|
9193
6e76f1367896
[gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
8475
diff
changeset
|
193 | msn_user_set_store_name(MsnUser *user, const char *name) |
|
6e76f1367896
[gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
8475
diff
changeset
|
194 | { |
|
6e76f1367896
[gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
8475
diff
changeset
|
195 | g_return_if_fail(user != NULL); |
|
6e76f1367896
[gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
8475
diff
changeset
|
196 | |
|
20508
a8855578906a
Revert a bunch of whitespace changes so reviewing a diff against
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20494
diff
changeset
|
197 | if (name != NULL) |
|
a8855578906a
Revert a bunch of whitespace changes so reviewing a diff against
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20494
diff
changeset
|
198 | { |
| 13870 | 199 | g_free(user->store_name); |
| 200 | user->store_name = g_strdup(name); | |
| 201 | } | |
| 5309 | 202 | } |
| 203 | ||
| 204 | void | |
| 13855 | 205 | msn_user_set_uid(MsnUser *user, const char *uid) |
| 206 | { | |
| 207 | g_return_if_fail(user != NULL); | |
| 208 | ||
| 209 | g_free(user->uid); | |
| 210 | user->uid = g_strdup(uid); | |
| 211 | } | |
| 212 | ||
| 213 | void | |
|
20525
5f619c387b5d
Make the MsnUser type an enum so we have fewer magic numbers
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20519
diff
changeset
|
214 | msn_user_set_type(MsnUser *user, MsnUserType type) |
| 13855 | 215 | { |
| 216 | g_return_if_fail(user != NULL); | |
| 217 | ||
| 218 | user->type = type; | |
| 219 | } | |
| 220 | ||
| 221 | void | |
|
20508
a8855578906a
Revert a bunch of whitespace changes so reviewing a diff against
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20494
diff
changeset
|
222 | msn_user_set_op(MsnUser *user, int list_op) |
| 13910 | 223 | { |
|
20508
a8855578906a
Revert a bunch of whitespace changes so reviewing a diff against
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20494
diff
changeset
|
224 | g_return_if_fail(user != NULL); |
|
a8855578906a
Revert a bunch of whitespace changes so reviewing a diff against
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20494
diff
changeset
|
225 | |
| 13910 | 226 | user->list_op |= list_op; |
| 5309 | 227 | } |
| 228 | ||
| 229 | void | |
|
20569
66628c75dada
Make block/unblock work right, as well as being add by a buddy. Finally fixes #723
Carlos Silva <typ0@pidgin.im>
parents:
20564
diff
changeset
|
230 | msn_user_unset_op(MsnUser *user, int list_op) |
|
66628c75dada
Make block/unblock work right, as well as being add by a buddy. Finally fixes #723
Carlos Silva <typ0@pidgin.im>
parents:
20564
diff
changeset
|
231 | { |
|
66628c75dada
Make block/unblock work right, as well as being add by a buddy. Finally fixes #723
Carlos Silva <typ0@pidgin.im>
parents:
20564
diff
changeset
|
232 | g_return_if_fail(user != NULL); |
|
66628c75dada
Make block/unblock work right, as well as being add by a buddy. Finally fixes #723
Carlos Silva <typ0@pidgin.im>
parents:
20564
diff
changeset
|
233 | |
|
66628c75dada
Make block/unblock work right, as well as being add by a buddy. Finally fixes #723
Carlos Silva <typ0@pidgin.im>
parents:
20564
diff
changeset
|
234 | user->list_op &= ~list_op; |
| 5309 | 235 | } |
| 236 | ||
| 237 | void | |
|
16538
c7e61e2917c9
Updates for the account buddy icon stuff. This doesn't yet work fully (and maybe not even partly), but it compiles.
Richard Laager <rlaager@pidgin.im>
parents:
15884
diff
changeset
|
238 | msn_user_set_buddy_icon(MsnUser *user, PurpleStoredImage *img) |
|
7590
54b26062c7e0
[gaim-migrate @ 8208]
Christian Hammond <chipx86@chipx86.com>
parents:
6858
diff
changeset
|
239 | { |
|
54b26062c7e0
[gaim-migrate @ 8208]
Christian Hammond <chipx86@chipx86.com>
parents:
6858
diff
changeset
|
240 | MsnObject *msnobj = msn_user_get_object(user); |
|
54b26062c7e0
[gaim-migrate @ 8208]
Christian Hammond <chipx86@chipx86.com>
parents:
6858
diff
changeset
|
241 | |
|
54b26062c7e0
[gaim-migrate @ 8208]
Christian Hammond <chipx86@chipx86.com>
parents:
6858
diff
changeset
|
242 | g_return_if_fail(user != NULL); |
|
54b26062c7e0
[gaim-migrate @ 8208]
Christian Hammond <chipx86@chipx86.com>
parents:
6858
diff
changeset
|
243 | |
|
16538
c7e61e2917c9
Updates for the account buddy icon stuff. This doesn't yet work fully (and maybe not even partly), but it compiles.
Richard Laager <rlaager@pidgin.im>
parents:
15884
diff
changeset
|
244 | if (img == NULL) |
|
7590
54b26062c7e0
[gaim-migrate @ 8208]
Christian Hammond <chipx86@chipx86.com>
parents:
6858
diff
changeset
|
245 | msn_user_set_object(user, NULL); |
|
16538
c7e61e2917c9
Updates for the account buddy icon stuff. This doesn't yet work fully (and maybe not even partly), but it compiles.
Richard Laager <rlaager@pidgin.im>
parents:
15884
diff
changeset
|
246 | else |
|
7590
54b26062c7e0
[gaim-migrate @ 8208]
Christian Hammond <chipx86@chipx86.com>
parents:
6858
diff
changeset
|
247 | { |
| 15884 | 248 | PurpleCipherContext *ctx; |
|
11164
4396374c0cd9
[gaim-migrate @ 13265]
Mark Doliner <markdoliner@pidgin.im>
parents:
10687
diff
changeset
|
249 | char *buf; |
|
16538
c7e61e2917c9
Updates for the account buddy icon stuff. This doesn't yet work fully (and maybe not even partly), but it compiles.
Richard Laager <rlaager@pidgin.im>
parents:
15884
diff
changeset
|
250 | gconstpointer data = purple_imgstore_get_data(img); |
|
c7e61e2917c9
Updates for the account buddy icon stuff. This doesn't yet work fully (and maybe not even partly), but it compiles.
Richard Laager <rlaager@pidgin.im>
parents:
15884
diff
changeset
|
251 | size_t size = purple_imgstore_get_size(img); |
|
11164
4396374c0cd9
[gaim-migrate @ 13265]
Mark Doliner <markdoliner@pidgin.im>
parents:
10687
diff
changeset
|
252 | char *base64; |
|
7590
54b26062c7e0
[gaim-migrate @ 8208]
Christian Hammond <chipx86@chipx86.com>
parents:
6858
diff
changeset
|
253 | unsigned char digest[20]; |
|
54b26062c7e0
[gaim-migrate @ 8208]
Christian Hammond <chipx86@chipx86.com>
parents:
6858
diff
changeset
|
254 | |
|
54b26062c7e0
[gaim-migrate @ 8208]
Christian Hammond <chipx86@chipx86.com>
parents:
6858
diff
changeset
|
255 | if (msnobj == NULL) |
|
54b26062c7e0
[gaim-migrate @ 8208]
Christian Hammond <chipx86@chipx86.com>
parents:
6858
diff
changeset
|
256 | { |
|
12315
4ac24fc43d8e
[gaim-migrate @ 14619]
Richard Laager <rlaager@pidgin.im>
parents:
11624
diff
changeset
|
257 | msnobj = msn_object_new(); |
|
9193
6e76f1367896
[gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
8475
diff
changeset
|
258 | msn_object_set_local(msnobj); |
|
7591
909b5c05c62d
[gaim-migrate @ 8209]
Christian Hammond <chipx86@chipx86.com>
parents:
7590
diff
changeset
|
259 | msn_object_set_type(msnobj, MSN_OBJECT_USERTILE); |
|
9193
6e76f1367896
[gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
8475
diff
changeset
|
260 | msn_object_set_location(msnobj, "TFR2C2.tmp"); |
|
7590
54b26062c7e0
[gaim-migrate @ 8208]
Christian Hammond <chipx86@chipx86.com>
parents:
6858
diff
changeset
|
261 | msn_object_set_creator(msnobj, msn_user_get_passport(user)); |
|
54b26062c7e0
[gaim-migrate @ 8208]
Christian Hammond <chipx86@chipx86.com>
parents:
6858
diff
changeset
|
262 | |
|
54b26062c7e0
[gaim-migrate @ 8208]
Christian Hammond <chipx86@chipx86.com>
parents:
6858
diff
changeset
|
263 | msn_user_set_object(user, msnobj); |
|
54b26062c7e0
[gaim-migrate @ 8208]
Christian Hammond <chipx86@chipx86.com>
parents:
6858
diff
changeset
|
264 | } |
|
9198
e8eb6d5eb9eb
[gaim-migrate @ 9993]
Christian Hammond <chipx86@chipx86.com>
parents:
9193
diff
changeset
|
265 | |
|
16538
c7e61e2917c9
Updates for the account buddy icon stuff. This doesn't yet work fully (and maybe not even partly), but it compiles.
Richard Laager <rlaager@pidgin.im>
parents:
15884
diff
changeset
|
266 | msn_object_set_image(msnobj, img); |
|
7590
54b26062c7e0
[gaim-migrate @ 8208]
Christian Hammond <chipx86@chipx86.com>
parents:
6858
diff
changeset
|
267 | |
|
54b26062c7e0
[gaim-migrate @ 8208]
Christian Hammond <chipx86@chipx86.com>
parents:
6858
diff
changeset
|
268 | /* Compute the SHA1D field. */ |
|
54b26062c7e0
[gaim-migrate @ 8208]
Christian Hammond <chipx86@chipx86.com>
parents:
6858
diff
changeset
|
269 | memset(digest, 0, sizeof(digest)); |
|
54b26062c7e0
[gaim-migrate @ 8208]
Christian Hammond <chipx86@chipx86.com>
parents:
6858
diff
changeset
|
270 | |
| 15884 | 271 | ctx = purple_cipher_context_new_by_name("sha1", NULL); |
|
16538
c7e61e2917c9
Updates for the account buddy icon stuff. This doesn't yet work fully (and maybe not even partly), but it compiles.
Richard Laager <rlaager@pidgin.im>
parents:
15884
diff
changeset
|
272 | purple_cipher_context_append(ctx, data, size); |
| 15884 | 273 | purple_cipher_context_digest(ctx, sizeof(digest), digest, NULL); |
|
7590
54b26062c7e0
[gaim-migrate @ 8208]
Christian Hammond <chipx86@chipx86.com>
parents:
6858
diff
changeset
|
274 | |
| 15884 | 275 | base64 = purple_base64_encode(digest, sizeof(digest)); |
|
7590
54b26062c7e0
[gaim-migrate @ 8208]
Christian Hammond <chipx86@chipx86.com>
parents:
6858
diff
changeset
|
276 | msn_object_set_sha1d(msnobj, base64); |
|
54b26062c7e0
[gaim-migrate @ 8208]
Christian Hammond <chipx86@chipx86.com>
parents:
6858
diff
changeset
|
277 | g_free(base64); |
|
54b26062c7e0
[gaim-migrate @ 8208]
Christian Hammond <chipx86@chipx86.com>
parents:
6858
diff
changeset
|
278 | |
|
16538
c7e61e2917c9
Updates for the account buddy icon stuff. This doesn't yet work fully (and maybe not even partly), but it compiles.
Richard Laager <rlaager@pidgin.im>
parents:
15884
diff
changeset
|
279 | msn_object_set_size(msnobj, size); |
|
7590
54b26062c7e0
[gaim-migrate @ 8208]
Christian Hammond <chipx86@chipx86.com>
parents:
6858
diff
changeset
|
280 | |
|
54b26062c7e0
[gaim-migrate @ 8208]
Christian Hammond <chipx86@chipx86.com>
parents:
6858
diff
changeset
|
281 | /* Compute the SHA1C field. */ |
|
54b26062c7e0
[gaim-migrate @ 8208]
Christian Hammond <chipx86@chipx86.com>
parents:
6858
diff
changeset
|
282 | buf = g_strdup_printf( |
|
54b26062c7e0
[gaim-migrate @ 8208]
Christian Hammond <chipx86@chipx86.com>
parents:
6858
diff
changeset
|
283 | "Creator%sSize%dType%dLocation%sFriendly%sSHA1D%s", |
|
54b26062c7e0
[gaim-migrate @ 8208]
Christian Hammond <chipx86@chipx86.com>
parents:
6858
diff
changeset
|
284 | msn_object_get_creator(msnobj), |
|
54b26062c7e0
[gaim-migrate @ 8208]
Christian Hammond <chipx86@chipx86.com>
parents:
6858
diff
changeset
|
285 | msn_object_get_size(msnobj), |
|
54b26062c7e0
[gaim-migrate @ 8208]
Christian Hammond <chipx86@chipx86.com>
parents:
6858
diff
changeset
|
286 | msn_object_get_type(msnobj), |
|
54b26062c7e0
[gaim-migrate @ 8208]
Christian Hammond <chipx86@chipx86.com>
parents:
6858
diff
changeset
|
287 | msn_object_get_location(msnobj), |
|
54b26062c7e0
[gaim-migrate @ 8208]
Christian Hammond <chipx86@chipx86.com>
parents:
6858
diff
changeset
|
288 | msn_object_get_friendly(msnobj), |
|
54b26062c7e0
[gaim-migrate @ 8208]
Christian Hammond <chipx86@chipx86.com>
parents:
6858
diff
changeset
|
289 | msn_object_get_sha1d(msnobj)); |
|
54b26062c7e0
[gaim-migrate @ 8208]
Christian Hammond <chipx86@chipx86.com>
parents:
6858
diff
changeset
|
290 | |
|
54b26062c7e0
[gaim-migrate @ 8208]
Christian Hammond <chipx86@chipx86.com>
parents:
6858
diff
changeset
|
291 | memset(digest, 0, sizeof(digest)); |
|
54b26062c7e0
[gaim-migrate @ 8208]
Christian Hammond <chipx86@chipx86.com>
parents:
6858
diff
changeset
|
292 | |
| 15884 | 293 | purple_cipher_context_reset(ctx, NULL); |
|
16891
6dfc8fe0eed1
Fix calculating SHA1C for buddy icons
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
16538
diff
changeset
|
294 | purple_cipher_context_append(ctx, (const guchar *)buf, strlen(buf)); |
| 15884 | 295 | purple_cipher_context_digest(ctx, sizeof(digest), digest, NULL); |
| 296 | purple_cipher_context_destroy(ctx); | |
|
7590
54b26062c7e0
[gaim-migrate @ 8208]
Christian Hammond <chipx86@chipx86.com>
parents:
6858
diff
changeset
|
297 | g_free(buf); |
|
54b26062c7e0
[gaim-migrate @ 8208]
Christian Hammond <chipx86@chipx86.com>
parents:
6858
diff
changeset
|
298 | |
| 15884 | 299 | base64 = purple_base64_encode(digest, sizeof(digest)); |
|
7590
54b26062c7e0
[gaim-migrate @ 8208]
Christian Hammond <chipx86@chipx86.com>
parents:
6858
diff
changeset
|
300 | msn_object_set_sha1c(msnobj, base64); |
|
54b26062c7e0
[gaim-migrate @ 8208]
Christian Hammond <chipx86@chipx86.com>
parents:
6858
diff
changeset
|
301 | g_free(base64); |
|
54b26062c7e0
[gaim-migrate @ 8208]
Christian Hammond <chipx86@chipx86.com>
parents:
6858
diff
changeset
|
302 | } |
|
54b26062c7e0
[gaim-migrate @ 8208]
Christian Hammond <chipx86@chipx86.com>
parents:
6858
diff
changeset
|
303 | } |
|
54b26062c7e0
[gaim-migrate @ 8208]
Christian Hammond <chipx86@chipx86.com>
parents:
6858
diff
changeset
|
304 | |
| 13855 | 305 | /*add group id to User object*/ |
|
7590
54b26062c7e0
[gaim-migrate @ 8208]
Christian Hammond <chipx86@chipx86.com>
parents:
6858
diff
changeset
|
306 | void |
| 13855 | 307 | msn_user_add_group_id(MsnUser *user, const char* id) |
|
6701
7e2db9273748
[gaim-migrate @ 7227]
Christian Hammond <chipx86@chipx86.com>
parents:
5518
diff
changeset
|
308 | { |
|
9193
6e76f1367896
[gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
8475
diff
changeset
|
309 | MsnUserList *userlist; |
| 15884 | 310 | PurpleAccount *account; |
| 311 | PurpleBuddy *b; | |
| 312 | PurpleGroup *g; | |
|
9193
6e76f1367896
[gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
8475
diff
changeset
|
313 | const char *passport; |
|
20474
b0ef257ef8d4
The second msn.tgz from SF Patch #1621854 from Ka-Hing Cheung.
Ka-Hing Cheung <khc@pidgin.im>
parents:
20472
diff
changeset
|
314 | char *group_id; |
|
9193
6e76f1367896
[gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
8475
diff
changeset
|
315 | const char *group_name; |
|
6e76f1367896
[gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
8475
diff
changeset
|
316 | |
|
6701
7e2db9273748
[gaim-migrate @ 7227]
Christian Hammond <chipx86@chipx86.com>
parents:
5518
diff
changeset
|
317 | g_return_if_fail(user != NULL); |
| 13855 | 318 | g_return_if_fail(id != NULL); |
|
6701
7e2db9273748
[gaim-migrate @ 7227]
Christian Hammond <chipx86@chipx86.com>
parents:
5518
diff
changeset
|
319 | |
| 13899 | 320 | group_id = g_strdup(id); |
|
20474
b0ef257ef8d4
The second msn.tgz from SF Patch #1621854 from Ka-Hing Cheung.
Ka-Hing Cheung <khc@pidgin.im>
parents:
20472
diff
changeset
|
321 | user->group_ids = g_list_append(user->group_ids, group_id); |
|
9193
6e76f1367896
[gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
8475
diff
changeset
|
322 | |
|
6e76f1367896
[gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
8475
diff
changeset
|
323 | userlist = user->userlist; |
|
6e76f1367896
[gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
8475
diff
changeset
|
324 | account = userlist->session->account; |
|
6e76f1367896
[gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
8475
diff
changeset
|
325 | passport = msn_user_get_passport(user); |
|
9198
e8eb6d5eb9eb
[gaim-migrate @ 9993]
Christian Hammond <chipx86@chipx86.com>
parents:
9193
diff
changeset
|
326 | |
| 13899 | 327 | group_name = msn_userlist_find_group_name(userlist, group_id); |
|
9193
6e76f1367896
[gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
8475
diff
changeset
|
328 | |
|
20564
35675dd4a44d
Make buddy and group management actually work, add some SOAP templates, redesign some parts of code and separate some bigger functions into its smaller tasks which are completely unrelated to each other
Carlos Silva <typ0@pidgin.im>
parents:
20530
diff
changeset
|
329 | purple_debug_info("User","group id:%s,name:%s,user:%s\n", group_id, group_name, passport); |
|
9193
6e76f1367896
[gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
8475
diff
changeset
|
330 | |
| 15884 | 331 | g = purple_find_group(group_name); |
|
9193
6e76f1367896
[gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
8475
diff
changeset
|
332 | |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
diff
changeset
|
333 | if ((id == NULL) && (g == NULL)) |
|
10451
2df35a139363
[gaim-migrate @ 11717]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
10388
diff
changeset
|
334 | { |
| 15884 | 335 | g = purple_group_new(group_name); |
| 336 | purple_blist_add_group(g, NULL); | |
|
10451
2df35a139363
[gaim-migrate @ 11717]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
10388
diff
changeset
|
337 | } |
|
2df35a139363
[gaim-migrate @ 11717]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
10388
diff
changeset
|
338 | |
| 15884 | 339 | b = purple_find_buddy_in_group(account, passport, g); |
|
9193
6e76f1367896
[gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
8475
diff
changeset
|
340 | if (b == NULL) |
|
6e76f1367896
[gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
8475
diff
changeset
|
341 | { |
| 15884 | 342 | b = purple_buddy_new(account, passport, NULL); |
| 343 | purple_blist_add_buddy(b, NULL, g, NULL); | |
|
9193
6e76f1367896
[gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
8475
diff
changeset
|
344 | } |
|
6e76f1367896
[gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
8475
diff
changeset
|
345 | b->proto_data = user; |
| 13910 | 346 | /*Update the blist Node info*/ |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
diff
changeset
|
347 | // purple_blist_node_set_string(&(b->node), "", ""); |
|
6701
7e2db9273748
[gaim-migrate @ 7227]
Christian Hammond <chipx86@chipx86.com>
parents:
5518
diff
changeset
|
348 | } |
|
9193
6e76f1367896
[gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
8475
diff
changeset
|
349 | |
| 13893 | 350 | /*check if the msn user is online*/ |
| 351 | gboolean | |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
diff
changeset
|
352 | msn_user_is_online(PurpleAccount *account, const char *name) |
| 13893 | 353 | { |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
diff
changeset
|
354 | PurpleBuddy *buddy; |
| 13893 | 355 | |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
diff
changeset
|
356 | buddy =purple_find_buddy(account,name); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
diff
changeset
|
357 | return PURPLE_BUDDY_IS_ONLINE(buddy); |
| 13893 | 358 | } |
| 359 | ||
| 13900 | 360 | gboolean |
|
20519
35db99dd2ece
Fix msn_user_remove_group_id()
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20508
diff
changeset
|
361 | msn_user_is_yahoo(PurpleAccount *account, const char *name) |
| 13900 | 362 | { |
|
20530
0178f0d66bf0
Add Pending list to recognized lists during contact list parsing
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20528
diff
changeset
|
363 | MsnSession *session = NULL; |
|
0178f0d66bf0
Add Pending list to recognized lists during contact list parsing
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20528
diff
changeset
|
364 | MsnUser *user; |
|
0178f0d66bf0
Add Pending list to recognized lists during contact list parsing
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20528
diff
changeset
|
365 | PurpleConnection *gc; |
|
0178f0d66bf0
Add Pending list to recognized lists during contact list parsing
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20528
diff
changeset
|
366 | |
|
0178f0d66bf0
Add Pending list to recognized lists during contact list parsing
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20528
diff
changeset
|
367 | gc = purple_account_get_connection(account); |
|
0178f0d66bf0
Add Pending list to recognized lists during contact list parsing
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20528
diff
changeset
|
368 | if (gc != NULL) |
|
0178f0d66bf0
Add Pending list to recognized lists during contact list parsing
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20528
diff
changeset
|
369 | session = gc->proto_data; |
|
0178f0d66bf0
Add Pending list to recognized lists during contact list parsing
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20528
diff
changeset
|
370 | |
|
0178f0d66bf0
Add Pending list to recognized lists during contact list parsing
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20528
diff
changeset
|
371 | if ((session != NULL) && (session->protocol_ver == WLM_PROT_VER)) |
|
0178f0d66bf0
Add Pending list to recognized lists during contact list parsing
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20528
diff
changeset
|
372 | return FALSE; |
|
0178f0d66bf0
Add Pending list to recognized lists during contact list parsing
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20528
diff
changeset
|
373 | |
|
0178f0d66bf0
Add Pending list to recognized lists during contact list parsing
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20528
diff
changeset
|
374 | if ((session != NULL) && (user = msn_userlist_find_user(session->userlist, name)) != NULL) |
|
0178f0d66bf0
Add Pending list to recognized lists during contact list parsing
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20528
diff
changeset
|
375 | { |
|
0178f0d66bf0
Add Pending list to recognized lists during contact list parsing
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20528
diff
changeset
|
376 | return (user->type == MSN_USER_TYPE_YAHOO); |
|
0178f0d66bf0
Add Pending list to recognized lists during contact list parsing
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20528
diff
changeset
|
377 | } |
|
0178f0d66bf0
Add Pending list to recognized lists during contact list parsing
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20528
diff
changeset
|
378 | return (strstr(name,"@yahoo.") != NULL); |
|
6701
7e2db9273748
[gaim-migrate @ 7227]
Christian Hammond <chipx86@chipx86.com>
parents:
5518
diff
changeset
|
379 | } |
|
7e2db9273748
[gaim-migrate @ 7227]
Christian Hammond <chipx86@chipx86.com>
parents:
5518
diff
changeset
|
380 | |
|
7e2db9273748
[gaim-migrate @ 7227]
Christian Hammond <chipx86@chipx86.com>
parents:
5518
diff
changeset
|
381 | void |
|
20519
35db99dd2ece
Fix msn_user_remove_group_id()
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20508
diff
changeset
|
382 | msn_user_remove_group_id(MsnUser *user, const char *id) |
|
6701
7e2db9273748
[gaim-migrate @ 7227]
Christian Hammond <chipx86@chipx86.com>
parents:
5518
diff
changeset
|
383 | { |
|
20519
35db99dd2ece
Fix msn_user_remove_group_id()
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20508
diff
changeset
|
384 | GList *l; |
|
35db99dd2ece
Fix msn_user_remove_group_id()
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20508
diff
changeset
|
385 | |
|
6701
7e2db9273748
[gaim-migrate @ 7227]
Christian Hammond <chipx86@chipx86.com>
parents:
5518
diff
changeset
|
386 | g_return_if_fail(user != NULL); |
| 13855 | 387 | g_return_if_fail(id != NULL); |
|
6701
7e2db9273748
[gaim-migrate @ 7227]
Christian Hammond <chipx86@chipx86.com>
parents:
5518
diff
changeset
|
388 | |
|
20519
35db99dd2ece
Fix msn_user_remove_group_id()
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20508
diff
changeset
|
389 | l = g_list_find_custom(user->group_ids, id, (GCompareFunc)strcmp); |
|
6701
7e2db9273748
[gaim-migrate @ 7227]
Christian Hammond <chipx86@chipx86.com>
parents:
5518
diff
changeset
|
390 | |
|
20519
35db99dd2ece
Fix msn_user_remove_group_id()
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20508
diff
changeset
|
391 | if (l == NULL) |
|
35db99dd2ece
Fix msn_user_remove_group_id()
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20508
diff
changeset
|
392 | return; |
|
35db99dd2ece
Fix msn_user_remove_group_id()
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20508
diff
changeset
|
393 | |
|
35db99dd2ece
Fix msn_user_remove_group_id()
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20508
diff
changeset
|
394 | g_free(l->data); |
|
35db99dd2ece
Fix msn_user_remove_group_id()
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20508
diff
changeset
|
395 | user->group_ids = g_list_remove_link(user->group_ids, l); |
|
6701
7e2db9273748
[gaim-migrate @ 7227]
Christian Hammond <chipx86@chipx86.com>
parents:
5518
diff
changeset
|
396 | } |
|
9193
6e76f1367896
[gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
8475
diff
changeset
|
397 | |
|
6701
7e2db9273748
[gaim-migrate @ 7227]
Christian Hammond <chipx86@chipx86.com>
parents:
5518
diff
changeset
|
398 | void |
|
5363
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
399 | msn_user_set_home_phone(MsnUser *user, const char *number) |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
400 | { |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
401 | g_return_if_fail(user != NULL); |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
402 | |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
403 | if (user->phone.home != NULL) |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
404 | g_free(user->phone.home); |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
405 | |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
406 | user->phone.home = (number == NULL ? NULL : g_strdup(number)); |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
407 | } |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
408 | |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
409 | void |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
410 | msn_user_set_work_phone(MsnUser *user, const char *number) |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
411 | { |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
412 | g_return_if_fail(user != NULL); |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
413 | |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
414 | if (user->phone.work != NULL) |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
415 | g_free(user->phone.work); |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
416 | |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
417 | user->phone.work = (number == NULL ? NULL : g_strdup(number)); |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
418 | } |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
419 | |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
420 | void |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
421 | msn_user_set_mobile_phone(MsnUser *user, const char *number) |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
422 | { |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
423 | g_return_if_fail(user != NULL); |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
424 | |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
425 | if (user->phone.mobile != NULL) |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
426 | g_free(user->phone.mobile); |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
427 | |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
428 | user->phone.mobile = (number == NULL ? NULL : g_strdup(number)); |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
429 | } |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
430 | |
|
6788
26d148d26f2f
[gaim-migrate @ 7327]
Christian Hammond <chipx86@chipx86.com>
parents:
6701
diff
changeset
|
431 | void |
|
26d148d26f2f
[gaim-migrate @ 7327]
Christian Hammond <chipx86@chipx86.com>
parents:
6701
diff
changeset
|
432 | msn_user_set_object(MsnUser *user, MsnObject *obj) |
|
26d148d26f2f
[gaim-migrate @ 7327]
Christian Hammond <chipx86@chipx86.com>
parents:
6701
diff
changeset
|
433 | { |
|
26d148d26f2f
[gaim-migrate @ 7327]
Christian Hammond <chipx86@chipx86.com>
parents:
6701
diff
changeset
|
434 | g_return_if_fail(user != NULL); |
|
26d148d26f2f
[gaim-migrate @ 7327]
Christian Hammond <chipx86@chipx86.com>
parents:
6701
diff
changeset
|
435 | |
|
26d148d26f2f
[gaim-migrate @ 7327]
Christian Hammond <chipx86@chipx86.com>
parents:
6701
diff
changeset
|
436 | if (user->msnobj != NULL) |
|
26d148d26f2f
[gaim-migrate @ 7327]
Christian Hammond <chipx86@chipx86.com>
parents:
6701
diff
changeset
|
437 | msn_object_destroy(user->msnobj); |
|
26d148d26f2f
[gaim-migrate @ 7327]
Christian Hammond <chipx86@chipx86.com>
parents:
6701
diff
changeset
|
438 | |
|
26d148d26f2f
[gaim-migrate @ 7327]
Christian Hammond <chipx86@chipx86.com>
parents:
6701
diff
changeset
|
439 | user->msnobj = obj; |
|
9193
6e76f1367896
[gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
8475
diff
changeset
|
440 | |
|
9860
8f54a6091294
[gaim-migrate @ 10739]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
9776
diff
changeset
|
441 | if (user->list_op & MSN_LIST_FL_OP) |
|
8f54a6091294
[gaim-migrate @ 10739]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
9776
diff
changeset
|
442 | msn_queue_buddy_icon_request(user); |
|
6788
26d148d26f2f
[gaim-migrate @ 7327]
Christian Hammond <chipx86@chipx86.com>
parents:
6701
diff
changeset
|
443 | } |
|
26d148d26f2f
[gaim-migrate @ 7327]
Christian Hammond <chipx86@chipx86.com>
parents:
6701
diff
changeset
|
444 | |
|
26d148d26f2f
[gaim-migrate @ 7327]
Christian Hammond <chipx86@chipx86.com>
parents:
6701
diff
changeset
|
445 | void |
|
26d148d26f2f
[gaim-migrate @ 7327]
Christian Hammond <chipx86@chipx86.com>
parents:
6701
diff
changeset
|
446 | msn_user_set_client_caps(MsnUser *user, GHashTable *info) |
|
26d148d26f2f
[gaim-migrate @ 7327]
Christian Hammond <chipx86@chipx86.com>
parents:
6701
diff
changeset
|
447 | { |
|
26d148d26f2f
[gaim-migrate @ 7327]
Christian Hammond <chipx86@chipx86.com>
parents:
6701
diff
changeset
|
448 | g_return_if_fail(user != NULL); |
|
26d148d26f2f
[gaim-migrate @ 7327]
Christian Hammond <chipx86@chipx86.com>
parents:
6701
diff
changeset
|
449 | g_return_if_fail(info != NULL); |
|
26d148d26f2f
[gaim-migrate @ 7327]
Christian Hammond <chipx86@chipx86.com>
parents:
6701
diff
changeset
|
450 | |
|
26d148d26f2f
[gaim-migrate @ 7327]
Christian Hammond <chipx86@chipx86.com>
parents:
6701
diff
changeset
|
451 | if (user->clientcaps != NULL) |
|
26d148d26f2f
[gaim-migrate @ 7327]
Christian Hammond <chipx86@chipx86.com>
parents:
6701
diff
changeset
|
452 | g_hash_table_destroy(user->clientcaps); |
|
26d148d26f2f
[gaim-migrate @ 7327]
Christian Hammond <chipx86@chipx86.com>
parents:
6701
diff
changeset
|
453 | |
|
26d148d26f2f
[gaim-migrate @ 7327]
Christian Hammond <chipx86@chipx86.com>
parents:
6701
diff
changeset
|
454 | user->clientcaps = info; |
|
26d148d26f2f
[gaim-migrate @ 7327]
Christian Hammond <chipx86@chipx86.com>
parents:
6701
diff
changeset
|
455 | } |
|
5363
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
456 | |
| 5309 | 457 | const char * |
| 458 | msn_user_get_passport(const MsnUser *user) | |
| 459 | { | |
| 460 | g_return_val_if_fail(user != NULL, NULL); | |
| 461 | ||
| 462 | return user->passport; | |
| 463 | } | |
| 464 | ||
| 465 | const char * | |
|
9193
6e76f1367896
[gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
8475
diff
changeset
|
466 | msn_user_get_friendly_name(const MsnUser *user) |
| 5309 | 467 | { |
| 468 | g_return_val_if_fail(user != NULL, NULL); | |
| 469 | ||
|
9193
6e76f1367896
[gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
8475
diff
changeset
|
470 | return user->friendly_name; |
| 5309 | 471 | } |
| 472 | ||
|
9193
6e76f1367896
[gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
8475
diff
changeset
|
473 | const char * |
|
6e76f1367896
[gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
8475
diff
changeset
|
474 | msn_user_get_store_name(const MsnUser *user) |
| 5309 | 475 | { |
|
6701
7e2db9273748
[gaim-migrate @ 7227]
Christian Hammond <chipx86@chipx86.com>
parents:
5518
diff
changeset
|
476 | g_return_val_if_fail(user != NULL, NULL); |
| 5309 | 477 | |
|
9193
6e76f1367896
[gaim-migrate @ 9988]
Felipe Contreras <felipe.contreras@gmail.com>
parents:
8475
diff
changeset
|
478 | return user->store_name; |
| 5309 | 479 | } |
| 480 | ||
|
5363
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
481 | const char * |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
482 | msn_user_get_home_phone(const MsnUser *user) |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
483 | { |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
484 | g_return_val_if_fail(user != NULL, NULL); |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
485 | |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
486 | return user->phone.home; |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
487 | } |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
488 | |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
489 | const char * |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
490 | msn_user_get_work_phone(const MsnUser *user) |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
491 | { |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
492 | g_return_val_if_fail(user != NULL, NULL); |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
493 | |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
494 | return user->phone.work; |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
495 | } |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
496 | |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
497 | const char * |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
498 | msn_user_get_mobile_phone(const MsnUser *user) |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
499 | { |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
500 | g_return_val_if_fail(user != NULL, NULL); |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
501 | |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
502 | return user->phone.mobile; |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
503 | } |
|
b6e28be0c9bd
[gaim-migrate @ 5739]
Christian Hammond <chipx86@chipx86.com>
parents:
5316
diff
changeset
|
504 | |
|
6788
26d148d26f2f
[gaim-migrate @ 7327]
Christian Hammond <chipx86@chipx86.com>
parents:
6701
diff
changeset
|
505 | MsnObject * |
|
26d148d26f2f
[gaim-migrate @ 7327]
Christian Hammond <chipx86@chipx86.com>
parents:
6701
diff
changeset
|
506 | msn_user_get_object(const MsnUser *user) |
|
5316
ec9cbe50e70c
[gaim-migrate @ 5688]
Christian Hammond <chipx86@chipx86.com>
parents:
5309
diff
changeset
|
507 | { |
|
6788
26d148d26f2f
[gaim-migrate @ 7327]
Christian Hammond <chipx86@chipx86.com>
parents:
6701
diff
changeset
|
508 | g_return_val_if_fail(user != NULL, NULL); |
|
5316
ec9cbe50e70c
[gaim-migrate @ 5688]
Christian Hammond <chipx86@chipx86.com>
parents:
5309
diff
changeset
|
509 | |
|
6788
26d148d26f2f
[gaim-migrate @ 7327]
Christian Hammond <chipx86@chipx86.com>
parents:
6701
diff
changeset
|
510 | return user->msnobj; |
|
5316
ec9cbe50e70c
[gaim-migrate @ 5688]
Christian Hammond <chipx86@chipx86.com>
parents:
5309
diff
changeset
|
511 | } |
|
ec9cbe50e70c
[gaim-migrate @ 5688]
Christian Hammond <chipx86@chipx86.com>
parents:
5309
diff
changeset
|
512 | |
|
ec9cbe50e70c
[gaim-migrate @ 5688]
Christian Hammond <chipx86@chipx86.com>
parents:
5309
diff
changeset
|
513 | GHashTable * |
|
5475
a2f856cac665
[gaim-migrate @ 5871]
Christian Hammond <chipx86@chipx86.com>
parents:
5363
diff
changeset
|
514 | msn_user_get_client_caps(const MsnUser *user) |
|
5316
ec9cbe50e70c
[gaim-migrate @ 5688]
Christian Hammond <chipx86@chipx86.com>
parents:
5309
diff
changeset
|
515 | { |
|
ec9cbe50e70c
[gaim-migrate @ 5688]
Christian Hammond <chipx86@chipx86.com>
parents:
5309
diff
changeset
|
516 | g_return_val_if_fail(user != NULL, NULL); |
|
ec9cbe50e70c
[gaim-migrate @ 5688]
Christian Hammond <chipx86@chipx86.com>
parents:
5309
diff
changeset
|
517 | |
|
5475
a2f856cac665
[gaim-migrate @ 5871]
Christian Hammond <chipx86@chipx86.com>
parents:
5363
diff
changeset
|
518 | return user->clientcaps; |
|
5316
ec9cbe50e70c
[gaim-migrate @ 5688]
Christian Hammond <chipx86@chipx86.com>
parents:
5309
diff
changeset
|
519 | } |