Mercurial > pidgin.yaz
annotate libpurple/protocols/msn/msn.c @ 31823:d72d728226dc
propagate from branch 'im.pidgin.pidgin' (head fb4d2b014576462db99d919dea15fbed03f1f48a)
to branch 'im.pidgin.pidgin.next.minor' (head 4a5878f91c824f207ed343b57b36ae74e1baa438)
author | John Bailey <rekkanoryo@rekkanoryo.org> |
---|---|
date | Sun, 13 Mar 2011 18:14:04 +0000 |
parents | ea2a155b4439 f3d11c84cc03 |
children | 7281d151e492 7c33eaed54e5 |
rev | line source |
---|---|
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1 /** |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2 * @file msn.c The MSN protocol plugin |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
3 * |
15823 | 4 * purple |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
5 * |
15823 | 6 * Purple is the legal property of its developers, whose names are too numerous |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
7 * to list here. Please refer to the COPYRIGHT file distributed with this |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
8 * source distribution. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
9 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
10 * This program is free software; you can redistribute it and/or modify |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
11 * it under the terms of the GNU General Public License as published by |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
12 * the Free Software Foundation; either version 2 of the License, or |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
13 * (at your option) any later version. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
14 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
15 * This program is distributed in the hope that it will be useful, |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
18 * GNU General Public License for more details. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
19 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
20 * You should have received a copy of the GNU General Public License |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
21 * along with this program; if not, write to the Free Software |
19680
44b4e8bd759b
The FSF changed its address a while ago; our files were out of date.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
19465
diff
changeset
|
22 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
23 */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
24 #define PHOTO_SUPPORT 1 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
25 |
31195
575d1af924af
Add internal here so it brings config.h that make it possible to load the plugin. Fixes a regresion introduced in 7ab10ac51ae5537fc0c3eeca18c24dcadf63728f.
masca@cpw.pidgin.im
parents:
31191
diff
changeset
|
26 #include "internal.h" |
575d1af924af
Add internal here so it brings config.h that make it possible to load the plugin. Fixes a regresion introduced in 7ab10ac51ae5537fc0c3eeca18c24dcadf63728f.
masca@cpw.pidgin.im
parents:
31191
diff
changeset
|
27 |
31180
a99b6dcdb60d
Remove unnecesary includes from msn.h.
masca@cpw.pidgin.im
parents:
31179
diff
changeset
|
28 #include "debug.h" |
a99b6dcdb60d
Remove unnecesary includes from msn.h.
masca@cpw.pidgin.im
parents:
31179
diff
changeset
|
29 #include "request.h" |
a99b6dcdb60d
Remove unnecesary includes from msn.h.
masca@cpw.pidgin.im
parents:
31179
diff
changeset
|
30 |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
31 #include "accountopt.h" |
23504
69af5301e1a7
killing MsnContact which just wraps MsnSession
Ka-Hing Cheung <khc@hxbc.us>
parents:
23501
diff
changeset
|
32 #include "contact.h" |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
33 #include "msg.h" |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
34 #include "page.h" |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
35 #include "pluginpref.h" |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
36 #include "prefs.h" |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
37 #include "session.h" |
22887
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
38 #include "smiley.h" |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
39 #include "state.h" |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
40 #include "util.h" |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
41 #include "cmds.h" |
15624
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
42 #include "core.h" |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
43 #include "prpl.h" |
20394
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
44 #include "msnutils.h" |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
45 #include "version.h" |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
46 |
31191 | 47 #include "error.h" |
24142
fb722b8b4c74
attempts to resend message on switchboard error once, tested by maually
Ka-Hing Cheung <khc@hxbc.us>
parents:
24132
diff
changeset
|
48 #include "msg.h" |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
49 #include "switchboard.h" |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
50 #include "notification.h" |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
51 #include "slplink.h" |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
52 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
53 #if PHOTO_SUPPORT |
23745
80ddf59e1585
A similar size limit for MSN buddy icon retrieval from arbitrary urls.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
23736
diff
changeset
|
54 #define MAX_HTTP_BUDDYICON_BYTES (200 * 1024) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
55 #include "imgstore.h" |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
56 #endif |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
57 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
58 typedef struct |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
59 { |
15823 | 60 PurpleConnection *gc; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
61 const char *passport; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
62 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
63 } MsnMobileData; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
64 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
65 typedef struct |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
66 { |
15823 | 67 PurpleConnection *gc; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
68 char *name; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
69 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
70 } MsnGetInfoData; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
71 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
72 typedef struct |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
73 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
74 MsnGetInfoData *info_data; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
75 char *stripped; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
76 char *url_buffer; |
15823 | 77 PurpleNotifyUserInfo *user_info; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
78 char *photo_url_text; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
79 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
80 } MsnGetInfoStepTwoData; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
81 |
17072
cb4380df3005
In MSN we fake sending messages to yourself. This had a small bug in that
Stu Tomlinson <stu@nosnilmot.com>
parents:
17065
diff
changeset
|
82 typedef struct |
cb4380df3005
In MSN we fake sending messages to yourself. This had a small bug in that
Stu Tomlinson <stu@nosnilmot.com>
parents:
17065
diff
changeset
|
83 { |
cb4380df3005
In MSN we fake sending messages to yourself. This had a small bug in that
Stu Tomlinson <stu@nosnilmot.com>
parents:
17065
diff
changeset
|
84 PurpleConnection *gc; |
cb4380df3005
In MSN we fake sending messages to yourself. This had a small bug in that
Stu Tomlinson <stu@nosnilmot.com>
parents:
17065
diff
changeset
|
85 const char *who; |
cb4380df3005
In MSN we fake sending messages to yourself. This had a small bug in that
Stu Tomlinson <stu@nosnilmot.com>
parents:
17065
diff
changeset
|
86 char *msg; |
cb4380df3005
In MSN we fake sending messages to yourself. This had a small bug in that
Stu Tomlinson <stu@nosnilmot.com>
parents:
17065
diff
changeset
|
87 PurpleMessageFlags flags; |
cb4380df3005
In MSN we fake sending messages to yourself. This had a small bug in that
Stu Tomlinson <stu@nosnilmot.com>
parents:
17065
diff
changeset
|
88 time_t when; |
cb4380df3005
In MSN we fake sending messages to yourself. This had a small bug in that
Stu Tomlinson <stu@nosnilmot.com>
parents:
17065
diff
changeset
|
89 } MsnIMData; |
cb4380df3005
In MSN we fake sending messages to yourself. This had a small bug in that
Stu Tomlinson <stu@nosnilmot.com>
parents:
17065
diff
changeset
|
90 |
22887
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
91 typedef struct |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
92 { |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
93 char *smile; |
28419
36c6601d650a
It seems I need to write the smiley to the conversation for it to show up
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28418
diff
changeset
|
94 PurpleSmiley *ps; |
22887
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
95 MsnObject *obj; |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
96 } MsnEmoticon; |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
97 |
27564
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
98 typedef struct |
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
99 { |
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
100 PurpleConnection *pc; |
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
101 PurpleBuddy *buddy; |
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
102 PurpleGroup *group; |
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
103 } MsnAddReqData; |
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
104 |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
105 static const char * |
15823 | 106 msn_normalize(const PurpleAccount *account, const char *str) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
107 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
108 static char buf[BUF_LEN]; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
109 char *tmp; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
110 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
111 g_return_val_if_fail(str != NULL, NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
112 |
31719
ccda2eba140b
Strip spaces when normalizing MSN usernames. Spaces in the account
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31657
diff
changeset
|
113 tmp = g_strchomp(g_utf8_strdown(str, -1)); |
ccda2eba140b
Strip spaces when normalizing MSN usernames. Spaces in the account
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31657
diff
changeset
|
114 g_snprintf(buf, sizeof(buf), "%s%s", tmp, |
ccda2eba140b
Strip spaces when normalizing MSN usernames. Spaces in the account
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31657
diff
changeset
|
115 (strchr(tmp, '@') ? "" : "@hotmail.com")); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
116 g_free(tmp); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
117 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
118 return buf; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
119 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
120 |
19465
d9d9283680a4
In MSN prpl, use attention API. Can be disabled by undefining
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
18063
diff
changeset
|
121 static gboolean |
d9d9283680a4
In MSN prpl, use attention API. Can be disabled by undefining
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
18063
diff
changeset
|
122 msn_send_attention(PurpleConnection *gc, const char *username, guint type) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
123 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
124 MsnMessage *msg; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
125 MsnSession *session; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
126 MsnSwitchBoard *swboard; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
127 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
128 msg = msn_message_new_nudge(); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
129 session = gc->proto_data; |
19465
d9d9283680a4
In MSN prpl, use attention API. Can be disabled by undefining
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
18063
diff
changeset
|
130 swboard = msn_session_get_swboard(session, username, MSN_SB_FLAG_IM); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
131 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
132 msn_switchboard_send_msg(swboard, msg, TRUE); |
31393
b4285ea42b6e
msn_message_destroy() calls msn_message_unref() if refcount>0. This is
Mark Doliner <mark@kingant.net>
parents:
31392
diff
changeset
|
133 msn_message_unref(msg); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
134 |
19465
d9d9283680a4
In MSN prpl, use attention API. Can be disabled by undefining
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
18063
diff
changeset
|
135 return TRUE; |
d9d9283680a4
In MSN prpl, use attention API. Can be disabled by undefining
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
18063
diff
changeset
|
136 } |
d9d9283680a4
In MSN prpl, use attention API. Can be disabled by undefining
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
18063
diff
changeset
|
137 |
d9d9283680a4
In MSN prpl, use attention API. Can be disabled by undefining
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
18063
diff
changeset
|
138 static GList * |
d9d9283680a4
In MSN prpl, use attention API. Can be disabled by undefining
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
18063
diff
changeset
|
139 msn_attention_types(PurpleAccount *account) |
d9d9283680a4
In MSN prpl, use attention API. Can be disabled by undefining
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
18063
diff
changeset
|
140 { |
d9d9283680a4
In MSN prpl, use attention API. Can be disabled by undefining
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
18063
diff
changeset
|
141 static GList *list = NULL; |
d9d9283680a4
In MSN prpl, use attention API. Can be disabled by undefining
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
18063
diff
changeset
|
142 |
d9d9283680a4
In MSN prpl, use attention API. Can be disabled by undefining
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
18063
diff
changeset
|
143 if (!list) { |
22097
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
22043
diff
changeset
|
144 list = g_list_append(list, purple_attention_type_new("Nudge", _("Nudge"), |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
22043
diff
changeset
|
145 _("%s has nudged you!"), _("Nudging %s..."))); |
19465
d9d9283680a4
In MSN prpl, use attention API. Can be disabled by undefining
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
18063
diff
changeset
|
146 } |
d9d9283680a4
In MSN prpl, use attention API. Can be disabled by undefining
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
18063
diff
changeset
|
147 |
d9d9283680a4
In MSN prpl, use attention API. Can be disabled by undefining
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
18063
diff
changeset
|
148 return list; |
d9d9283680a4
In MSN prpl, use attention API. Can be disabled by undefining
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
18063
diff
changeset
|
149 } |
d9d9283680a4
In MSN prpl, use attention API. Can be disabled by undefining
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
18063
diff
changeset
|
150 |
23112
bb41bdce8981
Patch from Jaywalker to let prpls add some helpful text for some account
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23111
diff
changeset
|
151 static GHashTable * |
bb41bdce8981
Patch from Jaywalker to let prpls add some helpful text for some account
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23111
diff
changeset
|
152 msn_get_account_text_table(PurpleAccount *unused) |
bb41bdce8981
Patch from Jaywalker to let prpls add some helpful text for some account
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23111
diff
changeset
|
153 { |
bb41bdce8981
Patch from Jaywalker to let prpls add some helpful text for some account
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23111
diff
changeset
|
154 GHashTable *table; |
bb41bdce8981
Patch from Jaywalker to let prpls add some helpful text for some account
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23111
diff
changeset
|
155 |
bb41bdce8981
Patch from Jaywalker to let prpls add some helpful text for some account
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23111
diff
changeset
|
156 table = g_hash_table_new(g_str_hash, g_str_equal); |
bb41bdce8981
Patch from Jaywalker to let prpls add some helpful text for some account
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23111
diff
changeset
|
157 |
23182
e0bcb8cfda74
Use "email" and "Email" consistently. This is potentially controversial,
Richard Laager <rlaager@wiktel.com>
parents:
23154
diff
changeset
|
158 g_hash_table_insert(table, "login_label", (gpointer)_("Email Address...")); |
23112
bb41bdce8981
Patch from Jaywalker to let prpls add some helpful text for some account
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23111
diff
changeset
|
159 |
bb41bdce8981
Patch from Jaywalker to let prpls add some helpful text for some account
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23111
diff
changeset
|
160 return table; |
bb41bdce8981
Patch from Jaywalker to let prpls add some helpful text for some account
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23111
diff
changeset
|
161 } |
19465
d9d9283680a4
In MSN prpl, use attention API. Can be disabled by undefining
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
18063
diff
changeset
|
162 |
d9d9283680a4
In MSN prpl, use attention API. Can be disabled by undefining
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
18063
diff
changeset
|
163 static PurpleCmdRet |
d9d9283680a4
In MSN prpl, use attention API. Can be disabled by undefining
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
18063
diff
changeset
|
164 msn_cmd_nudge(PurpleConversation *conv, const gchar *cmd, gchar **args, gchar **error, void *data) |
d9d9283680a4
In MSN prpl, use attention API. Can be disabled by undefining
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
18063
diff
changeset
|
165 { |
d9d9283680a4
In MSN prpl, use attention API. Can be disabled by undefining
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
18063
diff
changeset
|
166 PurpleAccount *account = purple_conversation_get_account(conv); |
d9d9283680a4
In MSN prpl, use attention API. Can be disabled by undefining
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
18063
diff
changeset
|
167 PurpleConnection *gc = purple_account_get_connection(account); |
d9d9283680a4
In MSN prpl, use attention API. Can be disabled by undefining
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
18063
diff
changeset
|
168 const gchar *username; |
d9d9283680a4
In MSN prpl, use attention API. Can be disabled by undefining
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
18063
diff
changeset
|
169 |
d9d9283680a4
In MSN prpl, use attention API. Can be disabled by undefining
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
18063
diff
changeset
|
170 username = purple_conversation_get_name(conv); |
d9d9283680a4
In MSN prpl, use attention API. Can be disabled by undefining
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
18063
diff
changeset
|
171 |
23751
797377cbd5bf
Change the other prpls to use new purple_prpl_{send,got}_attention API.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23745
diff
changeset
|
172 purple_prpl_send_attention(gc, username, MSN_NUDGE); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
173 |
15823 | 174 return PURPLE_CMD_RET_OK; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
175 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
176 |
30312
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
177 struct public_alias_closure |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
178 { |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
179 PurpleAccount *account; |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
180 gpointer success_cb; |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
181 gpointer failure_cb; |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
182 }; |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
183 |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
184 static gboolean |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
185 set_public_alias_length_error(gpointer data) |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
186 { |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
187 struct public_alias_closure *closure = data; |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
188 PurpleSetPublicAliasFailureCallback failure_cb = closure->failure_cb; |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
189 |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
190 failure_cb(closure->account, _("Your new MSN friendly name is too long.")); |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
191 g_free(closure); |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
192 |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
193 return FALSE; |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
194 } |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
195 |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
196 static void |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
197 prp_success_cb(MsnCmdProc *cmdproc, MsnCommand *cmd) |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
198 { |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
199 const char *type, *friendlyname; |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
200 struct public_alias_closure *closure; |
31534
a8cc50c2279f
Remove trailing whitespace
Richard Laager <rlaager@wiktel.com>
parents:
31455
diff
changeset
|
201 |
30312
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
202 g_return_if_fail(cmd->param_count >= 3); |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
203 type = cmd->params[1]; |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
204 g_return_if_fail(!strcmp(type, "MFN")); |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
205 |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
206 closure = cmd->trans->data; |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
207 friendlyname = purple_url_decode(cmd->params[2]); |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
208 |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
209 msn_update_contact(cmdproc->session, "Me", MSN_UPDATE_DISPLAY, friendlyname); |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
210 |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
211 purple_connection_set_display_name( |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
212 purple_account_get_connection(closure->account), |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
213 friendlyname); |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
214 purple_account_set_string(closure->account, "display-name", friendlyname); |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
215 |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
216 if (closure->success_cb) { |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
217 PurpleSetPublicAliasSuccessCallback success_cb = closure->success_cb; |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
218 success_cb(closure->account, friendlyname); |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
219 } |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
220 } |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
221 |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
222 static void |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
223 prp_error_cb(MsnCmdProc *cmdproc, MsnTransaction *trans, int error) |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
224 { |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
225 struct public_alias_closure *closure = trans->data; |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
226 PurpleSetPublicAliasFailureCallback failure_cb = closure->failure_cb; |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
227 gboolean debug; |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
228 const char *error_text; |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
229 |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
230 error_text = msn_error_get_text(error, &debug); |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
231 failure_cb(closure->account, error_text); |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
232 } |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
233 |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
234 static void |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
235 prp_timeout_cb(MsnCmdProc *cmdproc, MsnTransaction *trans) |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
236 { |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
237 struct public_alias_closure *closure = trans->data; |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
238 PurpleSetPublicAliasFailureCallback failure_cb = closure->failure_cb; |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
239 failure_cb(closure->account, _("Connection Timeout")); |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
240 } |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
241 |
19797
60bc06498746
Committing khc's msnp14 changes from Trac Ticket #148. --rlaager
Ka-Hing Cheung <khc@hxbc.us>
parents:
15823
diff
changeset
|
242 void |
30312
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
243 msn_set_public_alias(PurpleConnection *pc, const char *alias, |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
244 PurpleSetPublicAliasSuccessCallback success_cb, |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
245 PurpleSetPublicAliasFailureCallback failure_cb) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
246 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
247 MsnCmdProc *cmdproc; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
248 MsnSession *session; |
31147
4d7dfeae29c6
msn: Delete msn_cmdproc_send since it just have duplicated code from
masca@cpw.pidgin.im
parents:
31143
diff
changeset
|
249 MsnTransaction *trans; |
15823 | 250 PurpleAccount *account; |
31439
dc996aa83f49
Combine the encode_spaces function and the stuff for the display name
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31438
diff
changeset
|
251 char real_alias[BUDDY_ALIAS_MAXLEN + 1]; |
30312
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
252 struct public_alias_closure *closure; |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
253 |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
254 session = purple_connection_get_protocol_data(pc); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
255 cmdproc = session->notification->cmdproc; |
30312
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
256 account = purple_connection_get_account(pc); |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
257 |
31418
2812bbd3fc18
Stop escaping all characters in the display name. It's only necessary
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31410
diff
changeset
|
258 if (alias && *alias) { |
31439
dc996aa83f49
Combine the encode_spaces function and the stuff for the display name
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31438
diff
changeset
|
259 if (!msn_encode_spaces(alias, real_alias, BUDDY_ALIAS_MAXLEN + 1)) { |
dc996aa83f49
Combine the encode_spaces function and the stuff for the display name
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31438
diff
changeset
|
260 if (failure_cb) { |
dc996aa83f49
Combine the encode_spaces function and the stuff for the display name
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31438
diff
changeset
|
261 struct public_alias_closure *closure = |
dc996aa83f49
Combine the encode_spaces function and the stuff for the display name
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31438
diff
changeset
|
262 g_new0(struct public_alias_closure, 1); |
dc996aa83f49
Combine the encode_spaces function and the stuff for the display name
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31438
diff
changeset
|
263 closure->account = account; |
dc996aa83f49
Combine the encode_spaces function and the stuff for the display name
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31438
diff
changeset
|
264 closure->failure_cb = failure_cb; |
dc996aa83f49
Combine the encode_spaces function and the stuff for the display name
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31438
diff
changeset
|
265 purple_timeout_add(0, set_public_alias_length_error, closure); |
31418
2812bbd3fc18
Stop escaping all characters in the display name. It's only necessary
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31410
diff
changeset
|
266 } else { |
31439
dc996aa83f49
Combine the encode_spaces function and the stuff for the display name
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31438
diff
changeset
|
267 purple_notify_error(pc, NULL, |
dc996aa83f49
Combine the encode_spaces function and the stuff for the display name
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31438
diff
changeset
|
268 _("Your new MSN friendly name is too long."), |
dc996aa83f49
Combine the encode_spaces function and the stuff for the display name
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31438
diff
changeset
|
269 NULL); |
31418
2812bbd3fc18
Stop escaping all characters in the display name. It's only necessary
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31410
diff
changeset
|
270 } |
31439
dc996aa83f49
Combine the encode_spaces function and the stuff for the display name
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31438
diff
changeset
|
271 return; |
31418
2812bbd3fc18
Stop escaping all characters in the display name. It's only necessary
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31410
diff
changeset
|
272 } |
2812bbd3fc18
Stop escaping all characters in the display name. It's only necessary
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31410
diff
changeset
|
273 |
31439
dc996aa83f49
Combine the encode_spaces function and the stuff for the display name
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31438
diff
changeset
|
274 if (real_alias[0] == '\0') |
dc996aa83f49
Combine the encode_spaces function and the stuff for the display name
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31438
diff
changeset
|
275 strcpy(real_alias, purple_account_get_username(account)); |
31418
2812bbd3fc18
Stop escaping all characters in the display name. It's only necessary
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31410
diff
changeset
|
276 } else |
2812bbd3fc18
Stop escaping all characters in the display name. It's only necessary
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31410
diff
changeset
|
277 strcpy(real_alias, purple_account_get_username(account)); |
30312
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
278 |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
279 closure = g_new0(struct public_alias_closure, 1); |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
280 closure->account = account; |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
281 closure->success_cb = success_cb; |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
282 closure->failure_cb = failure_cb; |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
283 |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
284 trans = msn_transaction_new(cmdproc, "PRP", "MFN %s", real_alias); |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
285 msn_transaction_set_data(trans, closure); |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
286 msn_transaction_set_data_free(trans, g_free); |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
287 msn_transaction_add_cb(trans, "PRP", prp_success_cb); |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
288 if (failure_cb) { |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
289 msn_transaction_set_error_cb(trans, prp_error_cb); |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
290 msn_transaction_set_timeout_cb(trans, prp_timeout_cb); |
20394
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
291 } |
30312
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
292 msn_cmdproc_send_trans(cmdproc, trans); |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
293 } |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
294 |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
295 static gboolean |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
296 get_public_alias_cb(gpointer data) |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
297 { |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
298 struct public_alias_closure *closure = data; |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
299 PurpleGetPublicAliasSuccessCallback success_cb = closure->success_cb; |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
300 const char *alias; |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
301 |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
302 alias = purple_account_get_string(closure->account, "display-name", |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
303 purple_account_get_username(closure->account)); |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
304 success_cb(closure->account, alias); |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
305 g_free(closure); |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
306 |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
307 return FALSE; |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
308 } |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
309 |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
310 static void |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
311 msn_get_public_alias(PurpleConnection *pc, |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
312 PurpleGetPublicAliasSuccessCallback success_cb, |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
313 PurpleGetPublicAliasFailureCallback failure_cb) |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
314 { |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
315 struct public_alias_closure *closure = g_new0(struct public_alias_closure, 1); |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
316 PurpleAccount *account = purple_connection_get_account(pc); |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
317 |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
318 closure->account = account; |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
319 closure->success_cb = success_cb; |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
320 purple_timeout_add(0, get_public_alias_cb, closure); |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
321 } |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
322 |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
323 static void |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
324 msn_act_id(PurpleConnection *gc, const char *entry) |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
325 { |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
326 msn_set_public_alias(gc, entry, NULL, NULL); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
327 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
328 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
329 static void |
15823 | 330 msn_set_prp(PurpleConnection *gc, const char *type, const char *entry) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
331 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
332 MsnCmdProc *cmdproc; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
333 MsnSession *session; |
31147
4d7dfeae29c6
msn: Delete msn_cmdproc_send since it just have duplicated code from
masca@cpw.pidgin.im
parents:
31143
diff
changeset
|
334 MsnTransaction *trans; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
335 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
336 session = gc->proto_data; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
337 cmdproc = session->notification->cmdproc; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
338 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
339 if (entry == NULL || *entry == '\0') |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
340 { |
31147
4d7dfeae29c6
msn: Delete msn_cmdproc_send since it just have duplicated code from
masca@cpw.pidgin.im
parents:
31143
diff
changeset
|
341 trans = msn_transaction_new(cmdproc, "PRP", "%s", type); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
342 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
343 else |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
344 { |
31147
4d7dfeae29c6
msn: Delete msn_cmdproc_send since it just have duplicated code from
masca@cpw.pidgin.im
parents:
31143
diff
changeset
|
345 trans = msn_transaction_new(cmdproc, "PRP", "%s %s", type, |
15823 | 346 purple_url_encode(entry)); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
347 } |
31153
59cf1be8eaa7
Fix a few little things.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31149
diff
changeset
|
348 msn_cmdproc_send_trans(cmdproc, trans); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
349 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
350 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
351 static void |
15823 | 352 msn_set_home_phone_cb(PurpleConnection *gc, const char *entry) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
353 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
354 msn_set_prp(gc, "PHH", entry); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
355 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
356 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
357 static void |
15823 | 358 msn_set_work_phone_cb(PurpleConnection *gc, const char *entry) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
359 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
360 msn_set_prp(gc, "PHW", entry); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
361 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
362 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
363 static void |
15823 | 364 msn_set_mobile_phone_cb(PurpleConnection *gc, const char *entry) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
365 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
366 msn_set_prp(gc, "PHM", entry); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
367 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
368 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
369 static void |
15823 | 370 enable_msn_pages_cb(PurpleConnection *gc) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
371 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
372 msn_set_prp(gc, "MOB", "Y"); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
373 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
374 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
375 static void |
15823 | 376 disable_msn_pages_cb(PurpleConnection *gc) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
377 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
378 msn_set_prp(gc, "MOB", "N"); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
379 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
380 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
381 static void |
15823 | 382 send_to_mobile(PurpleConnection *gc, const char *who, const char *entry) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
383 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
384 MsnTransaction *trans; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
385 MsnSession *session; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
386 MsnCmdProc *cmdproc; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
387 MsnPage *page; |
28414
e7a2e2208f88
Display the full message when there are errors sending a MSN Mobile message
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27604
diff
changeset
|
388 MsnMessage *msg; |
22518
6aa076a2ea6f
Another patch from Maiku that improves the way we send mobile messages, this
Ka-Hing Cheung <khc@hxbc.us>
parents:
22433
diff
changeset
|
389 MsnUser *user; |
6aa076a2ea6f
Another patch from Maiku that improves the way we send mobile messages, this
Ka-Hing Cheung <khc@hxbc.us>
parents:
22433
diff
changeset
|
390 char *payload = NULL; |
6aa076a2ea6f
Another patch from Maiku that improves the way we send mobile messages, this
Ka-Hing Cheung <khc@hxbc.us>
parents:
22433
diff
changeset
|
391 const char *mobile_number = NULL; |
22798
05cb3f04c01e
This cleans up a bunch of warnings that stem from the fact that size_t and
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
22518
diff
changeset
|
392 gsize payload_len; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
393 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
394 session = gc->proto_data; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
395 cmdproc = session->notification->cmdproc; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
396 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
397 page = msn_page_new(); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
398 msn_page_set_body(page, entry); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
399 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
400 payload = msn_page_gen_payload(page, &payload_len); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
401 |
22518
6aa076a2ea6f
Another patch from Maiku that improves the way we send mobile messages, this
Ka-Hing Cheung <khc@hxbc.us>
parents:
22433
diff
changeset
|
402 if ((user = msn_userlist_find_user(session->userlist, who)) && |
6aa076a2ea6f
Another patch from Maiku that improves the way we send mobile messages, this
Ka-Hing Cheung <khc@hxbc.us>
parents:
22433
diff
changeset
|
403 (mobile_number = msn_user_get_mobile_phone(user)) && |
6aa076a2ea6f
Another patch from Maiku that improves the way we send mobile messages, this
Ka-Hing Cheung <khc@hxbc.us>
parents:
22433
diff
changeset
|
404 mobile_number[0] == '+') { |
6aa076a2ea6f
Another patch from Maiku that improves the way we send mobile messages, this
Ka-Hing Cheung <khc@hxbc.us>
parents:
22433
diff
changeset
|
405 /* if msn_user_get_mobile_phone() has a + in front, it's a number |
6aa076a2ea6f
Another patch from Maiku that improves the way we send mobile messages, this
Ka-Hing Cheung <khc@hxbc.us>
parents:
22433
diff
changeset
|
406 that from the buddy's contact card */ |
22798
05cb3f04c01e
This cleans up a bunch of warnings that stem from the fact that size_t and
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
22518
diff
changeset
|
407 trans = msn_transaction_new(cmdproc, "PGD", "tel:%s 1 %" G_GSIZE_FORMAT, |
22518
6aa076a2ea6f
Another patch from Maiku that improves the way we send mobile messages, this
Ka-Hing Cheung <khc@hxbc.us>
parents:
22433
diff
changeset
|
408 mobile_number, payload_len); |
6aa076a2ea6f
Another patch from Maiku that improves the way we send mobile messages, this
Ka-Hing Cheung <khc@hxbc.us>
parents:
22433
diff
changeset
|
409 } else { |
6aa076a2ea6f
Another patch from Maiku that improves the way we send mobile messages, this
Ka-Hing Cheung <khc@hxbc.us>
parents:
22433
diff
changeset
|
410 /* otherwise we send to whatever phone number the buddy registered |
6aa076a2ea6f
Another patch from Maiku that improves the way we send mobile messages, this
Ka-Hing Cheung <khc@hxbc.us>
parents:
22433
diff
changeset
|
411 with msn */ |
22798
05cb3f04c01e
This cleans up a bunch of warnings that stem from the fact that size_t and
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
22518
diff
changeset
|
412 trans = msn_transaction_new(cmdproc, "PGD", "%s 1 %" G_GSIZE_FORMAT, |
05cb3f04c01e
This cleans up a bunch of warnings that stem from the fact that size_t and
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
22518
diff
changeset
|
413 who, payload_len); |
22518
6aa076a2ea6f
Another patch from Maiku that improves the way we send mobile messages, this
Ka-Hing Cheung <khc@hxbc.us>
parents:
22433
diff
changeset
|
414 } |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
415 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
416 msn_transaction_set_payload(trans, payload, payload_len); |
20989
2097b1664fa3
Fix some leaks and prevent some unnecessary allocations and frees.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
20957
diff
changeset
|
417 g_free(payload); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
418 |
28414
e7a2e2208f88
Display the full message when there are errors sending a MSN Mobile message
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27604
diff
changeset
|
419 msg = msn_message_new_plain(entry); |
e7a2e2208f88
Display the full message when there are errors sending a MSN Mobile message
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27604
diff
changeset
|
420 msn_transaction_set_data(trans, msg); |
e7a2e2208f88
Display the full message when there are errors sending a MSN Mobile message
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27604
diff
changeset
|
421 |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
422 msn_page_destroy(page); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
423 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
424 msn_cmdproc_send_trans(cmdproc, trans); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
425 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
426 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
427 static void |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
428 send_to_mobile_cb(MsnMobileData *data, const char *entry) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
429 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
430 send_to_mobile(data->gc, data->passport, entry); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
431 g_free(data); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
432 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
433 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
434 static void |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
435 close_mobile_page_cb(MsnMobileData *data, const char *entry) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
436 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
437 g_free(data); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
438 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
439 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
440 /* -- */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
441 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
442 static void |
15823 | 443 msn_show_set_friendly_name(PurplePluginAction *action) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
444 { |
15823 | 445 PurpleConnection *gc; |
29207
5259ca10b641
Show the name of the account in the "Set Friendly Name" dialog.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29049
diff
changeset
|
446 PurpleAccount *account; |
5259ca10b641
Show the name of the account in the "Set Friendly Name" dialog.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29049
diff
changeset
|
447 char *tmp; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
448 |
15823 | 449 gc = (PurpleConnection *) action->context; |
29207
5259ca10b641
Show the name of the account in the "Set Friendly Name" dialog.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29049
diff
changeset
|
450 account = purple_connection_get_account(gc); |
5259ca10b641
Show the name of the account in the "Set Friendly Name" dialog.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29049
diff
changeset
|
451 |
5259ca10b641
Show the name of the account in the "Set Friendly Name" dialog.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29049
diff
changeset
|
452 tmp = g_strdup_printf(_("Set friendly name for %s."), |
5259ca10b641
Show the name of the account in the "Set Friendly Name" dialog.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29049
diff
changeset
|
453 purple_account_get_username(account)); |
31165
e167de25e795
Give the Set Friendly Name window a better title
Mark Doliner <mark@kingant.net>
parents:
31164
diff
changeset
|
454 purple_request_input(gc, _("Set Friendly Name"), tmp, |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
455 _("This is the name that other MSN buddies will " |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
456 "see you as."), |
15823 | 457 purple_connection_get_display_name(gc), FALSE, FALSE, NULL, |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
458 _("OK"), G_CALLBACK(msn_act_id), |
16442
08db93bbd798
Added account, who, and conversation parameters to the request API calls, and updated all code to match. I can't compile the Perl module, so I'd appreciate it if someone who knows it would verify that this doesn't break Perl.
Evan Schoenberg <evan.s@dreskin.net>
parents:
15823
diff
changeset
|
459 _("Cancel"), NULL, |
29207
5259ca10b641
Show the name of the account in the "Set Friendly Name" dialog.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29049
diff
changeset
|
460 account, NULL, NULL, |
21099
51cf02dbdb0e
disapproval of revision 'c484d979c4fda4433a9633ff8b69bd8a395c9479'
Richard Laager <rlaager@wiktel.com>
parents:
21095
diff
changeset
|
461 gc); |
29207
5259ca10b641
Show the name of the account in the "Set Friendly Name" dialog.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29049
diff
changeset
|
462 g_free(tmp); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
463 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
464 |
31126
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
465 typedef struct MsnLocationData { |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
466 PurpleAccount *account; |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
467 MsnSession *session; |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
468 PurpleRequestFieldGroup *group; |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
469 } MsnLocationData; |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
470 |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
471 static void |
31126
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
472 update_endpoint_cb(MsnLocationData *data, PurpleRequestFields *fields) |
31123
dd430f788bdc
Allow setting the name of the current location. The default is still Pidgin
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29049
diff
changeset
|
473 { |
dd430f788bdc
Allow setting the name of the current location. The default is still Pidgin
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29049
diff
changeset
|
474 PurpleAccount *account; |
31126
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
475 MsnSession *session; |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
476 const char *old_name; |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
477 const char *name; |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
478 GList *others; |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
479 |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
480 session = data->session; |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
481 account = data->account; |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
482 |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
483 /* Update the current location's name */ |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
484 old_name = purple_account_get_string(account, "endpoint-name", NULL); |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
485 name = purple_request_fields_get_string(fields, "endpoint-name"); |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
486 if (!g_str_equal(old_name, name)) { |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
487 purple_account_set_string(account, "endpoint-name", name); |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
488 msn_notification_send_uux_private_endpointdata(session); |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
489 } |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
490 |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
491 /* Sign out other locations */ |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
492 for (others = purple_request_field_group_get_fields(data->group); |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
493 others; |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
494 others = g_list_next(others)) { |
31127
fe607234b0d8
When looping through the request fields, don't try to disconnect a field if
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31126
diff
changeset
|
495 PurpleRequestField *field = others->data; |
fe607234b0d8
When looping through the request fields, don't try to disconnect a field if
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31126
diff
changeset
|
496 if (purple_request_field_get_type(field) != PURPLE_REQUEST_FIELD_BOOLEAN) |
fe607234b0d8
When looping through the request fields, don't try to disconnect a field if
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31126
diff
changeset
|
497 continue; |
31128
d80d32644492
Fix this inverted logic. Disconnect the selected endpoints as said in the field label.
masca@cpw.pidgin.im
parents:
31127
diff
changeset
|
498 if (purple_request_field_bool_get_value(field)) { |
31127
fe607234b0d8
When looping through the request fields, don't try to disconnect a field if
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31126
diff
changeset
|
499 const char *id = purple_request_field_get_id(field); |
31126
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
500 char *user; |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
501 purple_debug_info("msn", "Disconnecting Endpoint %s\n", id); |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
502 |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
503 user = g_strdup_printf("%s;%s", purple_account_get_username(account), id); |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
504 msn_notification_send_uun(session, user, MSN_UNIFIED_NOTIFICATION_MPOP, "goawyplzthxbye"); |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
505 g_free(user); |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
506 } |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
507 } |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
508 |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
509 g_free(data); |
31123
dd430f788bdc
Allow setting the name of the current location. The default is still Pidgin
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29049
diff
changeset
|
510 } |
dd430f788bdc
Allow setting the name of the current location. The default is still Pidgin
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29049
diff
changeset
|
511 |
dd430f788bdc
Allow setting the name of the current location. The default is still Pidgin
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29049
diff
changeset
|
512 static void |
31126
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
513 msn_show_locations(PurplePluginAction *action) |
31123
dd430f788bdc
Allow setting the name of the current location. The default is still Pidgin
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29049
diff
changeset
|
514 { |
dd430f788bdc
Allow setting the name of the current location. The default is still Pidgin
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29049
diff
changeset
|
515 PurpleConnection *pc; |
dd430f788bdc
Allow setting the name of the current location. The default is still Pidgin
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29049
diff
changeset
|
516 PurpleAccount *account; |
31126
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
517 MsnSession *session; |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
518 PurpleRequestFields *fields; |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
519 PurpleRequestFieldGroup *group; |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
520 PurpleRequestField *field; |
31392
a328691c761a
* Don't include ourselves in the list of other endpoints that can be
Mark Doliner <mark@kingant.net>
parents:
31385
diff
changeset
|
521 gboolean have_other_endpoints; |
31166
2a5dbea6ab6b
Use a linked list to store MsnUserEndpoints instead of a hash table.
Mark Doliner <mark@kingant.net>
parents:
31165
diff
changeset
|
522 GSList *l; |
31126
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
523 MsnLocationData *data; |
31123
dd430f788bdc
Allow setting the name of the current location. The default is still Pidgin
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29049
diff
changeset
|
524 |
dd430f788bdc
Allow setting the name of the current location. The default is still Pidgin
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29049
diff
changeset
|
525 pc = (PurpleConnection *)action->context; |
dd430f788bdc
Allow setting the name of the current location. The default is still Pidgin
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29049
diff
changeset
|
526 account = purple_connection_get_account(pc); |
31126
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
527 session = purple_connection_get_protocol_data(pc); |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
528 |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
529 fields = purple_request_fields_new(); |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
530 |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
531 group = purple_request_field_group_new(_("This Location")); |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
532 purple_request_fields_add_group(fields, group); |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
533 field = purple_request_field_label_new("endpoint-label", _("This is the name that identifies this location")); |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
534 purple_request_field_group_add_field(group, field); |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
535 field = purple_request_field_string_new("endpoint-name", |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
536 _("Name"), |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
537 purple_account_get_string(account, "endpoint-name", NULL), |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
538 FALSE); |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
539 purple_request_field_set_required(field, TRUE); |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
540 purple_request_field_group_add_field(group, field); |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
541 |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
542 group = purple_request_field_group_new(_("Other Locations")); |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
543 purple_request_fields_add_group(fields, group); |
31392
a328691c761a
* Don't include ourselves in the list of other endpoints that can be
Mark Doliner <mark@kingant.net>
parents:
31385
diff
changeset
|
544 |
a328691c761a
* Don't include ourselves in the list of other endpoints that can be
Mark Doliner <mark@kingant.net>
parents:
31385
diff
changeset
|
545 have_other_endpoints = FALSE; |
31166
2a5dbea6ab6b
Use a linked list to store MsnUserEndpoints instead of a hash table.
Mark Doliner <mark@kingant.net>
parents:
31165
diff
changeset
|
546 for (l = session->user->endpoints; l; l = l->next) { |
2a5dbea6ab6b
Use a linked list to store MsnUserEndpoints instead of a hash table.
Mark Doliner <mark@kingant.net>
parents:
31165
diff
changeset
|
547 MsnUserEndpoint *ep = l->data; |
2a5dbea6ab6b
Use a linked list to store MsnUserEndpoints instead of a hash table.
Mark Doliner <mark@kingant.net>
parents:
31165
diff
changeset
|
548 |
31392
a328691c761a
* Don't include ourselves in the list of other endpoints that can be
Mark Doliner <mark@kingant.net>
parents:
31385
diff
changeset
|
549 if (ep->id[0] != '\0' && strncasecmp(ep->id + 1, session->guid, 36) == 0) |
31166
2a5dbea6ab6b
Use a linked list to store MsnUserEndpoints instead of a hash table.
Mark Doliner <mark@kingant.net>
parents:
31165
diff
changeset
|
550 /* Don't add myself to the list */ |
2a5dbea6ab6b
Use a linked list to store MsnUserEndpoints instead of a hash table.
Mark Doliner <mark@kingant.net>
parents:
31165
diff
changeset
|
551 continue; |
2a5dbea6ab6b
Use a linked list to store MsnUserEndpoints instead of a hash table.
Mark Doliner <mark@kingant.net>
parents:
31165
diff
changeset
|
552 |
31392
a328691c761a
* Don't include ourselves in the list of other endpoints that can be
Mark Doliner <mark@kingant.net>
parents:
31385
diff
changeset
|
553 if (!have_other_endpoints) { |
a328691c761a
* Don't include ourselves in the list of other endpoints that can be
Mark Doliner <mark@kingant.net>
parents:
31385
diff
changeset
|
554 /* We do in fact have an endpoint other than ourselves... let's |
a328691c761a
* Don't include ourselves in the list of other endpoints that can be
Mark Doliner <mark@kingant.net>
parents:
31385
diff
changeset
|
555 add a label */ |
a328691c761a
* Don't include ourselves in the list of other endpoints that can be
Mark Doliner <mark@kingant.net>
parents:
31385
diff
changeset
|
556 field = purple_request_field_label_new("others-label", |
a328691c761a
* Don't include ourselves in the list of other endpoints that can be
Mark Doliner <mark@kingant.net>
parents:
31385
diff
changeset
|
557 _("You can sign out from other locations here")); |
a328691c761a
* Don't include ourselves in the list of other endpoints that can be
Mark Doliner <mark@kingant.net>
parents:
31385
diff
changeset
|
558 purple_request_field_group_add_field(group, field); |
a328691c761a
* Don't include ourselves in the list of other endpoints that can be
Mark Doliner <mark@kingant.net>
parents:
31385
diff
changeset
|
559 } |
a328691c761a
* Don't include ourselves in the list of other endpoints that can be
Mark Doliner <mark@kingant.net>
parents:
31385
diff
changeset
|
560 |
a328691c761a
* Don't include ourselves in the list of other endpoints that can be
Mark Doliner <mark@kingant.net>
parents:
31385
diff
changeset
|
561 have_other_endpoints = TRUE; |
31166
2a5dbea6ab6b
Use a linked list to store MsnUserEndpoints instead of a hash table.
Mark Doliner <mark@kingant.net>
parents:
31165
diff
changeset
|
562 field = purple_request_field_bool_new(ep->id, ep->name, FALSE); |
2a5dbea6ab6b
Use a linked list to store MsnUserEndpoints instead of a hash table.
Mark Doliner <mark@kingant.net>
parents:
31165
diff
changeset
|
563 purple_request_field_group_add_field(group, field); |
2a5dbea6ab6b
Use a linked list to store MsnUserEndpoints instead of a hash table.
Mark Doliner <mark@kingant.net>
parents:
31165
diff
changeset
|
564 } |
31392
a328691c761a
* Don't include ourselves in the list of other endpoints that can be
Mark Doliner <mark@kingant.net>
parents:
31385
diff
changeset
|
565 if (!have_other_endpoints) { |
a328691c761a
* Don't include ourselves in the list of other endpoints that can be
Mark Doliner <mark@kingant.net>
parents:
31385
diff
changeset
|
566 /* TODO: Due to limitations in our current request field API, the |
a328691c761a
* Don't include ourselves in the list of other endpoints that can be
Mark Doliner <mark@kingant.net>
parents:
31385
diff
changeset
|
567 following string will show up with a trailing colon. This should |
a328691c761a
* Don't include ourselves in the list of other endpoints that can be
Mark Doliner <mark@kingant.net>
parents:
31385
diff
changeset
|
568 be fixed either by adding an "include_colon" boolean, or creating |
a328691c761a
* Don't include ourselves in the list of other endpoints that can be
Mark Doliner <mark@kingant.net>
parents:
31385
diff
changeset
|
569 a separate purple_request_field_label_new_without_colon function, |
a328691c761a
* Don't include ourselves in the list of other endpoints that can be
Mark Doliner <mark@kingant.net>
parents:
31385
diff
changeset
|
570 or by never automatically adding the colon and requiring that |
a328691c761a
* Don't include ourselves in the list of other endpoints that can be
Mark Doliner <mark@kingant.net>
parents:
31385
diff
changeset
|
571 callers add the colon themselves. */ |
a328691c761a
* Don't include ourselves in the list of other endpoints that can be
Mark Doliner <mark@kingant.net>
parents:
31385
diff
changeset
|
572 field = purple_request_field_label_new("others-label", _("You are not signed in from any other locations.")); |
a328691c761a
* Don't include ourselves in the list of other endpoints that can be
Mark Doliner <mark@kingant.net>
parents:
31385
diff
changeset
|
573 purple_request_field_group_add_field(group, field); |
a328691c761a
* Don't include ourselves in the list of other endpoints that can be
Mark Doliner <mark@kingant.net>
parents:
31385
diff
changeset
|
574 } |
31166
2a5dbea6ab6b
Use a linked list to store MsnUserEndpoints instead of a hash table.
Mark Doliner <mark@kingant.net>
parents:
31165
diff
changeset
|
575 |
31126
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
576 data = g_new0(MsnLocationData, 1); |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
577 data->account = account; |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
578 data->session = session; |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
579 data->group = group; |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
580 |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
581 purple_request_fields(pc, NULL, NULL, NULL, |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
582 fields, |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
583 _("OK"), G_CALLBACK(update_endpoint_cb), |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
584 _("Cancel"), G_CALLBACK(g_free), |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
585 account, NULL, NULL, |
3d34a0870920
Add a dialog listing the other endpoints from which users can sign them out
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31123
diff
changeset
|
586 data); |
31123
dd430f788bdc
Allow setting the name of the current location. The default is still Pidgin
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29049
diff
changeset
|
587 } |
dd430f788bdc
Allow setting the name of the current location. The default is still Pidgin
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29049
diff
changeset
|
588 |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
589 static void |
31455
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
590 enable_mpop_cb(PurpleConnection *pc) |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
591 { |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
592 MsnSession *session = purple_connection_get_protocol_data(pc); |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
593 |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
594 purple_debug_info("msn", "Enabling MPOP\n"); |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
595 |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
596 session->enable_mpop = TRUE; |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
597 msn_annotate_contact(session, "Me", "MSN.IM.MPOP", "1", NULL); |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
598 |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
599 purple_prpl_got_account_actions(purple_connection_get_account(pc)); |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
600 } |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
601 |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
602 static void |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
603 disable_mpop_cb(PurpleConnection *pc) |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
604 { |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
605 PurpleAccount *account = purple_connection_get_account(pc); |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
606 MsnSession *session = purple_connection_get_protocol_data(pc); |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
607 GSList *l; |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
608 |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
609 purple_debug_info("msn", "Disabling MPOP\n"); |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
610 |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
611 session->enable_mpop = FALSE; |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
612 msn_annotate_contact(session, "Me", "MSN.IM.MPOP", "0", NULL); |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
613 |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
614 for (l = session->user->endpoints; l; l = l->next) { |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
615 MsnUserEndpoint *ep = l->data; |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
616 char *user; |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
617 |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
618 if (ep->id[0] != '\0' && strncasecmp(ep->id + 1, session->guid, 36) == 0) |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
619 /* Don't kick myself */ |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
620 continue; |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
621 |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
622 purple_debug_info("msn", "Disconnecting Endpoint %s\n", ep->id); |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
623 |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
624 user = g_strdup_printf("%s;%s", purple_account_get_username(account), ep->id); |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
625 msn_notification_send_uun(session, user, MSN_UNIFIED_NOTIFICATION_MPOP, "goawyplzthxbye"); |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
626 g_free(user); |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
627 } |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
628 |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
629 purple_prpl_got_account_actions(account); |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
630 } |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
631 |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
632 static void |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
633 msn_show_set_mpop(PurplePluginAction *action) |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
634 { |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
635 PurpleConnection *pc; |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
636 |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
637 pc = (PurpleConnection *)action->context; |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
638 |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
639 purple_request_action(pc, NULL, _("Allow multiple logins?"), |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
640 _("Do you want to allow or disallow connecting from " |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
641 "multiple locations simultaneously?"), |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
642 PURPLE_DEFAULT_ACTION_NONE, |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
643 purple_connection_get_account(pc), NULL, NULL, |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
644 pc, 3, |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
645 _("Allow"), G_CALLBACK(enable_mpop_cb), |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
646 _("Disallow"), G_CALLBACK(disable_mpop_cb), |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
647 _("Cancel"), NULL); |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
648 } |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
649 |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
650 static void |
15823 | 651 msn_show_set_home_phone(PurplePluginAction *action) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
652 { |
15823 | 653 PurpleConnection *gc; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
654 MsnSession *session; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
655 |
15823 | 656 gc = (PurpleConnection *) action->context; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
657 session = gc->proto_data; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
658 |
21099
51cf02dbdb0e
disapproval of revision 'c484d979c4fda4433a9633ff8b69bd8a395c9479'
Richard Laager <rlaager@wiktel.com>
parents:
21095
diff
changeset
|
659 purple_request_input(gc, NULL, _("Set your home phone number."), NULL, |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
660 msn_user_get_home_phone(session->user), FALSE, FALSE, NULL, |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
661 _("OK"), G_CALLBACK(msn_set_home_phone_cb), |
16442
08db93bbd798
Added account, who, and conversation parameters to the request API calls, and updated all code to match. I can't compile the Perl module, so I'd appreciate it if someone who knows it would verify that this doesn't break Perl.
Evan Schoenberg <evan.s@dreskin.net>
parents:
15823
diff
changeset
|
662 _("Cancel"), NULL, |
08db93bbd798
Added account, who, and conversation parameters to the request API calls, and updated all code to match. I can't compile the Perl module, so I'd appreciate it if someone who knows it would verify that this doesn't break Perl.
Evan Schoenberg <evan.s@dreskin.net>
parents:
15823
diff
changeset
|
663 purple_connection_get_account(gc), NULL, NULL, |
21099
51cf02dbdb0e
disapproval of revision 'c484d979c4fda4433a9633ff8b69bd8a395c9479'
Richard Laager <rlaager@wiktel.com>
parents:
21095
diff
changeset
|
664 gc); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
665 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
666 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
667 static void |
15823 | 668 msn_show_set_work_phone(PurplePluginAction *action) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
669 { |
15823 | 670 PurpleConnection *gc; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
671 MsnSession *session; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
672 |
15823 | 673 gc = (PurpleConnection *) action->context; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
674 session = gc->proto_data; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
675 |
21099
51cf02dbdb0e
disapproval of revision 'c484d979c4fda4433a9633ff8b69bd8a395c9479'
Richard Laager <rlaager@wiktel.com>
parents:
21095
diff
changeset
|
676 purple_request_input(gc, NULL, _("Set your work phone number."), NULL, |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
677 msn_user_get_work_phone(session->user), FALSE, FALSE, NULL, |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
678 _("OK"), G_CALLBACK(msn_set_work_phone_cb), |
16442
08db93bbd798
Added account, who, and conversation parameters to the request API calls, and updated all code to match. I can't compile the Perl module, so I'd appreciate it if someone who knows it would verify that this doesn't break Perl.
Evan Schoenberg <evan.s@dreskin.net>
parents:
15823
diff
changeset
|
679 _("Cancel"), NULL, |
08db93bbd798
Added account, who, and conversation parameters to the request API calls, and updated all code to match. I can't compile the Perl module, so I'd appreciate it if someone who knows it would verify that this doesn't break Perl.
Evan Schoenberg <evan.s@dreskin.net>
parents:
15823
diff
changeset
|
680 purple_connection_get_account(gc), NULL, NULL, |
21099
51cf02dbdb0e
disapproval of revision 'c484d979c4fda4433a9633ff8b69bd8a395c9479'
Richard Laager <rlaager@wiktel.com>
parents:
21095
diff
changeset
|
681 gc); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
682 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
683 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
684 static void |
15823 | 685 msn_show_set_mobile_phone(PurplePluginAction *action) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
686 { |
15823 | 687 PurpleConnection *gc; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
688 MsnSession *session; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
689 |
15823 | 690 gc = (PurpleConnection *) action->context; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
691 session = gc->proto_data; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
692 |
21099
51cf02dbdb0e
disapproval of revision 'c484d979c4fda4433a9633ff8b69bd8a395c9479'
Richard Laager <rlaager@wiktel.com>
parents:
21095
diff
changeset
|
693 purple_request_input(gc, NULL, _("Set your mobile phone number."), NULL, |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
694 msn_user_get_mobile_phone(session->user), FALSE, FALSE, NULL, |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
695 _("OK"), G_CALLBACK(msn_set_mobile_phone_cb), |
16442
08db93bbd798
Added account, who, and conversation parameters to the request API calls, and updated all code to match. I can't compile the Perl module, so I'd appreciate it if someone who knows it would verify that this doesn't break Perl.
Evan Schoenberg <evan.s@dreskin.net>
parents:
15823
diff
changeset
|
696 _("Cancel"), NULL, |
08db93bbd798
Added account, who, and conversation parameters to the request API calls, and updated all code to match. I can't compile the Perl module, so I'd appreciate it if someone who knows it would verify that this doesn't break Perl.
Evan Schoenberg <evan.s@dreskin.net>
parents:
15823
diff
changeset
|
697 purple_connection_get_account(gc), NULL, NULL, |
21099
51cf02dbdb0e
disapproval of revision 'c484d979c4fda4433a9633ff8b69bd8a395c9479'
Richard Laager <rlaager@wiktel.com>
parents:
21095
diff
changeset
|
698 gc); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
699 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
700 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
701 static void |
15823 | 702 msn_show_set_mobile_pages(PurplePluginAction *action) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
703 { |
15823 | 704 PurpleConnection *gc; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
705 |
15823 | 706 gc = (PurpleConnection *) action->context; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
707 |
21099
51cf02dbdb0e
disapproval of revision 'c484d979c4fda4433a9633ff8b69bd8a395c9479'
Richard Laager <rlaager@wiktel.com>
parents:
21095
diff
changeset
|
708 purple_request_action(gc, NULL, _("Allow MSN Mobile pages?"), |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
709 _("Do you want to allow or disallow people on " |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
710 "your buddy list to send you MSN Mobile pages " |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
711 "to your cell phone or other mobile device?"), |
22138
8515997d66e9
Minor improvements to the default_action used in purple_action_request
Mark Doliner <mark@kingant.net>
parents:
22103
diff
changeset
|
712 PURPLE_DEFAULT_ACTION_NONE, |
16442
08db93bbd798
Added account, who, and conversation parameters to the request API calls, and updated all code to match. I can't compile the Perl module, so I'd appreciate it if someone who knows it would verify that this doesn't break Perl.
Evan Schoenberg <evan.s@dreskin.net>
parents:
15823
diff
changeset
|
713 purple_connection_get_account(gc), NULL, NULL, |
21099
51cf02dbdb0e
disapproval of revision 'c484d979c4fda4433a9633ff8b69bd8a395c9479'
Richard Laager <rlaager@wiktel.com>
parents:
21095
diff
changeset
|
714 gc, 3, |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
715 _("Allow"), G_CALLBACK(enable_msn_pages_cb), |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
716 _("Disallow"), G_CALLBACK(disable_msn_pages_cb), |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
717 _("Cancel"), NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
718 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
719 |
23572
25aec47d9671
Disable the MSN blocked text dialog for now because it doesn't always
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23564
diff
changeset
|
720 /* QuLogic: Disabled until confirmed correct. */ |
25aec47d9671
Disable the MSN blocked text dialog for now because it doesn't always
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23564
diff
changeset
|
721 #if 0 |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
722 static void |
23522
fd124c21ebb7
Properly parse (most of) the MSN GCF command. Provides a
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23517
diff
changeset
|
723 msn_show_blocked_text(PurplePluginAction *action) |
fd124c21ebb7
Properly parse (most of) the MSN GCF command. Provides a
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23517
diff
changeset
|
724 { |
fd124c21ebb7
Properly parse (most of) the MSN GCF command. Provides a
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23517
diff
changeset
|
725 PurpleConnection *pc = (PurpleConnection *) action->context; |
fd124c21ebb7
Properly parse (most of) the MSN GCF command. Provides a
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23517
diff
changeset
|
726 MsnSession *session; |
fd124c21ebb7
Properly parse (most of) the MSN GCF command. Provides a
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23517
diff
changeset
|
727 char *title; |
fd124c21ebb7
Properly parse (most of) the MSN GCF command. Provides a
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23517
diff
changeset
|
728 |
fd124c21ebb7
Properly parse (most of) the MSN GCF command. Provides a
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23517
diff
changeset
|
729 session = pc->proto_data; |
fd124c21ebb7
Properly parse (most of) the MSN GCF command. Provides a
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23517
diff
changeset
|
730 |
fd124c21ebb7
Properly parse (most of) the MSN GCF command. Provides a
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23517
diff
changeset
|
731 title = g_strdup_printf(_("Blocked Text for %s"), session->account->username); |
fd124c21ebb7
Properly parse (most of) the MSN GCF command. Provides a
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23517
diff
changeset
|
732 if (session->blocked_text == NULL) { |
fd124c21ebb7
Properly parse (most of) the MSN GCF command. Provides a
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23517
diff
changeset
|
733 purple_notify_formatted(pc, title, title, NULL, _("No text is blocked for this account."), NULL, NULL); |
fd124c21ebb7
Properly parse (most of) the MSN GCF command. Provides a
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23517
diff
changeset
|
734 } else { |
fd124c21ebb7
Properly parse (most of) the MSN GCF command. Provides a
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23517
diff
changeset
|
735 char *blocked_text; |
fd124c21ebb7
Properly parse (most of) the MSN GCF command. Provides a
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23517
diff
changeset
|
736 blocked_text = g_strdup_printf(_("MSN servers are currently blocking the following regular expressions:<br/>%s"), |
fd124c21ebb7
Properly parse (most of) the MSN GCF command. Provides a
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23517
diff
changeset
|
737 session->blocked_text); |
31534
a8cc50c2279f
Remove trailing whitespace
Richard Laager <rlaager@wiktel.com>
parents:
31455
diff
changeset
|
738 |
23522
fd124c21ebb7
Properly parse (most of) the MSN GCF command. Provides a
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23517
diff
changeset
|
739 purple_notify_formatted(pc, title, title, NULL, blocked_text, NULL, NULL); |
fd124c21ebb7
Properly parse (most of) the MSN GCF command. Provides a
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23517
diff
changeset
|
740 g_free(blocked_text); |
fd124c21ebb7
Properly parse (most of) the MSN GCF command. Provides a
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23517
diff
changeset
|
741 } |
fd124c21ebb7
Properly parse (most of) the MSN GCF command. Provides a
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23517
diff
changeset
|
742 g_free(title); |
fd124c21ebb7
Properly parse (most of) the MSN GCF command. Provides a
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23517
diff
changeset
|
743 } |
23572
25aec47d9671
Disable the MSN blocked text dialog for now because it doesn't always
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23564
diff
changeset
|
744 #endif |
23522
fd124c21ebb7
Properly parse (most of) the MSN GCF command. Provides a
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23517
diff
changeset
|
745 |
fd124c21ebb7
Properly parse (most of) the MSN GCF command. Provides a
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23517
diff
changeset
|
746 static void |
15823 | 747 msn_show_hotmail_inbox(PurplePluginAction *action) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
748 { |
15823 | 749 PurpleConnection *gc; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
750 MsnSession *session; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
751 |
15823 | 752 gc = (PurpleConnection *) action->context; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
753 session = gc->proto_data; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
754 |
23656
b2609fca4943
Use "EmailEnabled" from the MSN profile message to determine whether
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23655
diff
changeset
|
755 if (!session->passport_info.email_enabled) { |
b2609fca4943
Use "EmailEnabled" from the MSN profile message to determine whether
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23655
diff
changeset
|
756 purple_notify_error(gc, NULL, |
b2609fca4943
Use "EmailEnabled" from the MSN profile message to determine whether
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23655
diff
changeset
|
757 _("This account does not have email enabled."), NULL); |
b2609fca4943
Use "EmailEnabled" from the MSN profile message to determine whether
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23655
diff
changeset
|
758 return; |
b2609fca4943
Use "EmailEnabled" from the MSN profile message to determine whether
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23655
diff
changeset
|
759 } |
b2609fca4943
Use "EmailEnabled" from the MSN profile message to determine whether
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23655
diff
changeset
|
760 |
31534
a8cc50c2279f
Remove trailing whitespace
Richard Laager <rlaager@wiktel.com>
parents:
31455
diff
changeset
|
761 /** apparently the correct value is 777, use 750 as a failsafe */ |
23657
7f4b697c6947
Use a URL to open MSN Hotmail inbox instead of a temporary file.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23656
diff
changeset
|
762 if ((session->passport_info.mail_url == NULL) |
7f4b697c6947
Use a URL to open MSN Hotmail inbox instead of a temporary file.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23656
diff
changeset
|
763 || (time (NULL) - session->passport_info.mail_timestamp >= 750)) { |
23599
ab70eae012f5
Fixup MSN mailbox handling based on a patch from Felipe, plus various
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23572
diff
changeset
|
764 MsnTransaction *trans; |
ab70eae012f5
Fixup MSN mailbox handling based on a patch from Felipe, plus various
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23572
diff
changeset
|
765 MsnCmdProc *cmdproc; |
ab70eae012f5
Fixup MSN mailbox handling based on a patch from Felipe, plus various
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23572
diff
changeset
|
766 |
ab70eae012f5
Fixup MSN mailbox handling based on a patch from Felipe, plus various
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23572
diff
changeset
|
767 cmdproc = session->notification->cmdproc; |
ab70eae012f5
Fixup MSN mailbox handling based on a patch from Felipe, plus various
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23572
diff
changeset
|
768 |
ab70eae012f5
Fixup MSN mailbox handling based on a patch from Felipe, plus various
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23572
diff
changeset
|
769 trans = msn_transaction_new(cmdproc, "URL", "%s", "INBOX"); |
23656
b2609fca4943
Use "EmailEnabled" from the MSN profile message to determine whether
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23655
diff
changeset
|
770 msn_transaction_set_data(trans, GUINT_TO_POINTER(TRUE)); |
23599
ab70eae012f5
Fixup MSN mailbox handling based on a patch from Felipe, plus various
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23572
diff
changeset
|
771 |
ab70eae012f5
Fixup MSN mailbox handling based on a patch from Felipe, plus various
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23572
diff
changeset
|
772 msn_cmdproc_send_trans(cmdproc, trans); |
ab70eae012f5
Fixup MSN mailbox handling based on a patch from Felipe, plus various
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23572
diff
changeset
|
773 |
23657
7f4b697c6947
Use a URL to open MSN Hotmail inbox instead of a temporary file.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23656
diff
changeset
|
774 } else |
7f4b697c6947
Use a URL to open MSN Hotmail inbox instead of a temporary file.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23656
diff
changeset
|
775 purple_notify_uri(gc, session->passport_info.mail_url); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
776 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
777 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
778 static void |
15823 | 779 show_send_to_mobile_cb(PurpleBlistNode *node, gpointer ignored) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
780 { |
15823 | 781 PurpleBuddy *buddy; |
782 PurpleConnection *gc; | |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
783 MsnMobileData *data; |
24120
16734635febf
Start hiding blist.h internals in prpls.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23978
diff
changeset
|
784 PurpleAccount *account; |
16734635febf
Start hiding blist.h internals in prpls.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23978
diff
changeset
|
785 const char *name; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
786 |
15823 | 787 g_return_if_fail(PURPLE_BLIST_NODE_IS_BUDDY(node)); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
788 |
15823 | 789 buddy = (PurpleBuddy *) node; |
24120
16734635febf
Start hiding blist.h internals in prpls.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23978
diff
changeset
|
790 account = purple_buddy_get_account(buddy); |
16734635febf
Start hiding blist.h internals in prpls.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23978
diff
changeset
|
791 gc = purple_account_get_connection(account); |
16734635febf
Start hiding blist.h internals in prpls.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23978
diff
changeset
|
792 name = purple_buddy_get_name(buddy); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
793 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
794 data = g_new0(MsnMobileData, 1); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
795 data->gc = gc; |
24120
16734635febf
Start hiding blist.h internals in prpls.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23978
diff
changeset
|
796 data->passport = name; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
797 |
21099
51cf02dbdb0e
disapproval of revision 'c484d979c4fda4433a9633ff8b69bd8a395c9479'
Richard Laager <rlaager@wiktel.com>
parents:
21095
diff
changeset
|
798 purple_request_input(gc, NULL, _("Send a mobile message."), NULL, |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
799 NULL, TRUE, FALSE, NULL, |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
800 _("Page"), G_CALLBACK(send_to_mobile_cb), |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
801 _("Close"), G_CALLBACK(close_mobile_page_cb), |
24120
16734635febf
Start hiding blist.h internals in prpls.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23978
diff
changeset
|
802 account, name, NULL, |
21099
51cf02dbdb0e
disapproval of revision 'c484d979c4fda4433a9633ff8b69bd8a395c9479'
Richard Laager <rlaager@wiktel.com>
parents:
21095
diff
changeset
|
803 data); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
804 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
805 |
16848
133932a97faa
Make MSN mobile buddies offline, mobile, and offline-messagable. Fixes #215
Sean Egan <seanegan@gmail.com>
parents:
16675
diff
changeset
|
806 static gboolean |
133932a97faa
Make MSN mobile buddies offline, mobile, and offline-messagable. Fixes #215
Sean Egan <seanegan@gmail.com>
parents:
16675
diff
changeset
|
807 msn_offline_message(const PurpleBuddy *buddy) { |
23887
b664b3924a52
correctly say we support offline messages for all buddies, this was never
Ka-Hing Cheung <khc@hxbc.us>
parents:
23797
diff
changeset
|
808 return TRUE; |
16848
133932a97faa
Make MSN mobile buddies offline, mobile, and offline-messagable. Fixes #215
Sean Egan <seanegan@gmail.com>
parents:
16675
diff
changeset
|
809 } |
133932a97faa
Make MSN mobile buddies offline, mobile, and offline-messagable. Fixes #215
Sean Egan <seanegan@gmail.com>
parents:
16675
diff
changeset
|
810 |
20459
46437bdf316b
In the initial ADL listing, send the commands in the correct sequence as required by the server: BLP, ADL and PRP. When the server acknowledges this initial ADL, send CHG with status information
Carlos Silva <typ0@pidgin.im>
parents:
20456
diff
changeset
|
811 void |
46437bdf316b
In the initial ADL listing, send the commands in the correct sequence as required by the server: BLP, ADL and PRP. When the server acknowledges this initial ADL, send CHG with status information
Carlos Silva <typ0@pidgin.im>
parents:
20456
diff
changeset
|
812 msn_send_privacy(PurpleConnection *gc) |
46437bdf316b
In the initial ADL listing, send the commands in the correct sequence as required by the server: BLP, ADL and PRP. When the server acknowledges this initial ADL, send CHG with status information
Carlos Silva <typ0@pidgin.im>
parents:
20456
diff
changeset
|
813 { |
23730
5aba1f0f36b0
Fix up some whitespace problems.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23673
diff
changeset
|
814 PurpleAccount *account; |
5aba1f0f36b0
Fix up some whitespace problems.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23673
diff
changeset
|
815 MsnSession *session; |
5aba1f0f36b0
Fix up some whitespace problems.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23673
diff
changeset
|
816 MsnCmdProc *cmdproc; |
31147
4d7dfeae29c6
msn: Delete msn_cmdproc_send since it just have duplicated code from
masca@cpw.pidgin.im
parents:
31143
diff
changeset
|
817 MsnTransaction *trans; |
23730
5aba1f0f36b0
Fix up some whitespace problems.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23673
diff
changeset
|
818 |
5aba1f0f36b0
Fix up some whitespace problems.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23673
diff
changeset
|
819 account = purple_connection_get_account(gc); |
5aba1f0f36b0
Fix up some whitespace problems.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23673
diff
changeset
|
820 session = gc->proto_data; |
5aba1f0f36b0
Fix up some whitespace problems.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23673
diff
changeset
|
821 cmdproc = session->notification->cmdproc; |
5aba1f0f36b0
Fix up some whitespace problems.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23673
diff
changeset
|
822 |
5aba1f0f36b0
Fix up some whitespace problems.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23673
diff
changeset
|
823 if (account->perm_deny == PURPLE_PRIVACY_ALLOW_ALL || |
5aba1f0f36b0
Fix up some whitespace problems.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23673
diff
changeset
|
824 account->perm_deny == PURPLE_PRIVACY_DENY_USERS) |
31147
4d7dfeae29c6
msn: Delete msn_cmdproc_send since it just have duplicated code from
masca@cpw.pidgin.im
parents:
31143
diff
changeset
|
825 trans = msn_transaction_new(cmdproc, "BLP", "%s", "AL"); |
23730
5aba1f0f36b0
Fix up some whitespace problems.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23673
diff
changeset
|
826 else |
31147
4d7dfeae29c6
msn: Delete msn_cmdproc_send since it just have duplicated code from
masca@cpw.pidgin.im
parents:
31143
diff
changeset
|
827 trans = msn_transaction_new(cmdproc, "BLP", "%s", "BL"); |
4d7dfeae29c6
msn: Delete msn_cmdproc_send since it just have duplicated code from
masca@cpw.pidgin.im
parents:
31143
diff
changeset
|
828 |
4d7dfeae29c6
msn: Delete msn_cmdproc_send since it just have duplicated code from
masca@cpw.pidgin.im
parents:
31143
diff
changeset
|
829 msn_cmdproc_send_trans(cmdproc, trans); |
20459
46437bdf316b
In the initial ADL listing, send the commands in the correct sequence as required by the server: BLP, ADL and PRP. When the server acknowledges this initial ADL, send CHG with status information
Carlos Silva <typ0@pidgin.im>
parents:
20456
diff
changeset
|
830 } |
46437bdf316b
In the initial ADL listing, send the commands in the correct sequence as required by the server: BLP, ADL and PRP. When the server acknowledges this initial ADL, send CHG with status information
Carlos Silva <typ0@pidgin.im>
parents:
20456
diff
changeset
|
831 |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
832 static void |
15823 | 833 initiate_chat_cb(PurpleBlistNode *node, gpointer data) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
834 { |
15823 | 835 PurpleBuddy *buddy; |
836 PurpleConnection *gc; | |
24120
16734635febf
Start hiding blist.h internals in prpls.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23978
diff
changeset
|
837 PurpleAccount *account; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
838 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
839 MsnSession *session; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
840 MsnSwitchBoard *swboard; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
841 |
23736
8ba3d6905252
When opening MSN chats, use "Local alias" in preference to "Display
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23730
diff
changeset
|
842 const char *alias; |
8ba3d6905252
When opening MSN chats, use "Local alias" in preference to "Display
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23730
diff
changeset
|
843 |
15823 | 844 g_return_if_fail(PURPLE_BLIST_NODE_IS_BUDDY(node)); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
845 |
15823 | 846 buddy = (PurpleBuddy *) node; |
24120
16734635febf
Start hiding blist.h internals in prpls.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23978
diff
changeset
|
847 account = purple_buddy_get_account(buddy); |
16734635febf
Start hiding blist.h internals in prpls.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23978
diff
changeset
|
848 gc = purple_account_get_connection(account); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
849 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
850 session = gc->proto_data; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
851 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
852 swboard = msn_switchboard_new(session); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
853 msn_switchboard_request(swboard); |
24120
16734635febf
Start hiding blist.h internals in prpls.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23978
diff
changeset
|
854 msn_switchboard_request_add_user(swboard, purple_buddy_get_name(buddy)); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
855 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
856 /* TODO: This might move somewhere else, after USR might be */ |
22043
23fef20a0ef2
Use a unique chat id across all sessions for multi-user chats, probably
Stu Tomlinson <stu@nosnilmot.com>
parents:
22000
diff
changeset
|
857 swboard->chat_id = msn_switchboard_get_chat_id(); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
858 swboard->conv = serv_got_joined_chat(gc, swboard->chat_id, "MSN Chat"); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
859 swboard->flag = MSN_SB_FLAG_IM; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
860 |
23736
8ba3d6905252
When opening MSN chats, use "Local alias" in preference to "Display
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23730
diff
changeset
|
861 /* Local alias > Display name > Username */ |
24120
16734635febf
Start hiding blist.h internals in prpls.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23978
diff
changeset
|
862 if ((alias = purple_account_get_alias(account)) == NULL) |
23736
8ba3d6905252
When opening MSN chats, use "Local alias" in preference to "Display
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23730
diff
changeset
|
863 if ((alias = purple_connection_get_display_name(gc)) == NULL) |
24120
16734635febf
Start hiding blist.h internals in prpls.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23978
diff
changeset
|
864 alias = purple_account_get_username(account); |
23736
8ba3d6905252
When opening MSN chats, use "Local alias" in preference to "Display
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23730
diff
changeset
|
865 |
15823 | 866 purple_conv_chat_add_user(PURPLE_CONV_CHAT(swboard->conv), |
23736
8ba3d6905252
When opening MSN chats, use "Local alias" in preference to "Display
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23730
diff
changeset
|
867 alias, NULL, PURPLE_CBFLAGS_NONE, TRUE); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
868 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
869 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
870 static void |
15823 | 871 t_msn_xfer_init(PurpleXfer *xfer) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
872 { |
31269 | 873 msn_request_ft(xfer); |
30174
b0bc67f42027
Fix a possible use-after-free.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30089
diff
changeset
|
874 } |
b0bc67f42027
Fix a possible use-after-free.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30089
diff
changeset
|
875 |
b0bc67f42027
Fix a possible use-after-free.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30089
diff
changeset
|
876 static void |
b0bc67f42027
Fix a possible use-after-free.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30089
diff
changeset
|
877 t_msn_xfer_cancel_send(PurpleXfer *xfer) |
b0bc67f42027
Fix a possible use-after-free.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30089
diff
changeset
|
878 { |
b0bc67f42027
Fix a possible use-after-free.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30089
diff
changeset
|
879 MsnSlpLink *slplink = xfer->data; |
b0bc67f42027
Fix a possible use-after-free.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30089
diff
changeset
|
880 msn_slplink_unref(slplink); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
881 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
882 |
15823 | 883 static PurpleXfer* |
884 msn_new_xfer(PurpleConnection *gc, const char *who) | |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
885 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
886 MsnSession *session; |
15823 | 887 PurpleXfer *xfer; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
888 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
889 session = gc->proto_data; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
890 |
15823 | 891 xfer = purple_xfer_new(gc->account, PURPLE_XFER_SEND, who); |
19797
60bc06498746
Committing khc's msnp14 changes from Trac Ticket #148. --rlaager
Ka-Hing Cheung <khc@hxbc.us>
parents:
15823
diff
changeset
|
892 |
24355
63558ea6fac6
It's an error if purple_xfer_new fails, so use a g_return_val_if_fail
Mark Doliner <mark@kingant.net>
parents:
24142
diff
changeset
|
893 g_return_val_if_fail(xfer != NULL, NULL); |
63558ea6fac6
It's an error if purple_xfer_new fails, so use a g_return_val_if_fail
Mark Doliner <mark@kingant.net>
parents:
24142
diff
changeset
|
894 |
30174
b0bc67f42027
Fix a possible use-after-free.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30089
diff
changeset
|
895 xfer->data = msn_slplink_ref(msn_session_get_slplink(session, who)); |
24355
63558ea6fac6
It's an error if purple_xfer_new fails, so use a g_return_val_if_fail
Mark Doliner <mark@kingant.net>
parents:
24142
diff
changeset
|
896 |
63558ea6fac6
It's an error if purple_xfer_new fails, so use a g_return_val_if_fail
Mark Doliner <mark@kingant.net>
parents:
24142
diff
changeset
|
897 purple_xfer_set_init_fnc(xfer, t_msn_xfer_init); |
30174
b0bc67f42027
Fix a possible use-after-free.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30089
diff
changeset
|
898 purple_xfer_set_cancel_send_fnc(xfer, t_msn_xfer_cancel_send); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
899 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
900 return xfer; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
901 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
902 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
903 static void |
15823 | 904 msn_send_file(PurpleConnection *gc, const char *who, const char *file) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
905 { |
15823 | 906 PurpleXfer *xfer = msn_new_xfer(gc, who); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
907 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
908 if (file) |
15823 | 909 purple_xfer_request_accepted(xfer, file); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
910 else |
15823 | 911 purple_xfer_request(xfer); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
912 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
913 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
914 static gboolean |
15823 | 915 msn_can_receive_file(PurpleConnection *gc, const char *who) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
916 { |
15823 | 917 PurpleAccount *account; |
23661
6659ba7b3941
Fix a crash when the user isn't in your list.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
23657
diff
changeset
|
918 gchar *normal; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
919 gboolean ret; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
920 |
15823 | 921 account = purple_connection_get_account(gc); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
922 |
15823 | 923 normal = g_strdup(msn_normalize(account, purple_account_get_username(account))); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
924 ret = strcmp(normal, msn_normalize(account, who)); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
925 g_free(normal); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
926 |
23654
46da06b6b4ce
Disable sending files to MSN contacts using the web messenger. Not sure
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23605
diff
changeset
|
927 if (ret) { |
23661
6659ba7b3941
Fix a crash when the user isn't in your list.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
23657
diff
changeset
|
928 MsnSession *session = gc->proto_data; |
23673
7a71457cdd32
Don't crash if MsnSession is NULL when checking for ability to send a
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23661
diff
changeset
|
929 if (session) { |
7a71457cdd32
Don't crash if MsnSession is NULL when checking for ability to send a
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23661
diff
changeset
|
930 MsnUser *user = msn_userlist_find_user(session->userlist, who); |
28837
019c8be6b52d
Cannot send a file to a Yahoo! user on MSN.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
28790
diff
changeset
|
931 if (user) { |
31657
d235da74af79
Updated client capabilities and networks from msnpsharp.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
932 /* Include these too: MSN_CAP_MOBILE_ON|MSN_CAP_WEB_WATCH ? */ |
d235da74af79
Updated client capabilities and networks from msnpsharp.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
933 if ((user->clientid & MSN_CAP_VIA_WEBIM) || |
28837
019c8be6b52d
Cannot send a file to a Yahoo! user on MSN.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
28790
diff
changeset
|
934 user->networkid == MSN_NETWORK_YAHOO) |
019c8be6b52d
Cannot send a file to a Yahoo! user on MSN.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
28790
diff
changeset
|
935 ret = FALSE; |
019c8be6b52d
Cannot send a file to a Yahoo! user on MSN.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
28790
diff
changeset
|
936 else |
019c8be6b52d
Cannot send a file to a Yahoo! user on MSN.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
28790
diff
changeset
|
937 ret = TRUE; |
019c8be6b52d
Cannot send a file to a Yahoo! user on MSN.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
28790
diff
changeset
|
938 } |
23673
7a71457cdd32
Don't crash if MsnSession is NULL when checking for ability to send a
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23661
diff
changeset
|
939 } else |
7a71457cdd32
Don't crash if MsnSession is NULL when checking for ability to send a
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23661
diff
changeset
|
940 ret = FALSE; |
23654
46da06b6b4ce
Disable sending files to MSN contacts using the web messenger. Not sure
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23605
diff
changeset
|
941 } |
46da06b6b4ce
Disable sending files to MSN contacts using the web messenger. Not sure
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23605
diff
changeset
|
942 |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
943 return ret; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
944 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
945 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
946 /************************************************************************** |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
947 * Protocol Plugin ops |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
948 **************************************************************************/ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
949 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
950 static const char * |
15823 | 951 msn_list_icon(PurpleAccount *a, PurpleBuddy *b) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
952 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
953 return "msn"; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
954 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
955 |
23524
ad565744246e
Add support for emblems in MSN protocol. Emblems include bots, mobile
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23522
diff
changeset
|
956 static const char * |
ad565744246e
Add support for emblems in MSN protocol. Emblems include bots, mobile
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23522
diff
changeset
|
957 msn_list_emblems(PurpleBuddy *b) |
ad565744246e
Add support for emblems in MSN protocol. Emblems include bots, mobile
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23522
diff
changeset
|
958 { |
25290
8d562557ed6f
Some more PurpleBuddy::proto_data related changes.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
24294
diff
changeset
|
959 MsnUser *user = purple_buddy_get_protocol_data(b); |
23524
ad565744246e
Add support for emblems in MSN protocol. Emblems include bots, mobile
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23522
diff
changeset
|
960 |
ad565744246e
Add support for emblems in MSN protocol. Emblems include bots, mobile
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23522
diff
changeset
|
961 if (user != NULL) { |
31657
d235da74af79
Updated client capabilities and networks from msnpsharp.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
962 if (user->clientid & MSN_CAP_BOT) |
23524
ad565744246e
Add support for emblems in MSN protocol. Emblems include bots, mobile
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23522
diff
changeset
|
963 return "bot"; |
31657
d235da74af79
Updated client capabilities and networks from msnpsharp.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
964 if (user->clientid & MSN_CAP_VIA_MOBILE) |
23655
8218a2c209f1
On MSN, use "external" and "mobile" for Web messenger and mobile
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23654
diff
changeset
|
965 return "mobile"; |
23524
ad565744246e
Add support for emblems in MSN protocol. Emblems include bots, mobile
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23522
diff
changeset
|
966 #if 0 |
ad565744246e
Add support for emblems in MSN protocol. Emblems include bots, mobile
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23522
diff
changeset
|
967 /* XXX: Since we don't support this, there's no point in showing it just yet */ |
31657
d235da74af79
Updated client capabilities and networks from msnpsharp.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
968 if (user->clientid & MSN_CAP_SCHANNEL) |
23524
ad565744246e
Add support for emblems in MSN protocol. Emblems include bots, mobile
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23522
diff
changeset
|
969 return "secure"; |
ad565744246e
Add support for emblems in MSN protocol. Emblems include bots, mobile
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23522
diff
changeset
|
970 #endif |
31657
d235da74af79
Updated client capabilities and networks from msnpsharp.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
971 if (user->clientid & MSN_CAP_VIA_WEBIM) |
23655
8218a2c209f1
On MSN, use "external" and "mobile" for Web messenger and mobile
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23654
diff
changeset
|
972 return "external"; |
23524
ad565744246e
Add support for emblems in MSN protocol. Emblems include bots, mobile
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23522
diff
changeset
|
973 if (user->networkid == MSN_NETWORK_YAHOO) |
ad565744246e
Add support for emblems in MSN protocol. Emblems include bots, mobile
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23522
diff
changeset
|
974 return "yahoo"; |
ad565744246e
Add support for emblems in MSN protocol. Emblems include bots, mobile
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23522
diff
changeset
|
975 } |
ad565744246e
Add support for emblems in MSN protocol. Emblems include bots, mobile
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23522
diff
changeset
|
976 |
ad565744246e
Add support for emblems in MSN protocol. Emblems include bots, mobile
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23522
diff
changeset
|
977 return NULL; |
ad565744246e
Add support for emblems in MSN protocol. Emblems include bots, mobile
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23522
diff
changeset
|
978 } |
ad565744246e
Add support for emblems in MSN protocol. Emblems include bots, mobile
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23522
diff
changeset
|
979 |
20394
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
980 /* |
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
981 * Set the User status text |
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
982 */ |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
983 static char * |
15823 | 984 msn_status_text(PurpleBuddy *buddy) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
985 { |
15823 | 986 PurplePresence *presence; |
987 PurpleStatus *status; | |
20570
5913725cbcd6
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
20567
diff
changeset
|
988 const char *msg; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
989 |
15823 | 990 presence = purple_buddy_get_presence(buddy); |
991 status = purple_presence_get_active_status(presence); | |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
992 |
24931 | 993 /* Official client says media takes precedence over message */ |
994 /* I say message take precedence over media! Plus prpl-jabber agrees | |
995 too */ | |
996 msg = purple_status_get_attr_string(status, "message"); | |
997 if (msg && *msg) | |
998 return g_markup_escape_text(msg, -1); | |
999 | |
20570
5913725cbcd6
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
20567
diff
changeset
|
1000 if (purple_presence_is_status_primitive_active(presence, PURPLE_STATUS_TUNE)) { |
24455
e344426d7c28
Add the Games and Office media to MSN as attributes tacked on to the tune
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24451
diff
changeset
|
1001 const char *title, *game, *office; |
20570
5913725cbcd6
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
20567
diff
changeset
|
1002 char *media, *esc; |
5913725cbcd6
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
20567
diff
changeset
|
1003 status = purple_presence_get_status(presence, "tune"); |
5913725cbcd6
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
20567
diff
changeset
|
1004 title = purple_status_get_attr_string(status, PURPLE_TUNE_TITLE); |
24455
e344426d7c28
Add the Games and Office media to MSN as attributes tacked on to the tune
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24451
diff
changeset
|
1005 |
e344426d7c28
Add the Games and Office media to MSN as attributes tacked on to the tune
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24451
diff
changeset
|
1006 game = purple_status_get_attr_string(status, "game"); |
e344426d7c28
Add the Games and Office media to MSN as attributes tacked on to the tune
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24451
diff
changeset
|
1007 office = purple_status_get_attr_string(status, "office"); |
e344426d7c28
Add the Games and Office media to MSN as attributes tacked on to the tune
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24451
diff
changeset
|
1008 |
e344426d7c28
Add the Games and Office media to MSN as attributes tacked on to the tune
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24451
diff
changeset
|
1009 if (title && *title) { |
e344426d7c28
Add the Games and Office media to MSN as attributes tacked on to the tune
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24451
diff
changeset
|
1010 const char *artist = purple_status_get_attr_string(status, PURPLE_TUNE_ARTIST); |
e344426d7c28
Add the Games and Office media to MSN as attributes tacked on to the tune
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24451
diff
changeset
|
1011 const char *album = purple_status_get_attr_string(status, PURPLE_TUNE_ALBUM); |
27592
4cddfd2d06be
Use purple_util_format_song_info in MSN/XMPP for the buddy list status text.
Paul Aurich <paul@darkrain42.org>
parents:
27477
diff
changeset
|
1012 media = purple_util_format_song_info(title, artist, album, NULL); |
27604
8cfc45425ac7
Don't double-escape media.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27603
diff
changeset
|
1013 return media; |
24455
e344426d7c28
Add the Games and Office media to MSN as attributes tacked on to the tune
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24451
diff
changeset
|
1014 } |
e344426d7c28
Add the Games and Office media to MSN as attributes tacked on to the tune
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24451
diff
changeset
|
1015 else if (game && *game) |
e344426d7c28
Add the Games and Office media to MSN as attributes tacked on to the tune
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24451
diff
changeset
|
1016 media = g_strdup_printf("Playing %s", game); |
e344426d7c28
Add the Games and Office media to MSN as attributes tacked on to the tune
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24451
diff
changeset
|
1017 else if (office && *office) |
e344426d7c28
Add the Games and Office media to MSN as attributes tacked on to the tune
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24451
diff
changeset
|
1018 media = g_strdup_printf("Editing %s", office); |
e344426d7c28
Add the Games and Office media to MSN as attributes tacked on to the tune
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24451
diff
changeset
|
1019 else |
e344426d7c28
Add the Games and Office media to MSN as attributes tacked on to the tune
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24451
diff
changeset
|
1020 return NULL; |
20570
5913725cbcd6
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
20567
diff
changeset
|
1021 esc = g_markup_escape_text(media, -1); |
5913725cbcd6
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
20567
diff
changeset
|
1022 g_free(media); |
5913725cbcd6
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
20567
diff
changeset
|
1023 return esc; |
5913725cbcd6
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
20567
diff
changeset
|
1024 } |
5913725cbcd6
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
20567
diff
changeset
|
1025 |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1026 return NULL; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1027 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1028 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1029 static void |
15823 | 1030 msn_tooltip_text(PurpleBuddy *buddy, PurpleNotifyUserInfo *user_info, gboolean full) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1031 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1032 MsnUser *user; |
15823 | 1033 PurplePresence *presence = purple_buddy_get_presence(buddy); |
1034 PurpleStatus *status = purple_presence_get_active_status(presence); | |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1035 |
25290
8d562557ed6f
Some more PurpleBuddy::proto_data related changes.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
24294
diff
changeset
|
1036 user = purple_buddy_get_protocol_data(buddy); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1037 |
15823 | 1038 if (purple_presence_is_online(presence)) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1039 { |
20570
5913725cbcd6
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
20567
diff
changeset
|
1040 const char *psm, *name; |
24455
e344426d7c28
Add the Games and Office media to MSN as attributes tacked on to the tune
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24451
diff
changeset
|
1041 const char *mediatype = NULL; |
20570
5913725cbcd6
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
20567
diff
changeset
|
1042 char *currentmedia = NULL; |
19797
60bc06498746
Committing khc's msnp14 changes from Trac Ticket #148. --rlaager
Ka-Hing Cheung <khc@hxbc.us>
parents:
15823
diff
changeset
|
1043 |
60bc06498746
Committing khc's msnp14 changes from Trac Ticket #148. --rlaager
Ka-Hing Cheung <khc@hxbc.us>
parents:
15823
diff
changeset
|
1044 psm = purple_status_get_attr_string(status, "message"); |
20570
5913725cbcd6
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
20567
diff
changeset
|
1045 if (purple_presence_is_status_primitive_active(presence, PURPLE_STATUS_TUNE)) { |
5913725cbcd6
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
20567
diff
changeset
|
1046 PurpleStatus *tune = purple_presence_get_status(presence, "tune"); |
5913725cbcd6
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
20567
diff
changeset
|
1047 const char *title = purple_status_get_attr_string(tune, PURPLE_TUNE_TITLE); |
24455
e344426d7c28
Add the Games and Office media to MSN as attributes tacked on to the tune
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24451
diff
changeset
|
1048 const char *game = purple_status_get_attr_string(tune, "game"); |
e344426d7c28
Add the Games and Office media to MSN as attributes tacked on to the tune
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24451
diff
changeset
|
1049 const char *office = purple_status_get_attr_string(tune, "office"); |
e344426d7c28
Add the Games and Office media to MSN as attributes tacked on to the tune
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24451
diff
changeset
|
1050 if (title && *title) { |
24456
7a5f6ddd11b1
Only get the artist and album if we are setting a Music mediatype.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24455
diff
changeset
|
1051 const char *artist = purple_status_get_attr_string(tune, PURPLE_TUNE_ARTIST); |
7a5f6ddd11b1
Only get the artist and album if we are setting a Music mediatype.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24455
diff
changeset
|
1052 const char *album = purple_status_get_attr_string(tune, PURPLE_TUNE_ALBUM); |
24455
e344426d7c28
Add the Games and Office media to MSN as attributes tacked on to the tune
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24451
diff
changeset
|
1053 mediatype = _("Now Listening"); |
e344426d7c28
Add the Games and Office media to MSN as attributes tacked on to the tune
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24451
diff
changeset
|
1054 currentmedia = purple_util_format_song_info(title, artist, album, NULL); |
e344426d7c28
Add the Games and Office media to MSN as attributes tacked on to the tune
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24451
diff
changeset
|
1055 } else if (game && *game) { |
e344426d7c28
Add the Games and Office media to MSN as attributes tacked on to the tune
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24451
diff
changeset
|
1056 mediatype = _("Playing a game"); |
e344426d7c28
Add the Games and Office media to MSN as attributes tacked on to the tune
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24451
diff
changeset
|
1057 currentmedia = g_strdup(game); |
e344426d7c28
Add the Games and Office media to MSN as attributes tacked on to the tune
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24451
diff
changeset
|
1058 } else if (office && *office) { |
e344426d7c28
Add the Games and Office media to MSN as attributes tacked on to the tune
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24451
diff
changeset
|
1059 mediatype = _("Working"); |
e344426d7c28
Add the Games and Office media to MSN as attributes tacked on to the tune
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24451
diff
changeset
|
1060 currentmedia = g_strdup(office); |
e344426d7c28
Add the Games and Office media to MSN as attributes tacked on to the tune
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24451
diff
changeset
|
1061 } |
20570
5913725cbcd6
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
20567
diff
changeset
|
1062 } |
20394
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1063 |
21139
0df8263c21b8
show the idle status on tooltip as well, Fixes #3744
Ka-Hing Cheung <khc@hxbc.us>
parents:
21113
diff
changeset
|
1064 if (!purple_status_is_available(status)) { |
20502
b5a2938b4549
Fixes #2502, now we show the status name in the tooltip instead of "Status"
Ka-Hing Cheung <khc@hxbc.us>
parents:
20488
diff
changeset
|
1065 name = purple_status_get_name(status); |
b5a2938b4549
Fixes #2502, now we show the status name in the tooltip instead of "Status"
Ka-Hing Cheung <khc@hxbc.us>
parents:
20488
diff
changeset
|
1066 } else { |
b5a2938b4549
Fixes #2502, now we show the status name in the tooltip instead of "Status"
Ka-Hing Cheung <khc@hxbc.us>
parents:
20488
diff
changeset
|
1067 name = NULL; |
b5a2938b4549
Fixes #2502, now we show the status name in the tooltip instead of "Status"
Ka-Hing Cheung <khc@hxbc.us>
parents:
20488
diff
changeset
|
1068 } |
b5a2938b4549
Fixes #2502, now we show the status name in the tooltip instead of "Status"
Ka-Hing Cheung <khc@hxbc.us>
parents:
20488
diff
changeset
|
1069 |
b5a2938b4549
Fixes #2502, now we show the status name in the tooltip instead of "Status"
Ka-Hing Cheung <khc@hxbc.us>
parents:
20488
diff
changeset
|
1070 if (name != NULL && *name) { |
21139
0df8263c21b8
show the idle status on tooltip as well, Fixes #3744
Ka-Hing Cheung <khc@hxbc.us>
parents:
21113
diff
changeset
|
1071 char *tmp2; |
0df8263c21b8
show the idle status on tooltip as well, Fixes #3744
Ka-Hing Cheung <khc@hxbc.us>
parents:
21113
diff
changeset
|
1072 |
23797
35f7b7c62995
Remove calls to g_markup_escape_text. Not only does this help with old
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23796
diff
changeset
|
1073 tmp2 = g_markup_escape_text(name, -1); |
21139
0df8263c21b8
show the idle status on tooltip as well, Fixes #3744
Ka-Hing Cheung <khc@hxbc.us>
parents:
21113
diff
changeset
|
1074 if (purple_presence_is_idle(presence)) { |
23797
35f7b7c62995
Remove calls to g_markup_escape_text. Not only does this help with old
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23796
diff
changeset
|
1075 char *idle; |
35f7b7c62995
Remove calls to g_markup_escape_text. Not only does this help with old
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23796
diff
changeset
|
1076 char *tmp3; |
35f7b7c62995
Remove calls to g_markup_escape_text. Not only does this help with old
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23796
diff
changeset
|
1077 /* Never know what those translations might end up like... */ |
35f7b7c62995
Remove calls to g_markup_escape_text. Not only does this help with old
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23796
diff
changeset
|
1078 idle = g_markup_escape_text(_("Idle"), -1); |
35f7b7c62995
Remove calls to g_markup_escape_text. Not only does this help with old
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23796
diff
changeset
|
1079 tmp3 = g_strdup_printf("%s/%s", tmp2, idle); |
35f7b7c62995
Remove calls to g_markup_escape_text. Not only does this help with old
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23796
diff
changeset
|
1080 g_free(idle); |
35f7b7c62995
Remove calls to g_markup_escape_text. Not only does this help with old
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23796
diff
changeset
|
1081 g_free(tmp2); |
35f7b7c62995
Remove calls to g_markup_escape_text. Not only does this help with old
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23796
diff
changeset
|
1082 tmp2 = tmp3; |
21139
0df8263c21b8
show the idle status on tooltip as well, Fixes #3744
Ka-Hing Cheung <khc@hxbc.us>
parents:
21113
diff
changeset
|
1083 } |
19993
e73e510d56ec
A fix from Laszlo Pandy to make the MSN HTTP Method work again. Fixes #2638 and should make a number of people happy. This introduces a new string that isn't marked as translatable for 2.2.0 because it is so late in the game.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
19718
diff
changeset
|
1084 |
20502
b5a2938b4549
Fixes #2502, now we show the status name in the tooltip instead of "Status"
Ka-Hing Cheung <khc@hxbc.us>
parents:
20488
diff
changeset
|
1085 if (psm != NULL && *psm) { |
31810
0123c69ec0e5
Add a purple_notify_user_info_add_pair_plaintext function that accepts a
Mark Doliner <mark@kingant.net>
parents:
30425
diff
changeset
|
1086 purple_notify_user_info_add_pair_plaintext(user_info, tmp2, psm); |
20502
b5a2938b4549
Fixes #2502, now we show the status name in the tooltip instead of "Status"
Ka-Hing Cheung <khc@hxbc.us>
parents:
20488
diff
changeset
|
1087 } else { |
b5a2938b4549
Fixes #2502, now we show the status name in the tooltip instead of "Status"
Ka-Hing Cheung <khc@hxbc.us>
parents:
20488
diff
changeset
|
1088 purple_notify_user_info_add_pair(user_info, _("Status"), tmp2); |
b5a2938b4549
Fixes #2502, now we show the status name in the tooltip instead of "Status"
Ka-Hing Cheung <khc@hxbc.us>
parents:
20488
diff
changeset
|
1089 } |
b5a2938b4549
Fixes #2502, now we show the status name in the tooltip instead of "Status"
Ka-Hing Cheung <khc@hxbc.us>
parents:
20488
diff
changeset
|
1090 |
b5a2938b4549
Fixes #2502, now we show the status name in the tooltip instead of "Status"
Ka-Hing Cheung <khc@hxbc.us>
parents:
20488
diff
changeset
|
1091 g_free(tmp2); |
b5a2938b4549
Fixes #2502, now we show the status name in the tooltip instead of "Status"
Ka-Hing Cheung <khc@hxbc.us>
parents:
20488
diff
changeset
|
1092 } else { |
20567
b4a141f9294a
don't show empty "Status: " anymore, which fixes a glib runtime warning
Ka-Hing Cheung <khc@hxbc.us>
parents:
20554
diff
changeset
|
1093 if (psm != NULL && *psm) { |
21139
0df8263c21b8
show the idle status on tooltip as well, Fixes #3744
Ka-Hing Cheung <khc@hxbc.us>
parents:
21113
diff
changeset
|
1094 if (purple_presence_is_idle(presence)) { |
31810
0123c69ec0e5
Add a purple_notify_user_info_add_pair_plaintext function that accepts a
Mark Doliner <mark@kingant.net>
parents:
30425
diff
changeset
|
1095 purple_notify_user_info_add_pair_plaintext(user_info, _("Idle"), psm); |
21139
0df8263c21b8
show the idle status on tooltip as well, Fixes #3744
Ka-Hing Cheung <khc@hxbc.us>
parents:
21113
diff
changeset
|
1096 } else { |
31810
0123c69ec0e5
Add a purple_notify_user_info_add_pair_plaintext function that accepts a
Mark Doliner <mark@kingant.net>
parents:
30425
diff
changeset
|
1097 purple_notify_user_info_add_pair_plaintext(user_info, _("Status"), psm); |
21139
0df8263c21b8
show the idle status on tooltip as well, Fixes #3744
Ka-Hing Cheung <khc@hxbc.us>
parents:
21113
diff
changeset
|
1098 } |
0df8263c21b8
show the idle status on tooltip as well, Fixes #3744
Ka-Hing Cheung <khc@hxbc.us>
parents:
21113
diff
changeset
|
1099 } else { |
0df8263c21b8
show the idle status on tooltip as well, Fixes #3744
Ka-Hing Cheung <khc@hxbc.us>
parents:
21113
diff
changeset
|
1100 if (purple_presence_is_idle(presence)) { |
0df8263c21b8
show the idle status on tooltip as well, Fixes #3744
Ka-Hing Cheung <khc@hxbc.us>
parents:
21113
diff
changeset
|
1101 purple_notify_user_info_add_pair(user_info, _("Status"), |
0df8263c21b8
show the idle status on tooltip as well, Fixes #3744
Ka-Hing Cheung <khc@hxbc.us>
parents:
21113
diff
changeset
|
1102 _("Idle")); |
0df8263c21b8
show the idle status on tooltip as well, Fixes #3744
Ka-Hing Cheung <khc@hxbc.us>
parents:
21113
diff
changeset
|
1103 } else { |
0df8263c21b8
show the idle status on tooltip as well, Fixes #3744
Ka-Hing Cheung <khc@hxbc.us>
parents:
21113
diff
changeset
|
1104 purple_notify_user_info_add_pair(user_info, _("Status"), |
0df8263c21b8
show the idle status on tooltip as well, Fixes #3744
Ka-Hing Cheung <khc@hxbc.us>
parents:
21113
diff
changeset
|
1105 purple_status_get_name(status)); |
0df8263c21b8
show the idle status on tooltip as well, Fixes #3744
Ka-Hing Cheung <khc@hxbc.us>
parents:
21113
diff
changeset
|
1106 } |
20567
b4a141f9294a
don't show empty "Status: " anymore, which fixes a glib runtime warning
Ka-Hing Cheung <khc@hxbc.us>
parents:
20554
diff
changeset
|
1107 } |
19797
60bc06498746
Committing khc's msnp14 changes from Trac Ticket #148. --rlaager
Ka-Hing Cheung <khc@hxbc.us>
parents:
15823
diff
changeset
|
1108 } |
20463
0b04a7d90470
removed "PSM:" label and move the message to "Status:" to be consistent with
Ka-Hing Cheung <khc@hxbc.us>
parents:
20462
diff
changeset
|
1109 |
19797
60bc06498746
Committing khc's msnp14 changes from Trac Ticket #148. --rlaager
Ka-Hing Cheung <khc@hxbc.us>
parents:
15823
diff
changeset
|
1110 if (currentmedia) { |
24455
e344426d7c28
Add the Games and Office media to MSN as attributes tacked on to the tune
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24451
diff
changeset
|
1111 purple_notify_user_info_add_pair(user_info, mediatype, currentmedia); |
20570
5913725cbcd6
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
20567
diff
changeset
|
1112 g_free(currentmedia); |
20394
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1113 } |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1114 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1115 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1116 /* XXX: This is being shown in non-full tooltips because the |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1117 * XXX: blocked icon overlay isn't always accurate for MSN. |
15823 | 1118 * XXX: This can die as soon as purple_privacy_check() knows that |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1119 * XXX: this prpl always honors both the allow and deny lists. */ |
21026
27c72bd82a81
We really don't need to display Blocked: status in the tooltip for every
Stu Tomlinson <stu@nosnilmot.com>
parents:
21000
diff
changeset
|
1120 /* While the above comment may be strictly correct (the privacy API needs |
27c72bd82a81
We really don't need to display Blocked: status in the tooltip for every
Stu Tomlinson <stu@nosnilmot.com>
parents:
21000
diff
changeset
|
1121 * rewriteing), purple_privacy_check() is going to be more accurate at |
27c72bd82a81
We really don't need to display Blocked: status in the tooltip for every
Stu Tomlinson <stu@nosnilmot.com>
parents:
21000
diff
changeset
|
1122 * indicating whether a particular buddy is going to be able to message |
27c72bd82a81
We really don't need to display Blocked: status in the tooltip for every
Stu Tomlinson <stu@nosnilmot.com>
parents:
21000
diff
changeset
|
1123 * you, which is the important information that this is trying to convey. |
27c72bd82a81
We really don't need to display Blocked: status in the tooltip for every
Stu Tomlinson <stu@nosnilmot.com>
parents:
21000
diff
changeset
|
1124 */ |
27c72bd82a81
We really don't need to display Blocked: status in the tooltip for every
Stu Tomlinson <stu@nosnilmot.com>
parents:
21000
diff
changeset
|
1125 if (full && user) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1126 { |
22259
6e5d37105189
Display buddies' phone numbers in the tooltip for MSN buddies if we have
Stu Tomlinson <stu@nosnilmot.com>
parents:
22138
diff
changeset
|
1127 const char *phone; |
6e5d37105189
Display buddies' phone numbers in the tooltip for MSN buddies if we have
Stu Tomlinson <stu@nosnilmot.com>
parents:
22138
diff
changeset
|
1128 |
23978
0a4aa7df352b
We can't have ./configure lying to you, can we?
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23887
diff
changeset
|
1129 purple_notify_user_info_add_pair(user_info, _("Has you"), |
0a4aa7df352b
We can't have ./configure lying to you, can we?
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23887
diff
changeset
|
1130 ((user->list_op & (1 << MSN_LIST_RL)) ? _("Yes") : _("No"))); |
0a4aa7df352b
We can't have ./configure lying to you, can we?
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23887
diff
changeset
|
1131 |
15823 | 1132 purple_notify_user_info_add_pair(user_info, _("Blocked"), |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1133 ((user->list_op & (1 << MSN_LIST_BL)) ? _("Yes") : _("No"))); |
22259
6e5d37105189
Display buddies' phone numbers in the tooltip for MSN buddies if we have
Stu Tomlinson <stu@nosnilmot.com>
parents:
22138
diff
changeset
|
1134 |
6e5d37105189
Display buddies' phone numbers in the tooltip for MSN buddies if we have
Stu Tomlinson <stu@nosnilmot.com>
parents:
22138
diff
changeset
|
1135 phone = msn_user_get_home_phone(user); |
6e5d37105189
Display buddies' phone numbers in the tooltip for MSN buddies if we have
Stu Tomlinson <stu@nosnilmot.com>
parents:
22138
diff
changeset
|
1136 if (phone != NULL) |
6e5d37105189
Display buddies' phone numbers in the tooltip for MSN buddies if we have
Stu Tomlinson <stu@nosnilmot.com>
parents:
22138
diff
changeset
|
1137 purple_notify_user_info_add_pair(user_info, _("Home Phone Number"), phone); |
6e5d37105189
Display buddies' phone numbers in the tooltip for MSN buddies if we have
Stu Tomlinson <stu@nosnilmot.com>
parents:
22138
diff
changeset
|
1138 |
6e5d37105189
Display buddies' phone numbers in the tooltip for MSN buddies if we have
Stu Tomlinson <stu@nosnilmot.com>
parents:
22138
diff
changeset
|
1139 phone = msn_user_get_work_phone(user); |
6e5d37105189
Display buddies' phone numbers in the tooltip for MSN buddies if we have
Stu Tomlinson <stu@nosnilmot.com>
parents:
22138
diff
changeset
|
1140 if (phone != NULL) |
6e5d37105189
Display buddies' phone numbers in the tooltip for MSN buddies if we have
Stu Tomlinson <stu@nosnilmot.com>
parents:
22138
diff
changeset
|
1141 purple_notify_user_info_add_pair(user_info, _("Work Phone Number"), phone); |
6e5d37105189
Display buddies' phone numbers in the tooltip for MSN buddies if we have
Stu Tomlinson <stu@nosnilmot.com>
parents:
22138
diff
changeset
|
1142 |
6e5d37105189
Display buddies' phone numbers in the tooltip for MSN buddies if we have
Stu Tomlinson <stu@nosnilmot.com>
parents:
22138
diff
changeset
|
1143 phone = msn_user_get_mobile_phone(user); |
6e5d37105189
Display buddies' phone numbers in the tooltip for MSN buddies if we have
Stu Tomlinson <stu@nosnilmot.com>
parents:
22138
diff
changeset
|
1144 if (phone != NULL) |
6e5d37105189
Display buddies' phone numbers in the tooltip for MSN buddies if we have
Stu Tomlinson <stu@nosnilmot.com>
parents:
22138
diff
changeset
|
1145 purple_notify_user_info_add_pair(user_info, _("Mobile Phone Number"), phone); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1146 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1147 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1148 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1149 static GList * |
15823 | 1150 msn_status_types(PurpleAccount *account) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1151 { |
15823 | 1152 PurpleStatusType *status; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1153 GList *types = NULL; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1154 |
20394
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1155 status = purple_status_type_new_with_attrs( |
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1156 PURPLE_STATUS_AVAILABLE, NULL, NULL, TRUE, TRUE, FALSE, |
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1157 "message", _("Message"), purple_value_new(PURPLE_TYPE_STRING), |
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1158 NULL); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1159 types = g_list_append(types, status); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1160 |
20394
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1161 status = purple_status_type_new_with_attrs( |
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1162 PURPLE_STATUS_AWAY, NULL, NULL, TRUE, TRUE, FALSE, |
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1163 "message", _("Message"), purple_value_new(PURPLE_TYPE_STRING), |
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1164 NULL); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1165 types = g_list_append(types, status); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1166 |
20394
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1167 status = purple_status_type_new_with_attrs( |
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1168 PURPLE_STATUS_AWAY, "brb", _("Be Right Back"), TRUE, TRUE, FALSE, |
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1169 "message", _("Message"), purple_value_new(PURPLE_TYPE_STRING), |
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1170 NULL); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1171 types = g_list_append(types, status); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1172 |
20394
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1173 status = purple_status_type_new_with_attrs( |
20437
8e722e947e00
Patch from Pse to use the same status primitives as im.pidgin.pidgin for
Stu Tomlinson <stu@nosnilmot.com>
parents:
20425
diff
changeset
|
1174 PURPLE_STATUS_UNAVAILABLE, "busy", _("Busy"), TRUE, TRUE, FALSE, |
20394
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1175 "message", _("Message"), purple_value_new(PURPLE_TYPE_STRING), |
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1176 NULL); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1177 types = g_list_append(types, status); |
20394
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1178 status = purple_status_type_new_with_attrs( |
20437
8e722e947e00
Patch from Pse to use the same status primitives as im.pidgin.pidgin for
Stu Tomlinson <stu@nosnilmot.com>
parents:
20425
diff
changeset
|
1179 PURPLE_STATUS_UNAVAILABLE, "phone", _("On the Phone"), TRUE, TRUE, FALSE, |
20394
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1180 "message", _("Message"), purple_value_new(PURPLE_TYPE_STRING), |
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1181 NULL); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1182 types = g_list_append(types, status); |
20394
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1183 status = purple_status_type_new_with_attrs( |
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1184 PURPLE_STATUS_AWAY, "lunch", _("Out to Lunch"), TRUE, TRUE, FALSE, |
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1185 "message", _("Message"), purple_value_new(PURPLE_TYPE_STRING), |
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1186 NULL); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1187 types = g_list_append(types, status); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1188 |
15823 | 1189 status = purple_status_type_new_full(PURPLE_STATUS_INVISIBLE, |
25050
b5c82724598c
For some reason, all these statuses were set to saveable=FALSE. With the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24943
diff
changeset
|
1190 NULL, NULL, TRUE, TRUE, FALSE); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1191 types = g_list_append(types, status); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1192 |
15823 | 1193 status = purple_status_type_new_full(PURPLE_STATUS_OFFLINE, |
25050
b5c82724598c
For some reason, all these statuses were set to saveable=FALSE. With the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24943
diff
changeset
|
1194 NULL, NULL, TRUE, TRUE, FALSE); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1195 types = g_list_append(types, status); |
19993
e73e510d56ec
A fix from Laszlo Pandy to make the MSN HTTP Method work again. Fixes #2638 and should make a number of people happy. This introduces a new string that isn't marked as translatable for 2.2.0 because it is so late in the game.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
19718
diff
changeset
|
1196 |
15823 | 1197 status = purple_status_type_new_full(PURPLE_STATUS_MOBILE, |
15541
d74985add99f
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@gmail.com>
parents:
15463
diff
changeset
|
1198 "mobile", NULL, FALSE, FALSE, TRUE); |
d74985add99f
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@gmail.com>
parents:
15463
diff
changeset
|
1199 types = g_list_append(types, status); |
19993
e73e510d56ec
A fix from Laszlo Pandy to make the MSN HTTP Method work again. Fixes #2638 and should make a number of people happy. This introduces a new string that isn't marked as translatable for 2.2.0 because it is so late in the game.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
19718
diff
changeset
|
1200 |
20570
5913725cbcd6
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
20567
diff
changeset
|
1201 status = purple_status_type_new_with_attrs(PURPLE_STATUS_TUNE, |
24409
3a3d36791a47
I don't know why we'd want the TUNE status to be saveable.
Richard Laager <rlaager@wiktel.com>
parents:
24374
diff
changeset
|
1202 "tune", NULL, FALSE, TRUE, TRUE, |
30089
29df7408df03
Eliminate the name collisions on "Title". I have a few qualms:
Paul Aurich <paul@darkrain42.org>
parents:
29874
diff
changeset
|
1203 PURPLE_TUNE_ARTIST, _("Tune Artist"), purple_value_new(PURPLE_TYPE_STRING), |
29df7408df03
Eliminate the name collisions on "Title". I have a few qualms:
Paul Aurich <paul@darkrain42.org>
parents:
29874
diff
changeset
|
1204 PURPLE_TUNE_ALBUM, _("Tune Album"), purple_value_new(PURPLE_TYPE_STRING), |
29df7408df03
Eliminate the name collisions on "Title". I have a few qualms:
Paul Aurich <paul@darkrain42.org>
parents:
29874
diff
changeset
|
1205 PURPLE_TUNE_TITLE, _("Tune Title"), purple_value_new(PURPLE_TYPE_STRING), |
24455
e344426d7c28
Add the Games and Office media to MSN as attributes tacked on to the tune
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24451
diff
changeset
|
1206 "game", _("Game Title"), purple_value_new(PURPLE_TYPE_STRING), |
e344426d7c28
Add the Games and Office media to MSN as attributes tacked on to the tune
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24451
diff
changeset
|
1207 "office", _("Office Title"), purple_value_new(PURPLE_TYPE_STRING), |
20570
5913725cbcd6
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
20567
diff
changeset
|
1208 NULL); |
5913725cbcd6
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
20567
diff
changeset
|
1209 types = g_list_append(types, status); |
5913725cbcd6
Use an independant status type for 'current media' stuff, instead of using
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
20567
diff
changeset
|
1210 |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1211 return types; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1212 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1213 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1214 static GList * |
15823 | 1215 msn_actions(PurplePlugin *plugin, gpointer context) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1216 { |
31421
2a9327053398
Suppress the "View Locations..." protocol action on MSN if we are not
Stu Tomlinson <stu@nosnilmot.com>
parents:
31418
diff
changeset
|
1217 PurpleConnection *gc; |
2a9327053398
Suppress the "View Locations..." protocol action on MSN if we are not
Stu Tomlinson <stu@nosnilmot.com>
parents:
31418
diff
changeset
|
1218 MsnSession *session; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1219 GList *m = NULL; |
15823 | 1220 PurplePluginAction *act; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1221 |
31421
2a9327053398
Suppress the "View Locations..." protocol action on MSN if we are not
Stu Tomlinson <stu@nosnilmot.com>
parents:
31418
diff
changeset
|
1222 gc = (PurpleConnection *) context; |
2a9327053398
Suppress the "View Locations..." protocol action on MSN if we are not
Stu Tomlinson <stu@nosnilmot.com>
parents:
31418
diff
changeset
|
1223 session = gc->proto_data; |
2a9327053398
Suppress the "View Locations..." protocol action on MSN if we are not
Stu Tomlinson <stu@nosnilmot.com>
parents:
31418
diff
changeset
|
1224 |
15823 | 1225 act = purple_plugin_action_new(_("Set Friendly Name..."), |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1226 msn_show_set_friendly_name); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1227 m = g_list_append(m, act); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1228 m = g_list_append(m, NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1229 |
31453
388ca4797d7b
Replace the mpop account setting with a session boolean, because I
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31439
diff
changeset
|
1230 if (session->enable_mpop && session->protocol_ver >= 16) |
31421
2a9327053398
Suppress the "View Locations..." protocol action on MSN if we are not
Stu Tomlinson <stu@nosnilmot.com>
parents:
31418
diff
changeset
|
1231 { |
2a9327053398
Suppress the "View Locations..." protocol action on MSN if we are not
Stu Tomlinson <stu@nosnilmot.com>
parents:
31418
diff
changeset
|
1232 act = purple_plugin_action_new(_("View Locations..."), |
2a9327053398
Suppress the "View Locations..." protocol action on MSN if we are not
Stu Tomlinson <stu@nosnilmot.com>
parents:
31418
diff
changeset
|
1233 msn_show_locations); |
2a9327053398
Suppress the "View Locations..." protocol action on MSN if we are not
Stu Tomlinson <stu@nosnilmot.com>
parents:
31418
diff
changeset
|
1234 m = g_list_append(m, act); |
2a9327053398
Suppress the "View Locations..." protocol action on MSN if we are not
Stu Tomlinson <stu@nosnilmot.com>
parents:
31418
diff
changeset
|
1235 m = g_list_append(m, NULL); |
2a9327053398
Suppress the "View Locations..." protocol action on MSN if we are not
Stu Tomlinson <stu@nosnilmot.com>
parents:
31418
diff
changeset
|
1236 } |
31123
dd430f788bdc
Allow setting the name of the current location. The default is still Pidgin
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29049
diff
changeset
|
1237 |
15823 | 1238 act = purple_plugin_action_new(_("Set Home Phone Number..."), |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1239 msn_show_set_home_phone); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1240 m = g_list_append(m, act); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1241 |
15823 | 1242 act = purple_plugin_action_new(_("Set Work Phone Number..."), |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1243 msn_show_set_work_phone); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1244 m = g_list_append(m, act); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1245 |
15823 | 1246 act = purple_plugin_action_new(_("Set Mobile Phone Number..."), |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1247 msn_show_set_mobile_phone); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1248 m = g_list_append(m, act); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1249 m = g_list_append(m, NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1250 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1251 #if 0 |
15823 | 1252 act = purple_plugin_action_new(_("Enable/Disable Mobile Devices..."), |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1253 msn_show_set_mobile_support); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1254 m = g_list_append(m, act); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1255 #endif |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1256 |
31455
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
1257 act = purple_plugin_action_new(_("Allow/Disallow Multiple Logins..."), |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
1258 msn_show_set_mpop); |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
1259 m = g_list_append(m, act); |
b78991ee326c
Add account action to enable/disable connecting from multiple
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31453
diff
changeset
|
1260 |
15823 | 1261 act = purple_plugin_action_new(_("Allow/Disallow Mobile Pages..."), |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1262 msn_show_set_mobile_pages); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1263 m = g_list_append(m, act); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1264 |
23572
25aec47d9671
Disable the MSN blocked text dialog for now because it doesn't always
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23564
diff
changeset
|
1265 /* QuLogic: Disabled until confirmed correct. */ |
25aec47d9671
Disable the MSN blocked text dialog for now because it doesn't always
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23564
diff
changeset
|
1266 #if 0 |
23522
fd124c21ebb7
Properly parse (most of) the MSN GCF command. Provides a
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23517
diff
changeset
|
1267 m = g_list_append(m, NULL); |
fd124c21ebb7
Properly parse (most of) the MSN GCF command. Provides a
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23517
diff
changeset
|
1268 act = purple_plugin_action_new(_("View Blocked Text..."), |
fd124c21ebb7
Properly parse (most of) the MSN GCF command. Provides a
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23517
diff
changeset
|
1269 msn_show_blocked_text); |
fd124c21ebb7
Properly parse (most of) the MSN GCF command. Provides a
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23517
diff
changeset
|
1270 m = g_list_append(m, act); |
23572
25aec47d9671
Disable the MSN blocked text dialog for now because it doesn't always
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23564
diff
changeset
|
1271 #endif |
23522
fd124c21ebb7
Properly parse (most of) the MSN GCF command. Provides a
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23517
diff
changeset
|
1272 |
23599
ab70eae012f5
Fixup MSN mailbox handling based on a patch from Felipe, plus various
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23572
diff
changeset
|
1273 m = g_list_append(m, NULL); |
ab70eae012f5
Fixup MSN mailbox handling based on a patch from Felipe, plus various
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23572
diff
changeset
|
1274 act = purple_plugin_action_new(_("Open Hotmail Inbox"), |
ab70eae012f5
Fixup MSN mailbox handling based on a patch from Felipe, plus various
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23572
diff
changeset
|
1275 msn_show_hotmail_inbox); |
ab70eae012f5
Fixup MSN mailbox handling based on a patch from Felipe, plus various
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23572
diff
changeset
|
1276 m = g_list_append(m, act); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1277 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1278 return m; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1279 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1280 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1281 static GList * |
15823 | 1282 msn_buddy_menu(PurpleBuddy *buddy) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1283 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1284 MsnUser *user; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1285 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1286 GList *m = NULL; |
15823 | 1287 PurpleMenuAction *act; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1288 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1289 g_return_val_if_fail(buddy != NULL, NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1290 |
25290
8d562557ed6f
Some more PurpleBuddy::proto_data related changes.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
24294
diff
changeset
|
1291 user = purple_buddy_get_protocol_data(buddy); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1292 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1293 if (user != NULL) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1294 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1295 if (user->mobile) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1296 { |
15823 | 1297 act = purple_menu_action_new(_("Send to Mobile"), |
1298 PURPLE_CALLBACK(show_send_to_mobile_cb), | |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1299 NULL, NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1300 m = g_list_append(m, act); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1301 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1302 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1303 |
24120
16734635febf
Start hiding blist.h internals in prpls.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23978
diff
changeset
|
1304 if (g_ascii_strcasecmp(purple_buddy_get_name(buddy), |
16734635febf
Start hiding blist.h internals in prpls.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23978
diff
changeset
|
1305 purple_account_get_username(purple_buddy_get_account(buddy)))) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1306 { |
15823 | 1307 act = purple_menu_action_new(_("Initiate _Chat"), |
1308 PURPLE_CALLBACK(initiate_chat_cb), | |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1309 NULL, NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1310 m = g_list_append(m, act); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1311 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1312 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1313 return m; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1314 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1315 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1316 static GList * |
15823 | 1317 msn_blist_node_menu(PurpleBlistNode *node) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1318 { |
15823 | 1319 if(PURPLE_BLIST_NODE_IS_BUDDY(node)) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1320 { |
15823 | 1321 return msn_buddy_menu((PurpleBuddy *) node); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1322 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1323 else |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1324 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1325 return NULL; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1326 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1327 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1328 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1329 static void |
15823 | 1330 msn_login(PurpleAccount *account) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1331 { |
15823 | 1332 PurpleConnection *gc; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1333 MsnSession *session; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1334 const char *username; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1335 const char *host; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1336 gboolean http_method = FALSE; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1337 int port; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1338 |
15823 | 1339 gc = purple_account_get_connection(account); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1340 |
15823 | 1341 if (!purple_ssl_is_supported()) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1342 { |
23730
5aba1f0f36b0
Fix up some whitespace problems.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23673
diff
changeset
|
1343 purple_connection_error_reason(gc, |
21358 | 1344 PURPLE_CONNECTION_ERROR_NO_SSL_SUPPORT, |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1345 _("SSL support is needed for MSN. Please install a supported " |
21819
1162bf342def
Stu says this was unnecessary, that it is already there.
Luke Schierer <lschiere@pidgin.im>
parents:
21815
diff
changeset
|
1346 "SSL library.")); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1347 return; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1348 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1349 |
15823 | 1350 http_method = purple_account_get_bool(account, "http_method", FALSE); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1351 |
19993
e73e510d56ec
A fix from Laszlo Pandy to make the MSN HTTP Method work again. Fixes #2638 and should make a number of people happy. This introduces a new string that isn't marked as translatable for 2.2.0 because it is so late in the game.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
19718
diff
changeset
|
1352 if (http_method) |
20277
c37128d87d5a
Merged MSN_HTTPCONN_SERVER fix
Evan Schoenberg <evan.s@dreskin.net>
parents:
20044
diff
changeset
|
1353 host = purple_account_get_string(account, "http_method_server", MSN_HTTPCONN_SERVER); |
19993
e73e510d56ec
A fix from Laszlo Pandy to make the MSN HTTP Method work again. Fixes #2638 and should make a number of people happy. This introduces a new string that isn't marked as translatable for 2.2.0 because it is so late in the game.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
19718
diff
changeset
|
1354 else |
e73e510d56ec
A fix from Laszlo Pandy to make the MSN HTTP Method work again. Fixes #2638 and should make a number of people happy. This introduces a new string that isn't marked as translatable for 2.2.0 because it is so late in the game.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
19718
diff
changeset
|
1355 host = purple_account_get_string(account, "server", MSN_SERVER); |
15823 | 1356 port = purple_account_get_int(account, "port", MSN_PORT); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1357 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1358 session = msn_session_new(account); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1359 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1360 gc->proto_data = session; |
23133
9aa105267f46
Show the custom smileys only on accounts that support it. References
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23131
diff
changeset
|
1361 gc->flags |= PURPLE_CONNECTION_HTML | PURPLE_CONNECTION_FORMATTING_WBFO | PURPLE_CONNECTION_NO_BGCOLOR | |
9aa105267f46
Show the custom smileys only on accounts that support it. References
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23131
diff
changeset
|
1362 PURPLE_CONNECTION_NO_FONTSIZE | PURPLE_CONNECTION_NO_URLDESC | PURPLE_CONNECTION_ALLOW_CUSTOM_SMILEY; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1363 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1364 msn_session_set_login_step(session, MSN_LOGIN_STEP_START); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1365 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1366 /* Hmm, I don't like this. */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1367 /* XXX shx: Me neither */ |
15823 | 1368 username = msn_normalize(account, purple_account_get_username(account)); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1369 |
15823 | 1370 if (strcmp(username, purple_account_get_username(account))) |
1371 purple_account_set_username(account, username); | |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1372 |
29049
23f6f80f45ed
Due to a server change, the friendly name on MSN was being changed to the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29028
diff
changeset
|
1373 username = purple_account_get_string(account, "display-name", NULL); |
23f6f80f45ed
Due to a server change, the friendly name on MSN was being changed to the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29028
diff
changeset
|
1374 purple_connection_set_display_name(gc, username); |
23f6f80f45ed
Due to a server change, the friendly name on MSN was being changed to the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29028
diff
changeset
|
1375 |
31123
dd430f788bdc
Allow setting the name of the current location. The default is still Pidgin
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29049
diff
changeset
|
1376 if (purple_account_get_string(account, "endpoint-name", NULL) == NULL) { |
31164
8e765543dc8b
Don't hardcode "Pidgin" as the name of this endpoint. Instead, grab the
Mark Doliner <mark@kingant.net>
parents:
31160
diff
changeset
|
1377 GHashTable *ui_info = purple_core_get_ui_info(); |
8e765543dc8b
Don't hardcode "Pidgin" as the name of this endpoint. Instead, grab the
Mark Doliner <mark@kingant.net>
parents:
31160
diff
changeset
|
1378 const gchar *ui_name = ui_info ? g_hash_table_lookup(ui_info, "name") : NULL; |
8e765543dc8b
Don't hardcode "Pidgin" as the name of this endpoint. Instead, grab the
Mark Doliner <mark@kingant.net>
parents:
31160
diff
changeset
|
1379 purple_account_set_string(account, "endpoint-name", |
8e765543dc8b
Don't hardcode "Pidgin" as the name of this endpoint. Instead, grab the
Mark Doliner <mark@kingant.net>
parents:
31160
diff
changeset
|
1380 ui_name && *ui_name ? ui_name : PACKAGE_NAME); |
31123
dd430f788bdc
Allow setting the name of the current location. The default is still Pidgin
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29049
diff
changeset
|
1381 } |
dd430f788bdc
Allow setting the name of the current location. The default is still Pidgin
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29049
diff
changeset
|
1382 |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1383 if (!msn_session_connect(session, host, port, http_method)) |
23730
5aba1f0f36b0
Fix up some whitespace problems.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23673
diff
changeset
|
1384 purple_connection_error_reason(gc, |
21358 | 1385 PURPLE_CONNECTION_ERROR_NETWORK_ERROR, |
27463
f541583e31bd
More uniformity among disconnect error messages
Mark Doliner <mark@kingant.net>
parents:
27219
diff
changeset
|
1386 _("Unable to connect")); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1387 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1388 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1389 static void |
15823 | 1390 msn_close(PurpleConnection *gc) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1391 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1392 MsnSession *session; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1393 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1394 session = gc->proto_data; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1395 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1396 g_return_if_fail(session != NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1397 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1398 msn_session_destroy(session); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1399 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1400 gc->proto_data = NULL; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1401 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1402 |
17072
cb4380df3005
In MSN we fake sending messages to yourself. This had a small bug in that
Stu Tomlinson <stu@nosnilmot.com>
parents:
17065
diff
changeset
|
1403 static gboolean |
cb4380df3005
In MSN we fake sending messages to yourself. This had a small bug in that
Stu Tomlinson <stu@nosnilmot.com>
parents:
17065
diff
changeset
|
1404 msn_send_me_im(gpointer data) |
cb4380df3005
In MSN we fake sending messages to yourself. This had a small bug in that
Stu Tomlinson <stu@nosnilmot.com>
parents:
17065
diff
changeset
|
1405 { |
cb4380df3005
In MSN we fake sending messages to yourself. This had a small bug in that
Stu Tomlinson <stu@nosnilmot.com>
parents:
17065
diff
changeset
|
1406 MsnIMData *imdata = data; |
cb4380df3005
In MSN we fake sending messages to yourself. This had a small bug in that
Stu Tomlinson <stu@nosnilmot.com>
parents:
17065
diff
changeset
|
1407 serv_got_im(imdata->gc, imdata->who, imdata->msg, imdata->flags, imdata->when); |
cb4380df3005
In MSN we fake sending messages to yourself. This had a small bug in that
Stu Tomlinson <stu@nosnilmot.com>
parents:
17065
diff
changeset
|
1408 g_free(imdata->msg); |
cb4380df3005
In MSN we fake sending messages to yourself. This had a small bug in that
Stu Tomlinson <stu@nosnilmot.com>
parents:
17065
diff
changeset
|
1409 g_free(imdata); |
cb4380df3005
In MSN we fake sending messages to yourself. This had a small bug in that
Stu Tomlinson <stu@nosnilmot.com>
parents:
17065
diff
changeset
|
1410 return FALSE; |
cb4380df3005
In MSN we fake sending messages to yourself. This had a small bug in that
Stu Tomlinson <stu@nosnilmot.com>
parents:
17065
diff
changeset
|
1411 } |
cb4380df3005
In MSN we fake sending messages to yourself. This had a small bug in that
Stu Tomlinson <stu@nosnilmot.com>
parents:
17065
diff
changeset
|
1412 |
22887
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1413 static GString* |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1414 msn_msg_emoticon_add(GString *current, MsnEmoticon *emoticon) |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1415 { |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1416 MsnObject *obj; |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1417 char *strobj; |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1418 |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1419 if (emoticon == NULL) |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1420 return current; |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1421 |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1422 obj = emoticon->obj; |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1423 |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1424 if (!obj) |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1425 return current; |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1426 |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1427 strobj = msn_object_to_string(obj); |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1428 |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1429 if (current) |
28418
afe6ce7cc64f
Send proper emoticon messages in MSN chats. Apparently, this never worked
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28417
diff
changeset
|
1430 g_string_append_printf(current, "\t%s\t%s", emoticon->smile, strobj); |
22887
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1431 else { |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1432 current = g_string_new(""); |
28418
afe6ce7cc64f
Send proper emoticon messages in MSN chats. Apparently, this never worked
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28417
diff
changeset
|
1433 g_string_printf(current, "%s\t%s", emoticon->smile, strobj); |
22887
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1434 } |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1435 |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1436 g_free(strobj); |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1437 |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1438 return current; |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1439 } |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1440 |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1441 static void |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1442 msn_send_emoticons(MsnSwitchBoard *swboard, GString *body) |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1443 { |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1444 MsnMessage *msg; |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1445 |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1446 g_return_if_fail(body != NULL); |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1447 |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1448 msg = msn_message_new(MSN_MSG_SLP); |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1449 msn_message_set_content_type(msg, "text/x-mms-emoticon"); |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1450 msn_message_set_flag(msg, 'N'); |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1451 msn_message_set_bin_data(msg, body->str, body->len); |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1452 |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1453 msn_switchboard_send_msg(swboard, msg, TRUE); |
31393
b4285ea42b6e
msn_message_destroy() calls msn_message_unref() if refcount>0. This is
Mark Doliner <mark@kingant.net>
parents:
31392
diff
changeset
|
1454 msn_message_unref(msg); |
22887
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1455 } |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1456 |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1457 static void msn_emoticon_destroy(MsnEmoticon *emoticon) |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1458 { |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1459 if (emoticon->obj) |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1460 msn_object_destroy(emoticon->obj); |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1461 g_free(emoticon->smile); |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1462 g_free(emoticon); |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1463 } |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1464 |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1465 static GSList* msn_msg_grab_emoticons(const char *msg, const char *username) |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1466 { |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1467 GSList *list; |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1468 GList *smileys; |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1469 PurpleSmiley *smiley; |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1470 PurpleStoredImage *img; |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1471 char *ptr; |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1472 MsnEmoticon *emoticon; |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1473 int length; |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1474 |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1475 list = NULL; |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1476 smileys = purple_smileys_get_all(); |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1477 length = strlen(msg); |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1478 |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1479 for (; smileys; smileys = g_list_delete_link(smileys, smileys)) { |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1480 smiley = smileys->data; |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1481 |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1482 ptr = g_strstr_len(msg, length, purple_smiley_get_shortcut(smiley)); |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1483 |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1484 if (!ptr) |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1485 continue; |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1486 |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1487 img = purple_smiley_get_stored_image(smiley); |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1488 |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1489 emoticon = g_new0(MsnEmoticon, 1); |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1490 emoticon->smile = g_strdup(purple_smiley_get_shortcut(smiley)); |
28419
36c6601d650a
It seems I need to write the smiley to the conversation for it to show up
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28418
diff
changeset
|
1491 emoticon->ps = smiley; |
22887
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1492 emoticon->obj = msn_object_new_from_image(img, |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1493 purple_imgstore_get_filename(img), |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1494 username, MSN_OBJECT_EMOTICON); |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1495 |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1496 purple_imgstore_unref(img); |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1497 list = g_slist_prepend(list, emoticon); |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1498 } |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1499 |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1500 return list; |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1501 } |
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1502 |
24142
fb722b8b4c74
attempts to resend message on switchboard error once, tested by maually
Ka-Hing Cheung <khc@hxbc.us>
parents:
24132
diff
changeset
|
1503 void |
fb722b8b4c74
attempts to resend message on switchboard error once, tested by maually
Ka-Hing Cheung <khc@hxbc.us>
parents:
24132
diff
changeset
|
1504 msn_send_im_message(MsnSession *session, MsnMessage *msg) |
fb722b8b4c74
attempts to resend message on switchboard error once, tested by maually
Ka-Hing Cheung <khc@hxbc.us>
parents:
24132
diff
changeset
|
1505 { |
fb722b8b4c74
attempts to resend message on switchboard error once, tested by maually
Ka-Hing Cheung <khc@hxbc.us>
parents:
24132
diff
changeset
|
1506 MsnEmoticon *smile; |
fb722b8b4c74
attempts to resend message on switchboard error once, tested by maually
Ka-Hing Cheung <khc@hxbc.us>
parents:
24132
diff
changeset
|
1507 GSList *smileys; |
fb722b8b4c74
attempts to resend message on switchboard error once, tested by maually
Ka-Hing Cheung <khc@hxbc.us>
parents:
24132
diff
changeset
|
1508 GString *emoticons = NULL; |
fb722b8b4c74
attempts to resend message on switchboard error once, tested by maually
Ka-Hing Cheung <khc@hxbc.us>
parents:
24132
diff
changeset
|
1509 const char *username = purple_account_get_username(session->account); |
fb722b8b4c74
attempts to resend message on switchboard error once, tested by maually
Ka-Hing Cheung <khc@hxbc.us>
parents:
24132
diff
changeset
|
1510 MsnSwitchBoard *swboard = msn_session_get_swboard(session, msg->remote_user, MSN_SB_FLAG_IM); |
fb722b8b4c74
attempts to resend message on switchboard error once, tested by maually
Ka-Hing Cheung <khc@hxbc.us>
parents:
24132
diff
changeset
|
1511 |
fb722b8b4c74
attempts to resend message on switchboard error once, tested by maually
Ka-Hing Cheung <khc@hxbc.us>
parents:
24132
diff
changeset
|
1512 smileys = msn_msg_grab_emoticons(msg->body, username); |
fb722b8b4c74
attempts to resend message on switchboard error once, tested by maually
Ka-Hing Cheung <khc@hxbc.us>
parents:
24132
diff
changeset
|
1513 while (smileys) { |
28419
36c6601d650a
It seems I need to write the smiley to the conversation for it to show up
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28418
diff
changeset
|
1514 smile = (MsnEmoticon *)smileys->data; |
24142
fb722b8b4c74
attempts to resend message on switchboard error once, tested by maually
Ka-Hing Cheung <khc@hxbc.us>
parents:
24132
diff
changeset
|
1515 emoticons = msn_msg_emoticon_add(emoticons, smile); |
fb722b8b4c74
attempts to resend message on switchboard error once, tested by maually
Ka-Hing Cheung <khc@hxbc.us>
parents:
24132
diff
changeset
|
1516 msn_emoticon_destroy(smile); |
fb722b8b4c74
attempts to resend message on switchboard error once, tested by maually
Ka-Hing Cheung <khc@hxbc.us>
parents:
24132
diff
changeset
|
1517 smileys = g_slist_delete_link(smileys, smileys); |
fb722b8b4c74
attempts to resend message on switchboard error once, tested by maually
Ka-Hing Cheung <khc@hxbc.us>
parents:
24132
diff
changeset
|
1518 } |
fb722b8b4c74
attempts to resend message on switchboard error once, tested by maually
Ka-Hing Cheung <khc@hxbc.us>
parents:
24132
diff
changeset
|
1519 |
fb722b8b4c74
attempts to resend message on switchboard error once, tested by maually
Ka-Hing Cheung <khc@hxbc.us>
parents:
24132
diff
changeset
|
1520 if (emoticons) { |
fb722b8b4c74
attempts to resend message on switchboard error once, tested by maually
Ka-Hing Cheung <khc@hxbc.us>
parents:
24132
diff
changeset
|
1521 msn_send_emoticons(swboard, emoticons); |
fb722b8b4c74
attempts to resend message on switchboard error once, tested by maually
Ka-Hing Cheung <khc@hxbc.us>
parents:
24132
diff
changeset
|
1522 g_string_free(emoticons, TRUE); |
fb722b8b4c74
attempts to resend message on switchboard error once, tested by maually
Ka-Hing Cheung <khc@hxbc.us>
parents:
24132
diff
changeset
|
1523 } |
fb722b8b4c74
attempts to resend message on switchboard error once, tested by maually
Ka-Hing Cheung <khc@hxbc.us>
parents:
24132
diff
changeset
|
1524 |
fb722b8b4c74
attempts to resend message on switchboard error once, tested by maually
Ka-Hing Cheung <khc@hxbc.us>
parents:
24132
diff
changeset
|
1525 msn_switchboard_send_msg(swboard, msg, TRUE); |
fb722b8b4c74
attempts to resend message on switchboard error once, tested by maually
Ka-Hing Cheung <khc@hxbc.us>
parents:
24132
diff
changeset
|
1526 } |
fb722b8b4c74
attempts to resend message on switchboard error once, tested by maually
Ka-Hing Cheung <khc@hxbc.us>
parents:
24132
diff
changeset
|
1527 |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1528 static int |
15823 | 1529 msn_send_im(PurpleConnection *gc, const char *who, const char *message, |
1530 PurpleMessageFlags flags) | |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1531 { |
15823 | 1532 PurpleAccount *account; |
1533 PurpleBuddy *buddy = purple_find_buddy(gc->account, who); | |
23533
8aa7e01bc4d5
An MSN patch from Masca to check if there's a SB available before
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23529
diff
changeset
|
1534 MsnSession *session; |
8aa7e01bc4d5
An MSN patch from Masca to check if there's a SB available before
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23529
diff
changeset
|
1535 MsnSwitchBoard *swboard; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1536 MsnMessage *msg; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1537 char *msgformat; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1538 char *msgtext; |
25056
b0c75121cf66
After parsing the message text for HTML formatting, don't try to send it if
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
25050
diff
changeset
|
1539 size_t msglen; |
22887
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1540 const char *username; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1541 |
23730
5aba1f0f36b0
Fix up some whitespace problems.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23673
diff
changeset
|
1542 purple_debug_info("msn", "send IM {%s} to %s\n", message, who); |
15823 | 1543 account = purple_connection_get_account(gc); |
22887
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1544 username = purple_account_get_username(account); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1545 |
23533
8aa7e01bc4d5
An MSN patch from Masca to check if there's a SB available before
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23529
diff
changeset
|
1546 session = gc->proto_data; |
8aa7e01bc4d5
An MSN patch from Masca to check if there's a SB available before
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23529
diff
changeset
|
1547 swboard = msn_session_find_swboard(session, who); |
8aa7e01bc4d5
An MSN patch from Masca to check if there's a SB available before
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23529
diff
changeset
|
1548 |
24132
eeccedae4de5
Patch from Maiku to allow replying to a mobile contact that isn't on
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23978
diff
changeset
|
1549 if (!strncmp("tel:+", who, 5)) { |
eeccedae4de5
Patch from Maiku to allow replying to a mobile contact that isn't on
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23978
diff
changeset
|
1550 char *text = purple_markup_strip_html(message); |
eeccedae4de5
Patch from Maiku to allow replying to a mobile contact that isn't on
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23978
diff
changeset
|
1551 send_to_mobile(gc, who, text); |
eeccedae4de5
Patch from Maiku to allow replying to a mobile contact that isn't on
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23978
diff
changeset
|
1552 g_free(text); |
eeccedae4de5
Patch from Maiku to allow replying to a mobile contact that isn't on
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23978
diff
changeset
|
1553 return 1; |
eeccedae4de5
Patch from Maiku to allow replying to a mobile contact that isn't on
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23978
diff
changeset
|
1554 } |
eeccedae4de5
Patch from Maiku to allow replying to a mobile contact that isn't on
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23978
diff
changeset
|
1555 |
15541
d74985add99f
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@gmail.com>
parents:
15463
diff
changeset
|
1556 if (buddy) { |
15823 | 1557 PurplePresence *p = purple_buddy_get_presence(buddy); |
1558 if (purple_presence_is_status_primitive_active(p, PURPLE_STATUS_MOBILE)) { | |
1559 char *text = purple_markup_strip_html(message); | |
15541
d74985add99f
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@gmail.com>
parents:
15463
diff
changeset
|
1560 send_to_mobile(gc, who, text); |
d74985add99f
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@gmail.com>
parents:
15463
diff
changeset
|
1561 g_free(text); |
15591
1d0d25848c5d
Get rid of a minor compile warning
Mark Doliner <mark@kingant.net>
parents:
15541
diff
changeset
|
1562 return 1; |
15541
d74985add99f
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@gmail.com>
parents:
15463
diff
changeset
|
1563 } |
d74985add99f
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@gmail.com>
parents:
15463
diff
changeset
|
1564 } |
d74985add99f
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@gmail.com>
parents:
15463
diff
changeset
|
1565 |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1566 msn_import_html(message, &msgformat, &msgtext); |
25056
b0c75121cf66
After parsing the message text for HTML formatting, don't try to send it if
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
25050
diff
changeset
|
1567 msglen = strlen(msgtext); |
b0c75121cf66
After parsing the message text for HTML formatting, don't try to send it if
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
25050
diff
changeset
|
1568 if (msglen == 0) { |
b0c75121cf66
After parsing the message text for HTML formatting, don't try to send it if
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
25050
diff
changeset
|
1569 /* Stuff like <hr> will be ignored. Don't send an empty message |
b0c75121cf66
After parsing the message text for HTML formatting, don't try to send it if
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
25050
diff
changeset
|
1570 if that's all there is. */ |
b0c75121cf66
After parsing the message text for HTML formatting, don't try to send it if
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
25050
diff
changeset
|
1571 g_free(msgtext); |
b0c75121cf66
After parsing the message text for HTML formatting, don't try to send it if
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
25050
diff
changeset
|
1572 g_free(msgformat); |
b0c75121cf66
After parsing the message text for HTML formatting, don't try to send it if
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
25050
diff
changeset
|
1573 |
b0c75121cf66
After parsing the message text for HTML formatting, don't try to send it if
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
25050
diff
changeset
|
1574 return 0; |
b0c75121cf66
After parsing the message text for HTML formatting, don't try to send it if
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
25050
diff
changeset
|
1575 } |
b0c75121cf66
After parsing the message text for HTML formatting, don't try to send it if
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
25050
diff
changeset
|
1576 |
23730
5aba1f0f36b0
Fix up some whitespace problems.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23673
diff
changeset
|
1577 if (msn_user_is_online(account, who) || |
23533
8aa7e01bc4d5
An MSN patch from Masca to check if there's a SB available before
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23529
diff
changeset
|
1578 msn_user_is_yahoo(account, who) || |
23730
5aba1f0f36b0
Fix up some whitespace problems.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23673
diff
changeset
|
1579 swboard != NULL) { |
23533
8aa7e01bc4d5
An MSN patch from Masca to check if there's a SB available before
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23529
diff
changeset
|
1580 /*User online or have a swboard open because it's invisible |
8aa7e01bc4d5
An MSN patch from Masca to check if there's a SB available before
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23529
diff
changeset
|
1581 * and sent us a message,then send Online Instant Message*/ |
31534
a8cc50c2279f
Remove trailing whitespace
Richard Laager <rlaager@wiktel.com>
parents:
31455
diff
changeset
|
1582 |
25056
b0c75121cf66
After parsing the message text for HTML formatting, don't try to send it if
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
25050
diff
changeset
|
1583 if (msglen + strlen(msgformat) + strlen(VERSION) > 1564) |
20394
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1584 { |
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1585 g_free(msgformat); |
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1586 g_free(msgtext); |
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1587 |
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1588 return -E2BIG; |
15541
d74985add99f
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@gmail.com>
parents:
15463
diff
changeset
|
1589 } |
d74985add99f
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@gmail.com>
parents:
15463
diff
changeset
|
1590 |
20394
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1591 msg = msn_message_new_plain(msgtext); |
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1592 msg->remote_user = g_strdup(who); |
31132
33b4ae796648
Rename "attribute" to "header" in a bunch of places. The SLP protocol
Mark Doliner <mark@kingant.net>
parents:
31130
diff
changeset
|
1593 msn_message_set_header(msg, "X-MMS-IM-Format", msgformat); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1594 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1595 g_free(msgformat); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1596 g_free(msgtext); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1597 |
23564
7bceac816e19
The great MSN debug message cleanup! Threw in a few whitespace fixes,
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23550
diff
changeset
|
1598 purple_debug_info("msn", "prepare to send online Message\n"); |
22887
b65997110933
The patch to msn to allow sending custom smileys. Doesn't send all the custom smileys correctly at the moment. References #1187.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
22259
diff
changeset
|
1599 if (g_ascii_strcasecmp(who, username)) |
20394
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1600 { |
24451
82452077f0db
Don't request an acknowledgement on an auto-response message and don't set a
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24409
diff
changeset
|
1601 if (flags & PURPLE_MESSAGE_AUTO_RESP) { |
82452077f0db
Don't request an acknowledgement on an auto-response message and don't set a
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24409
diff
changeset
|
1602 msn_message_set_flag(msg, 'U'); |
82452077f0db
Don't request an acknowledgement on an auto-response message and don't set a
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24409
diff
changeset
|
1603 } |
23730
5aba1f0f36b0
Fix up some whitespace problems.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23673
diff
changeset
|
1604 if (msn_user_is_yahoo(account, who)) { |
20394
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1605 /*we send the online and offline Message to Yahoo User via UBM*/ |
23564
7bceac816e19
The great MSN debug message cleanup! Threw in a few whitespace fixes,
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23550
diff
changeset
|
1606 purple_debug_info("msn", "send to Yahoo User\n"); |
23730
5aba1f0f36b0
Fix up some whitespace problems.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23673
diff
changeset
|
1607 uum_send_msg(session, msg); |
5aba1f0f36b0
Fix up some whitespace problems.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23673
diff
changeset
|
1608 } else { |
23564
7bceac816e19
The great MSN debug message cleanup! Threw in a few whitespace fixes,
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23550
diff
changeset
|
1609 purple_debug_info("msn", "send via switchboard\n"); |
24142
fb722b8b4c74
attempts to resend message on switchboard error once, tested by maually
Ka-Hing Cheung <khc@hxbc.us>
parents:
24132
diff
changeset
|
1610 msn_send_im_message(session, msg); |
20394
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1611 } |
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1612 } |
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1613 else |
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1614 { |
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1615 char *body_str, *body_enc, *pre, *post; |
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1616 const char *format; |
20413 | 1617 MsnIMData *imdata = g_new0(MsnIMData, 1); |
20394
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1618 /* |
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1619 * In MSN, you can't send messages to yourself, so |
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1620 * we'll fake like we received it ;) |
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1621 */ |
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1622 body_str = msn_message_to_string(msg); |
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1623 body_enc = g_markup_escape_text(body_str, -1); |
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1624 g_free(body_str); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1625 |
31132
33b4ae796648
Rename "attribute" to "header" in a bunch of places. The SLP protocol
Mark Doliner <mark@kingant.net>
parents:
31130
diff
changeset
|
1626 format = msn_message_get_header_value(msg, "X-MMS-IM-Format"); |
20394
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1627 msn_parse_format(format, &pre, &post); |
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1628 body_str = g_strdup_printf("%s%s%s", pre ? pre : "", |
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1629 body_enc ? body_enc : "", post ? post : ""); |
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1630 g_free(body_enc); |
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1631 g_free(pre); |
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1632 g_free(post); |
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1633 |
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1634 serv_got_typing_stopped(gc, who); |
20413 | 1635 imdata->gc = gc; |
1636 imdata->who = who; | |
1637 imdata->msg = body_str; | |
27095
1b47eb4abf96
Turn off the send-flag for messages we send to ourselves in MSN.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
26434
diff
changeset
|
1638 imdata->flags = flags & ~PURPLE_MESSAGE_SEND; |
20413 | 1639 imdata->when = time(NULL); |
20856
306f3c0bccd4
Prevent null pointer deref to fix CID 349. I don't think this is possible, but I suppose it may happen with a different UI.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
20775
diff
changeset
|
1640 purple_timeout_add(0, msn_send_me_im, imdata); |
20394
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1641 } |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1642 |
31393
b4285ea42b6e
msn_message_destroy() calls msn_message_unref() if refcount>0. This is
Mark Doliner <mark@kingant.net>
parents:
31392
diff
changeset
|
1643 msn_message_unref(msg); |
23495
b82a17934604
fixed a memleak or 3, or maybe 4, or 5. Some of these applies to the p14
Ka-Hing Cheung <khc@hxbc.us>
parents:
21560
diff
changeset
|
1644 } else { |
20394
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1645 /*send Offline Instant Message,only to MSN Passport User*/ |
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1646 char *friendname; |
20425
5048651671e1
Revert a bunch of whitespace changes so reviewing a diff against
Stu Tomlinson <stu@nosnilmot.com>
parents:
20422
diff
changeset
|
1647 |
23564
7bceac816e19
The great MSN debug message cleanup! Threw in a few whitespace fixes,
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23550
diff
changeset
|
1648 purple_debug_info("msn", "prepare to send offline Message\n"); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1649 |
20394
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
1650 friendname = msn_encode_mime(account->username); |
20534
7e69275a4eef
oim migrated to new soap code, quadruply duplicated message!
Ka-Hing Cheung <khc@hxbc.us>
parents:
20524
diff
changeset
|
1651 msn_oim_prep_send_msg_info(session->oim, |
7e69275a4eef
oim migrated to new soap code, quadruply duplicated message!
Ka-Hing Cheung <khc@hxbc.us>
parents:
20524
diff
changeset
|
1652 purple_account_get_username(account), |
23496
aa25bb450139
oops, sending the format data probably isn't very useful. Unless you try
Ka-Hing Cheung <khc@hxbc.us>
parents:
23495
diff
changeset
|
1653 friendname, who, msgtext); |
20534
7e69275a4eef
oim migrated to new soap code, quadruply duplicated message!
Ka-Hing Cheung <khc@hxbc.us>
parents:
20524
diff
changeset
|
1654 msn_oim_send_msg(session->oim); |
23495
b82a17934604
fixed a memleak or 3, or maybe 4, or 5. Some of these applies to the p14
Ka-Hing Cheung <khc@hxbc.us>
parents:
21560
diff
changeset
|
1655 |
b82a17934604
fixed a memleak or 3, or maybe 4, or 5. Some of these applies to the p14
Ka-Hing Cheung <khc@hxbc.us>
parents:
21560
diff
changeset
|
1656 g_free(msgformat); |
b82a17934604
fixed a memleak or 3, or maybe 4, or 5. Some of these applies to the p14
Ka-Hing Cheung <khc@hxbc.us>
parents:
21560
diff
changeset
|
1657 g_free(msgtext); |
20534
7e69275a4eef
oim migrated to new soap code, quadruply duplicated message!
Ka-Hing Cheung <khc@hxbc.us>
parents:
20524
diff
changeset
|
1658 g_free(friendname); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1659 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1660 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1661 return 1; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1662 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1663 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1664 static unsigned int |
15823 | 1665 msn_send_typing(PurpleConnection *gc, const char *who, PurpleTypingState state) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1666 { |
15823 | 1667 PurpleAccount *account; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1668 MsnSession *session; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1669 MsnSwitchBoard *swboard; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1670 MsnMessage *msg; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1671 |
15823 | 1672 account = purple_connection_get_account(gc); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1673 session = gc->proto_data; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1674 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1675 /* |
15823 | 1676 * TODO: I feel like this should be "if (state != PURPLE_TYPING)" |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1677 * but this is how it was before, and I don't want to break |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1678 * anything. --KingAnt |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1679 */ |
15823 | 1680 if (state == PURPLE_NOT_TYPING) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1681 return 0; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1682 |
15823 | 1683 if (!g_ascii_strcasecmp(who, purple_account_get_username(account))) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1684 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1685 /* We'll just fake it, since we're sending to ourself. */ |
15823 | 1686 serv_got_typing(gc, who, MSN_TYPING_RECV_TIMEOUT, PURPLE_TYPING); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1687 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1688 return MSN_TYPING_SEND_TIMEOUT; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1689 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1690 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1691 swboard = msn_session_find_swboard(session, who); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1692 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1693 if (swboard == NULL || !msn_switchboard_can_send(swboard)) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1694 return 0; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1695 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1696 swboard->flag |= MSN_SB_FLAG_IM; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1697 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1698 msg = msn_message_new(MSN_MSG_TYPING); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1699 msn_message_set_content_type(msg, "text/x-msmsgscontrol"); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1700 msn_message_set_flag(msg, 'U'); |
31132
33b4ae796648
Rename "attribute" to "header" in a bunch of places. The SLP protocol
Mark Doliner <mark@kingant.net>
parents:
31130
diff
changeset
|
1701 msn_message_set_header(msg, "TypingUser", |
15823 | 1702 purple_account_get_username(account)); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1703 msn_message_set_bin_data(msg, "\r\n", 2); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1704 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1705 msn_switchboard_send_msg(swboard, msg, FALSE); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1706 |
31393
b4285ea42b6e
msn_message_destroy() calls msn_message_unref() if refcount>0. This is
Mark Doliner <mark@kingant.net>
parents:
31392
diff
changeset
|
1707 msn_message_unref(msg); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1708 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1709 return MSN_TYPING_SEND_TIMEOUT; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1710 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1711 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1712 static void |
15823 | 1713 msn_set_status(PurpleAccount *account, PurpleStatus *status) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1714 { |
15823 | 1715 PurpleConnection *gc; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1716 MsnSession *session; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1717 |
15823 | 1718 gc = purple_account_get_connection(account); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1719 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1720 if (gc != NULL) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1721 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1722 session = gc->proto_data; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1723 msn_change_status(session); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1724 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1725 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1726 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1727 static void |
15823 | 1728 msn_set_idle(PurpleConnection *gc, int idle) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1729 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1730 MsnSession *session; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1731 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1732 session = gc->proto_data; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1733 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1734 msn_change_status(session); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1735 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1736 |
25918
c384d62009c0
*** Plucked rev b932d4f94f9c771877b6a8a6a1d7dd3ea9c08005 (qulogic@pidgin.im):
Ka-Hing Cheung <khc@hxbc.us>
parents:
25172
diff
changeset
|
1737 /* |
c384d62009c0
*** Plucked rev b932d4f94f9c771877b6a8a6a1d7dd3ea9c08005 (qulogic@pidgin.im):
Ka-Hing Cheung <khc@hxbc.us>
parents:
25172
diff
changeset
|
1738 * Actually adds a buddy once we have the response from FQY |
c384d62009c0
*** Plucked rev b932d4f94f9c771877b6a8a6a1d7dd3ea9c08005 (qulogic@pidgin.im):
Ka-Hing Cheung <khc@hxbc.us>
parents:
25172
diff
changeset
|
1739 */ |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1740 static void |
25918
c384d62009c0
*** Plucked rev b932d4f94f9c771877b6a8a6a1d7dd3ea9c08005 (qulogic@pidgin.im):
Ka-Hing Cheung <khc@hxbc.us>
parents:
25172
diff
changeset
|
1741 add_pending_buddy(MsnSession *session, |
c384d62009c0
*** Plucked rev b932d4f94f9c771877b6a8a6a1d7dd3ea9c08005 (qulogic@pidgin.im):
Ka-Hing Cheung <khc@hxbc.us>
parents:
25172
diff
changeset
|
1742 const char *who, |
c384d62009c0
*** Plucked rev b932d4f94f9c771877b6a8a6a1d7dd3ea9c08005 (qulogic@pidgin.im):
Ka-Hing Cheung <khc@hxbc.us>
parents:
25172
diff
changeset
|
1743 MsnNetwork network, |
c384d62009c0
*** Plucked rev b932d4f94f9c771877b6a8a6a1d7dd3ea9c08005 (qulogic@pidgin.im):
Ka-Hing Cheung <khc@hxbc.us>
parents:
25172
diff
changeset
|
1744 MsnUser *user) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1745 { |
25918
c384d62009c0
*** Plucked rev b932d4f94f9c771877b6a8a6a1d7dd3ea9c08005 (qulogic@pidgin.im):
Ka-Hing Cheung <khc@hxbc.us>
parents:
25172
diff
changeset
|
1746 char *group; |
31712
8fc25b77295a
Hopefully fixes #13298, the bug about not being able to add MSN buddies.
Mark Doliner <mark@kingant.net>
parents:
31711
diff
changeset
|
1747 MsnUserList *userlist; |
8fc25b77295a
Hopefully fixes #13298, the bug about not being able to add MSN buddies.
Mark Doliner <mark@kingant.net>
parents:
31711
diff
changeset
|
1748 MsnUser *user2; |
25918
c384d62009c0
*** Plucked rev b932d4f94f9c771877b6a8a6a1d7dd3ea9c08005 (qulogic@pidgin.im):
Ka-Hing Cheung <khc@hxbc.us>
parents:
25172
diff
changeset
|
1749 |
c384d62009c0
*** Plucked rev b932d4f94f9c771877b6a8a6a1d7dd3ea9c08005 (qulogic@pidgin.im):
Ka-Hing Cheung <khc@hxbc.us>
parents:
25172
diff
changeset
|
1750 g_return_if_fail(user != NULL); |
c384d62009c0
*** Plucked rev b932d4f94f9c771877b6a8a6a1d7dd3ea9c08005 (qulogic@pidgin.im):
Ka-Hing Cheung <khc@hxbc.us>
parents:
25172
diff
changeset
|
1751 |
31712
8fc25b77295a
Hopefully fixes #13298, the bug about not being able to add MSN buddies.
Mark Doliner <mark@kingant.net>
parents:
31711
diff
changeset
|
1752 if (network == MSN_NETWORK_UNKNOWN) { |
8fc25b77295a
Hopefully fixes #13298, the bug about not being able to add MSN buddies.
Mark Doliner <mark@kingant.net>
parents:
31711
diff
changeset
|
1753 purple_debug_error("msn", "Network in FQY response was unknown. " |
8fc25b77295a
Hopefully fixes #13298, the bug about not being able to add MSN buddies.
Mark Doliner <mark@kingant.net>
parents:
31711
diff
changeset
|
1754 "Assuming %s is a passport user and adding anyway.\n", who); |
8fc25b77295a
Hopefully fixes #13298, the bug about not being able to add MSN buddies.
Mark Doliner <mark@kingant.net>
parents:
31711
diff
changeset
|
1755 network = MSN_NETWORK_PASSPORT; |
8fc25b77295a
Hopefully fixes #13298, the bug about not being able to add MSN buddies.
Mark Doliner <mark@kingant.net>
parents:
31711
diff
changeset
|
1756 } |
8fc25b77295a
Hopefully fixes #13298, the bug about not being able to add MSN buddies.
Mark Doliner <mark@kingant.net>
parents:
31711
diff
changeset
|
1757 |
25918
c384d62009c0
*** Plucked rev b932d4f94f9c771877b6a8a6a1d7dd3ea9c08005 (qulogic@pidgin.im):
Ka-Hing Cheung <khc@hxbc.us>
parents:
25172
diff
changeset
|
1758 group = msn_user_remove_pending_group(user); |
c384d62009c0
*** Plucked rev b932d4f94f9c771877b6a8a6a1d7dd3ea9c08005 (qulogic@pidgin.im):
Ka-Hing Cheung <khc@hxbc.us>
parents:
25172
diff
changeset
|
1759 |
31712
8fc25b77295a
Hopefully fixes #13298, the bug about not being able to add MSN buddies.
Mark Doliner <mark@kingant.net>
parents:
31711
diff
changeset
|
1760 userlist = session->userlist; |
8fc25b77295a
Hopefully fixes #13298, the bug about not being able to add MSN buddies.
Mark Doliner <mark@kingant.net>
parents:
31711
diff
changeset
|
1761 user2 = msn_userlist_find_user(userlist, who); |
8fc25b77295a
Hopefully fixes #13298, the bug about not being able to add MSN buddies.
Mark Doliner <mark@kingant.net>
parents:
31711
diff
changeset
|
1762 if (user2 != NULL) { |
8fc25b77295a
Hopefully fixes #13298, the bug about not being able to add MSN buddies.
Mark Doliner <mark@kingant.net>
parents:
31711
diff
changeset
|
1763 /* User already in userlist, so just update it. */ |
8fc25b77295a
Hopefully fixes #13298, the bug about not being able to add MSN buddies.
Mark Doliner <mark@kingant.net>
parents:
31711
diff
changeset
|
1764 msn_user_unref(user); |
8fc25b77295a
Hopefully fixes #13298, the bug about not being able to add MSN buddies.
Mark Doliner <mark@kingant.net>
parents:
31711
diff
changeset
|
1765 user = user2; |
8fc25b77295a
Hopefully fixes #13298, the bug about not being able to add MSN buddies.
Mark Doliner <mark@kingant.net>
parents:
31711
diff
changeset
|
1766 } else { |
8fc25b77295a
Hopefully fixes #13298, the bug about not being able to add MSN buddies.
Mark Doliner <mark@kingant.net>
parents:
31711
diff
changeset
|
1767 msn_userlist_add_user(userlist, user); |
31179
417899347f8a
Remove msn_user_destroy in favor of msn_user_unref.
masca@cpw.pidgin.im
parents:
31173
diff
changeset
|
1768 msn_user_unref(user); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1769 } |
31712
8fc25b77295a
Hopefully fixes #13298, the bug about not being able to add MSN buddies.
Mark Doliner <mark@kingant.net>
parents:
31711
diff
changeset
|
1770 |
8fc25b77295a
Hopefully fixes #13298, the bug about not being able to add MSN buddies.
Mark Doliner <mark@kingant.net>
parents:
31711
diff
changeset
|
1771 msn_user_set_network(user, network); |
8fc25b77295a
Hopefully fixes #13298, the bug about not being able to add MSN buddies.
Mark Doliner <mark@kingant.net>
parents:
31711
diff
changeset
|
1772 msn_userlist_add_buddy(userlist, who, group); |
8fc25b77295a
Hopefully fixes #13298, the bug about not being able to add MSN buddies.
Mark Doliner <mark@kingant.net>
parents:
31711
diff
changeset
|
1773 |
25918
c384d62009c0
*** Plucked rev b932d4f94f9c771877b6a8a6a1d7dd3ea9c08005 (qulogic@pidgin.im):
Ka-Hing Cheung <khc@hxbc.us>
parents:
25172
diff
changeset
|
1774 g_free(group); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1775 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1776 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1777 static void |
27564
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1778 finish_auth_request(MsnAddReqData *data, char *msg) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1779 { |
27564
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1780 PurpleConnection *pc; |
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1781 PurpleBuddy *buddy; |
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1782 PurpleGroup *group; |
27477
d375ef85519f
Add some checks before attempting to add a buddy on MSN. Also, if the FQY
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27463
diff
changeset
|
1783 PurpleAccount *account; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1784 MsnSession *session; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1785 MsnUserList *userlist; |
27564
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1786 const char *who, *gname; |
24674
f3950234b164
If the MSN user is in the userlist already, then check whether we know the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24625
diff
changeset
|
1787 MsnUser *user; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1788 |
27564
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1789 pc = data->pc; |
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1790 buddy = data->buddy; |
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1791 group = data->group; |
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1792 g_free(data); |
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1793 |
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1794 account = purple_connection_get_account(pc); |
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1795 session = pc->proto_data; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1796 userlist = session->userlist; |
27564
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1797 |
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1798 who = msn_normalize(account, purple_buddy_get_name(buddy)); |
24120
16734635febf
Start hiding blist.h internals in prpls.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23978
diff
changeset
|
1799 gname = group ? purple_group_get_name(group) : NULL; |
16734635febf
Start hiding blist.h internals in prpls.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23978
diff
changeset
|
1800 purple_debug_info("msn", "Add user:%s to group:%s\n", who, gname ? gname : "(null)"); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1801 if (!session->logged_in) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1802 { |
15823 | 1803 purple_debug_error("msn", "msn_add_buddy called before connected\n"); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1804 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1805 return; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1806 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1807 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1808 /* XXX - Would group ever be NULL here? I don't think so... |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1809 * shx: Yes it should; MSN handles non-grouped buddies, and this is only |
31712
8fc25b77295a
Hopefully fixes #13298, the bug about not being able to add MSN buddies.
Mark Doliner <mark@kingant.net>
parents:
31711
diff
changeset
|
1810 * internal. |
8fc25b77295a
Hopefully fixes #13298, the bug about not being able to add MSN buddies.
Mark Doliner <mark@kingant.net>
parents:
31711
diff
changeset
|
1811 * KingAnt: But PurpleBuddys must always exist inside PurpleGroups, so |
8fc25b77295a
Hopefully fixes #13298, the bug about not being able to add MSN buddies.
Mark Doliner <mark@kingant.net>
parents:
31711
diff
changeset
|
1812 * won't group always be non-NULL here? |
8fc25b77295a
Hopefully fixes #13298, the bug about not being able to add MSN buddies.
Mark Doliner <mark@kingant.net>
parents:
31711
diff
changeset
|
1813 */ |
24674
f3950234b164
If the MSN user is in the userlist already, then check whether we know the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24625
diff
changeset
|
1814 user = msn_userlist_find_user(userlist, who); |
f3950234b164
If the MSN user is in the userlist already, then check whether we know the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24625
diff
changeset
|
1815 if ((user != NULL) && (user->networkid != MSN_NETWORK_UNKNOWN)) { |
f3950234b164
If the MSN user is in the userlist already, then check whether we know the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24625
diff
changeset
|
1816 /* We already know this buddy and their network. This function knows |
f3950234b164
If the MSN user is in the userlist already, then check whether we know the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24625
diff
changeset
|
1817 what to do with users already in the list and stuff... */ |
27564
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1818 msn_user_set_invite_message(user, msg); |
25368
1260a3fb60f4
propagate from branch 'im.pidgin.pidgin' (head b8d6086aef6b2e65d86e8ce60220ab7f460d5079)
Richard Laager <rlaager@wiktel.com>
diff
changeset
|
1819 msn_userlist_add_buddy(userlist, who, gname); |
24463
4fd22591e3f0
Send FQY as the first thing when adding a buddy so that we know what network
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24456
diff
changeset
|
1820 } else { |
25172
fd5eedf131b4
Generalize the FQY command so it can be used by different callbacks based
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
25056
diff
changeset
|
1821 char **tokens; |
fd5eedf131b4
Generalize the FQY command so it can be used by different callbacks based
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
25056
diff
changeset
|
1822 char *fqy; |
24463
4fd22591e3f0
Send FQY as the first thing when adding a buddy so that we know what network
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24456
diff
changeset
|
1823 /* We need to check the network for this buddy first */ |
25918
c384d62009c0
*** Plucked rev b932d4f94f9c771877b6a8a6a1d7dd3ea9c08005 (qulogic@pidgin.im):
Ka-Hing Cheung <khc@hxbc.us>
parents:
25172
diff
changeset
|
1824 user = msn_user_new(userlist, who, NULL); |
27564
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1825 msn_user_set_invite_message(user, msg); |
27145
4c651771840d
Add a data parameter for FQY callbacks and remove the pending users list
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27144
diff
changeset
|
1826 msn_user_set_pending_group(user, gname); |
25918
c384d62009c0
*** Plucked rev b932d4f94f9c771877b6a8a6a1d7dd3ea9c08005 (qulogic@pidgin.im):
Ka-Hing Cheung <khc@hxbc.us>
parents:
25172
diff
changeset
|
1827 msn_user_set_network(user, MSN_NETWORK_UNKNOWN); |
31765
f3d11c84cc03
Add a little note about something that nobody cares about
Mark Doliner <mark@kingant.net>
parents:
31722
diff
changeset
|
1828 /* Should probably re-use the msn_add_contact_xml function here */ |
25172
fd5eedf131b4
Generalize the FQY command so it can be used by different callbacks based
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
25056
diff
changeset
|
1829 tokens = g_strsplit(who, "@", 2); |
fd5eedf131b4
Generalize the FQY command so it can be used by different callbacks based
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
25056
diff
changeset
|
1830 fqy = g_strdup_printf("<ml><d n=\"%s\"><c n=\"%s\"/></d></ml>", |
fd5eedf131b4
Generalize the FQY command so it can be used by different callbacks based
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
25056
diff
changeset
|
1831 tokens[1], |
fd5eedf131b4
Generalize the FQY command so it can be used by different callbacks based
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
25056
diff
changeset
|
1832 tokens[0]); |
31712
8fc25b77295a
Hopefully fixes #13298, the bug about not being able to add MSN buddies.
Mark Doliner <mark@kingant.net>
parents:
31711
diff
changeset
|
1833 /* TODO: I think user will leak if we disconnect before receiving |
8fc25b77295a
Hopefully fixes #13298, the bug about not being able to add MSN buddies.
Mark Doliner <mark@kingant.net>
parents:
31711
diff
changeset
|
1834 a response to this FQY request */ |
25172
fd5eedf131b4
Generalize the FQY command so it can be used by different callbacks based
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
25056
diff
changeset
|
1835 msn_notification_send_fqy(session, fqy, strlen(fqy), |
25918
c384d62009c0
*** Plucked rev b932d4f94f9c771877b6a8a6a1d7dd3ea9c08005 (qulogic@pidgin.im):
Ka-Hing Cheung <khc@hxbc.us>
parents:
25172
diff
changeset
|
1836 (MsnFqyCb)add_pending_buddy, user); |
25172
fd5eedf131b4
Generalize the FQY command so it can be used by different callbacks based
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
25056
diff
changeset
|
1837 g_free(fqy); |
fd5eedf131b4
Generalize the FQY command so it can be used by different callbacks based
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
25056
diff
changeset
|
1838 g_strfreev(tokens); |
24463
4fd22591e3f0
Send FQY as the first thing when adding a buddy so that we know what network
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
24456
diff
changeset
|
1839 } |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1840 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1841 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1842 static void |
27564
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1843 cancel_auth_request(MsnAddReqData *data, char *msg) |
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1844 { |
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1845 /* Remove from local list */ |
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1846 purple_blist_remove_buddy(data->buddy); |
31534
a8cc50c2279f
Remove trailing whitespace
Richard Laager <rlaager@wiktel.com>
parents:
31455
diff
changeset
|
1847 |
27564
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1848 g_free(data); |
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1849 } |
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1850 |
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1851 static void |
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1852 msn_add_buddy(PurpleConnection *gc, PurpleBuddy *buddy, PurpleGroup *group) |
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1853 { |
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1854 const char *bname; |
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1855 MsnAddReqData *data; |
29225
42b47f88f6e1
Don't bother asking for an authorization message for users that added us to
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29207
diff
changeset
|
1856 MsnSession *session; |
42b47f88f6e1
Don't bother asking for an authorization message for users that added us to
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29207
diff
changeset
|
1857 MsnUser *user; |
27564
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1858 |
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1859 bname = purple_buddy_get_name(buddy); |
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1860 |
28790
c3f79073c9be
The MSN servers are a bit more strict about what's allowed in emails than
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28645
diff
changeset
|
1861 if (!msn_email_is_valid(bname)) { |
27564
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1862 gchar *buf; |
28645
77a007e0de1f
Concordance between "Usernames" and "addresses"
Paul Aurich <paul@darkrain42.org>
parents:
28419
diff
changeset
|
1863 buf = g_strdup_printf(_("Unable to add the buddy %s because the username is invalid. Usernames must be valid email addresses."), bname); |
27564
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1864 if (!purple_conv_present_error(bname, purple_connection_get_account(gc), buf)) |
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1865 purple_notify_error(gc, NULL, _("Unable to Add"), buf); |
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1866 g_free(buf); |
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1867 |
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1868 /* Remove from local list */ |
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1869 purple_blist_remove_buddy(buddy); |
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1870 |
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1871 return; |
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1872 } |
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1873 |
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1874 data = g_new0(MsnAddReqData, 1); |
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1875 data->pc = gc; |
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1876 data->buddy = buddy; |
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1877 data->group = group; |
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1878 |
29225
42b47f88f6e1
Don't bother asking for an authorization message for users that added us to
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29207
diff
changeset
|
1879 session = purple_connection_get_protocol_data(gc); |
42b47f88f6e1
Don't bother asking for an authorization message for users that added us to
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29207
diff
changeset
|
1880 user = msn_userlist_find_user(session->userlist, bname); |
42b47f88f6e1
Don't bother asking for an authorization message for users that added us to
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29207
diff
changeset
|
1881 if (user && user->authorized) { |
42b47f88f6e1
Don't bother asking for an authorization message for users that added us to
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29207
diff
changeset
|
1882 finish_auth_request(data, NULL); |
42b47f88f6e1
Don't bother asking for an authorization message for users that added us to
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29207
diff
changeset
|
1883 } else { |
42b47f88f6e1
Don't bother asking for an authorization message for users that added us to
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29207
diff
changeset
|
1884 purple_request_input(gc, NULL, _("Authorization Request Message:"), |
42b47f88f6e1
Don't bother asking for an authorization message for users that added us to
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29207
diff
changeset
|
1885 NULL, _("Please authorize me!"), TRUE, FALSE, NULL, |
42b47f88f6e1
Don't bother asking for an authorization message for users that added us to
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29207
diff
changeset
|
1886 _("_OK"), G_CALLBACK(finish_auth_request), |
42b47f88f6e1
Don't bother asking for an authorization message for users that added us to
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29207
diff
changeset
|
1887 _("_Cancel"), G_CALLBACK(cancel_auth_request), |
42b47f88f6e1
Don't bother asking for an authorization message for users that added us to
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29207
diff
changeset
|
1888 purple_connection_get_account(gc), bname, NULL, |
42b47f88f6e1
Don't bother asking for an authorization message for users that added us to
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29207
diff
changeset
|
1889 data); |
42b47f88f6e1
Don't bother asking for an authorization message for users that added us to
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
29207
diff
changeset
|
1890 } |
27564
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1891 } |
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1892 |
3698c7f4d803
On MSN, pop up an "invite message" request similar to oscar, and send that
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
27558
diff
changeset
|
1893 static void |
15823 | 1894 msn_rem_buddy(PurpleConnection *gc, PurpleBuddy *buddy, PurpleGroup *group) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1895 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1896 MsnSession *session; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1897 MsnUserList *userlist; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1898 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1899 session = gc->proto_data; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1900 userlist = session->userlist; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1901 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1902 if (!session->logged_in) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1903 return; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1904 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1905 /* XXX - Does buddy->name need to be msn_normalize'd here? --KingAnt */ |
24120
16734635febf
Start hiding blist.h internals in prpls.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23978
diff
changeset
|
1906 msn_userlist_rem_buddy(userlist, purple_buddy_get_name(buddy)); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1907 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1908 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1909 static void |
15823 | 1910 msn_add_permit(PurpleConnection *gc, const char *who) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1911 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1912 MsnSession *session; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1913 MsnUserList *userlist; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1914 MsnUser *user; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1915 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1916 session = gc->proto_data; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1917 userlist = session->userlist; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1918 user = msn_userlist_find_user(userlist, who); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1919 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1920 if (!session->logged_in) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1921 return; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1922 |
20486
ff4ae9dde291
Make block/unblock work right, as well as being add by a buddy. Finally fixes #723
Carlos Silva <typ0@pidgin.im>
parents:
20484
diff
changeset
|
1923 if (user != NULL && user->list_op & MSN_LIST_BL_OP) { |
20481
eb93710aec4d
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:
20477
diff
changeset
|
1924 msn_userlist_rem_buddy_from_list(userlist, who, MSN_LIST_BL); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1925 |
20486
ff4ae9dde291
Make block/unblock work right, as well as being add by a buddy. Finally fixes #723
Carlos Silva <typ0@pidgin.im>
parents:
20484
diff
changeset
|
1926 /* delete contact from Block list and add it to Allow in the callback */ |
23504
69af5301e1a7
killing MsnContact which just wraps MsnSession
Ka-Hing Cheung <khc@hxbc.us>
parents:
23501
diff
changeset
|
1927 msn_del_contact_from_list(session, NULL, who, MSN_LIST_BL); |
20486
ff4ae9dde291
Make block/unblock work right, as well as being add by a buddy. Finally fixes #723
Carlos Silva <typ0@pidgin.im>
parents:
20484
diff
changeset
|
1928 } else { |
ff4ae9dde291
Make block/unblock work right, as well as being add by a buddy. Finally fixes #723
Carlos Silva <typ0@pidgin.im>
parents:
20484
diff
changeset
|
1929 /* just add the contact to Allow list */ |
23504
69af5301e1a7
killing MsnContact which just wraps MsnSession
Ka-Hing Cheung <khc@hxbc.us>
parents:
23501
diff
changeset
|
1930 msn_add_contact_to_list(session, NULL, who, MSN_LIST_AL); |
20486
ff4ae9dde291
Make block/unblock work right, as well as being add by a buddy. Finally fixes #723
Carlos Silva <typ0@pidgin.im>
parents:
20484
diff
changeset
|
1931 } |
ff4ae9dde291
Make block/unblock work right, as well as being add by a buddy. Finally fixes #723
Carlos Silva <typ0@pidgin.im>
parents:
20484
diff
changeset
|
1932 |
ff4ae9dde291
Make block/unblock work right, as well as being add by a buddy. Finally fixes #723
Carlos Silva <typ0@pidgin.im>
parents:
20484
diff
changeset
|
1933 |
20481
eb93710aec4d
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:
20477
diff
changeset
|
1934 msn_userlist_add_buddy_to_list(userlist, who, MSN_LIST_AL); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1935 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1936 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1937 static void |
15823 | 1938 msn_add_deny(PurpleConnection *gc, const char *who) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1939 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1940 MsnSession *session; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1941 MsnUserList *userlist; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1942 MsnUser *user; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1943 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1944 session = gc->proto_data; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1945 userlist = session->userlist; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1946 user = msn_userlist_find_user(userlist, who); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1947 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1948 if (!session->logged_in) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1949 return; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1950 |
20486
ff4ae9dde291
Make block/unblock work right, as well as being add by a buddy. Finally fixes #723
Carlos Silva <typ0@pidgin.im>
parents:
20484
diff
changeset
|
1951 if (user != NULL && user->list_op & MSN_LIST_AL_OP) { |
20481
eb93710aec4d
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:
20477
diff
changeset
|
1952 msn_userlist_rem_buddy_from_list(userlist, who, MSN_LIST_AL); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1953 |
20486
ff4ae9dde291
Make block/unblock work right, as well as being add by a buddy. Finally fixes #723
Carlos Silva <typ0@pidgin.im>
parents:
20484
diff
changeset
|
1954 /* delete contact from Allow list and add it to Block in the callback */ |
23504
69af5301e1a7
killing MsnContact which just wraps MsnSession
Ka-Hing Cheung <khc@hxbc.us>
parents:
23501
diff
changeset
|
1955 msn_del_contact_from_list(session, NULL, who, MSN_LIST_AL); |
20486
ff4ae9dde291
Make block/unblock work right, as well as being add by a buddy. Finally fixes #723
Carlos Silva <typ0@pidgin.im>
parents:
20484
diff
changeset
|
1956 } else { |
ff4ae9dde291
Make block/unblock work right, as well as being add by a buddy. Finally fixes #723
Carlos Silva <typ0@pidgin.im>
parents:
20484
diff
changeset
|
1957 /* just add the contact to Block list */ |
23504
69af5301e1a7
killing MsnContact which just wraps MsnSession
Ka-Hing Cheung <khc@hxbc.us>
parents:
23501
diff
changeset
|
1958 msn_add_contact_to_list(session, NULL, who, MSN_LIST_BL); |
20486
ff4ae9dde291
Make block/unblock work right, as well as being add by a buddy. Finally fixes #723
Carlos Silva <typ0@pidgin.im>
parents:
20484
diff
changeset
|
1959 } |
ff4ae9dde291
Make block/unblock work right, as well as being add by a buddy. Finally fixes #723
Carlos Silva <typ0@pidgin.im>
parents:
20484
diff
changeset
|
1960 |
20481
eb93710aec4d
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:
20477
diff
changeset
|
1961 msn_userlist_add_buddy_to_list(userlist, who, MSN_LIST_BL); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1962 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1963 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1964 static void |
15823 | 1965 msn_rem_permit(PurpleConnection *gc, const char *who) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1966 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1967 MsnSession *session; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1968 MsnUserList *userlist; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1969 MsnUser *user; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1970 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1971 session = gc->proto_data; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1972 userlist = session->userlist; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1973 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1974 if (!session->logged_in) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1975 return; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1976 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1977 user = msn_userlist_find_user(userlist, who); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1978 |
20481
eb93710aec4d
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:
20477
diff
changeset
|
1979 msn_userlist_rem_buddy_from_list(userlist, who, MSN_LIST_AL); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1980 |
23504
69af5301e1a7
killing MsnContact which just wraps MsnSession
Ka-Hing Cheung <khc@hxbc.us>
parents:
23501
diff
changeset
|
1981 msn_del_contact_from_list(session, NULL, who, MSN_LIST_AL); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1982 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1983 if (user != NULL && user->list_op & MSN_LIST_RL_OP) |
20481
eb93710aec4d
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:
20477
diff
changeset
|
1984 msn_userlist_add_buddy_to_list(userlist, who, MSN_LIST_BL); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1985 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1986 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1987 static void |
15823 | 1988 msn_rem_deny(PurpleConnection *gc, const char *who) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1989 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1990 MsnSession *session; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1991 MsnUserList *userlist; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1992 MsnUser *user; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1993 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1994 session = gc->proto_data; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1995 userlist = session->userlist; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1996 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1997 if (!session->logged_in) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1998 return; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1999 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2000 user = msn_userlist_find_user(userlist, who); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2001 |
20481
eb93710aec4d
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:
20477
diff
changeset
|
2002 msn_userlist_rem_buddy_from_list(userlist, who, MSN_LIST_BL); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2003 |
23504
69af5301e1a7
killing MsnContact which just wraps MsnSession
Ka-Hing Cheung <khc@hxbc.us>
parents:
23501
diff
changeset
|
2004 msn_del_contact_from_list(session, NULL, who, MSN_LIST_BL); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2005 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2006 if (user != NULL && user->list_op & MSN_LIST_RL_OP) |
20481
eb93710aec4d
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:
20477
diff
changeset
|
2007 msn_userlist_add_buddy_to_list(userlist, who, MSN_LIST_AL); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2008 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2009 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2010 static void |
15823 | 2011 msn_set_permit_deny(PurpleConnection *gc) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2012 { |
20459
46437bdf316b
In the initial ADL listing, send the commands in the correct sequence as required by the server: BLP, ADL and PRP. When the server acknowledges this initial ADL, send CHG with status information
Carlos Silva <typ0@pidgin.im>
parents:
20456
diff
changeset
|
2013 msn_send_privacy(gc); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2014 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2015 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2016 static void |
15823 | 2017 msn_chat_invite(PurpleConnection *gc, int id, const char *msg, |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2018 const char *who) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2019 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2020 MsnSession *session; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2021 MsnSwitchBoard *swboard; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2022 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2023 session = gc->proto_data; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2024 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2025 swboard = msn_session_find_swboard_with_id(session, id); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2026 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2027 if (swboard == NULL) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2028 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2029 /* if we have no switchboard, everyone else left the chat already */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2030 swboard = msn_switchboard_new(session); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2031 msn_switchboard_request(swboard); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2032 swboard->chat_id = id; |
15823 | 2033 swboard->conv = purple_find_chat(gc, id); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2034 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2035 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2036 swboard->flag |= MSN_SB_FLAG_IM; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2037 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2038 msn_switchboard_request_add_user(swboard, who); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2039 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2040 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2041 static void |
15823 | 2042 msn_chat_leave(PurpleConnection *gc, int id) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2043 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2044 MsnSession *session; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2045 MsnSwitchBoard *swboard; |
15823 | 2046 PurpleConversation *conv; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2047 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2048 session = gc->proto_data; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2049 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2050 swboard = msn_session_find_swboard_with_id(session, id); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2051 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2052 /* if swboard is NULL we were the only person left anyway */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2053 if (swboard == NULL) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2054 return; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2055 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2056 conv = swboard->conv; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2057 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2058 msn_switchboard_release(swboard, MSN_SB_FLAG_IM); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2059 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2060 /* If other switchboards managed to associate themselves with this |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2061 * conv, make sure they know it's gone! */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2062 if (conv != NULL) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2063 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2064 while ((swboard = msn_session_find_swboard_with_conv(session, conv)) != NULL) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2065 swboard->conv = NULL; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2066 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2067 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2068 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2069 static int |
15823 | 2070 msn_chat_send(PurpleConnection *gc, int id, const char *message, PurpleMessageFlags flags) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2071 { |
15823 | 2072 PurpleAccount *account; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2073 MsnSession *session; |
28418
afe6ce7cc64f
Send proper emoticon messages in MSN chats. Apparently, this never worked
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28417
diff
changeset
|
2074 const char *username; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2075 MsnSwitchBoard *swboard; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2076 MsnMessage *msg; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2077 char *msgformat; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2078 char *msgtext; |
28417
ea7e54c4d7fd
Check for empty messages before sending them in chats. This is the same
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28414
diff
changeset
|
2079 size_t msglen; |
28418
afe6ce7cc64f
Send proper emoticon messages in MSN chats. Apparently, this never worked
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28417
diff
changeset
|
2080 MsnEmoticon *smile; |
afe6ce7cc64f
Send proper emoticon messages in MSN chats. Apparently, this never worked
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28417
diff
changeset
|
2081 GSList *smileys; |
afe6ce7cc64f
Send proper emoticon messages in MSN chats. Apparently, this never worked
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28417
diff
changeset
|
2082 GString *emoticons = NULL; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2083 |
15823 | 2084 account = purple_connection_get_account(gc); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2085 session = gc->proto_data; |
28418
afe6ce7cc64f
Send proper emoticon messages in MSN chats. Apparently, this never worked
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28417
diff
changeset
|
2086 username = purple_account_get_username(account); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2087 swboard = msn_session_find_swboard_with_id(session, id); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2088 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2089 if (swboard == NULL) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2090 return -EINVAL; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2091 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2092 if (!swboard->ready) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2093 return 0; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2094 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2095 swboard->flag |= MSN_SB_FLAG_IM; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2096 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2097 msn_import_html(message, &msgformat, &msgtext); |
28417
ea7e54c4d7fd
Check for empty messages before sending them in chats. This is the same
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28414
diff
changeset
|
2098 msglen = strlen(msgtext); |
ea7e54c4d7fd
Check for empty messages before sending them in chats. This is the same
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28414
diff
changeset
|
2099 |
ea7e54c4d7fd
Check for empty messages before sending them in chats. This is the same
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28414
diff
changeset
|
2100 if ((msglen == 0) || (msglen + strlen(msgformat) + strlen(VERSION) > 1564)) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2101 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2102 g_free(msgformat); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2103 g_free(msgtext); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2104 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2105 return -E2BIG; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2106 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2107 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2108 msg = msn_message_new_plain(msgtext); |
31132
33b4ae796648
Rename "attribute" to "header" in a bunch of places. The SLP protocol
Mark Doliner <mark@kingant.net>
parents:
31130
diff
changeset
|
2109 msn_message_set_header(msg, "X-MMS-IM-Format", msgformat); |
28418
afe6ce7cc64f
Send proper emoticon messages in MSN chats. Apparently, this never worked
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28417
diff
changeset
|
2110 |
afe6ce7cc64f
Send proper emoticon messages in MSN chats. Apparently, this never worked
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28417
diff
changeset
|
2111 smileys = msn_msg_grab_emoticons(msg->body, username); |
afe6ce7cc64f
Send proper emoticon messages in MSN chats. Apparently, this never worked
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28417
diff
changeset
|
2112 while (smileys) { |
afe6ce7cc64f
Send proper emoticon messages in MSN chats. Apparently, this never worked
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28417
diff
changeset
|
2113 smile = (MsnEmoticon *)smileys->data; |
afe6ce7cc64f
Send proper emoticon messages in MSN chats. Apparently, this never worked
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28417
diff
changeset
|
2114 emoticons = msn_msg_emoticon_add(emoticons, smile); |
28419
36c6601d650a
It seems I need to write the smiley to the conversation for it to show up
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28418
diff
changeset
|
2115 if (purple_conv_custom_smiley_add(swboard->conv, smile->smile, |
36c6601d650a
It seems I need to write the smiley to the conversation for it to show up
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28418
diff
changeset
|
2116 "sha1", purple_smiley_get_checksum(smile->ps), |
36c6601d650a
It seems I need to write the smiley to the conversation for it to show up
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28418
diff
changeset
|
2117 FALSE)) { |
36c6601d650a
It seems I need to write the smiley to the conversation for it to show up
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28418
diff
changeset
|
2118 gconstpointer data; |
36c6601d650a
It seems I need to write the smiley to the conversation for it to show up
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28418
diff
changeset
|
2119 size_t len; |
36c6601d650a
It seems I need to write the smiley to the conversation for it to show up
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28418
diff
changeset
|
2120 data = purple_smiley_get_data(smile->ps, &len); |
36c6601d650a
It seems I need to write the smiley to the conversation for it to show up
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28418
diff
changeset
|
2121 purple_conv_custom_smiley_write(swboard->conv, smile->smile, data, len); |
36c6601d650a
It seems I need to write the smiley to the conversation for it to show up
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28418
diff
changeset
|
2122 purple_conv_custom_smiley_close(swboard->conv, smile->smile); |
36c6601d650a
It seems I need to write the smiley to the conversation for it to show up
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28418
diff
changeset
|
2123 } |
28418
afe6ce7cc64f
Send proper emoticon messages in MSN chats. Apparently, this never worked
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28417
diff
changeset
|
2124 msn_emoticon_destroy(smile); |
afe6ce7cc64f
Send proper emoticon messages in MSN chats. Apparently, this never worked
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28417
diff
changeset
|
2125 smileys = g_slist_delete_link(smileys, smileys); |
afe6ce7cc64f
Send proper emoticon messages in MSN chats. Apparently, this never worked
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28417
diff
changeset
|
2126 } |
afe6ce7cc64f
Send proper emoticon messages in MSN chats. Apparently, this never worked
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28417
diff
changeset
|
2127 |
afe6ce7cc64f
Send proper emoticon messages in MSN chats. Apparently, this never worked
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28417
diff
changeset
|
2128 if (emoticons) { |
afe6ce7cc64f
Send proper emoticon messages in MSN chats. Apparently, this never worked
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28417
diff
changeset
|
2129 msn_send_emoticons(swboard, emoticons); |
afe6ce7cc64f
Send proper emoticon messages in MSN chats. Apparently, this never worked
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28417
diff
changeset
|
2130 g_string_free(emoticons, TRUE); |
afe6ce7cc64f
Send proper emoticon messages in MSN chats. Apparently, this never worked
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28417
diff
changeset
|
2131 } |
afe6ce7cc64f
Send proper emoticon messages in MSN chats. Apparently, this never worked
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
28417
diff
changeset
|
2132 |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2133 msn_switchboard_send_msg(swboard, msg, FALSE); |
31393
b4285ea42b6e
msn_message_destroy() calls msn_message_unref() if refcount>0. This is
Mark Doliner <mark@kingant.net>
parents:
31392
diff
changeset
|
2134 msn_message_unref(msg); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2135 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2136 g_free(msgformat); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2137 g_free(msgtext); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2138 |
23154
caa533b62902
When calling serv_got_chat_in() after sending a group chat message (to let
Evan Schoenberg <evan.s@dreskin.net>
parents:
23144
diff
changeset
|
2139 serv_got_chat_in(gc, id, purple_account_get_username(account), flags, |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2140 message, time(NULL)); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2141 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2142 return 0; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2143 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2144 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2145 static void |
15823 | 2146 msn_keepalive(PurpleConnection *gc) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2147 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2148 MsnSession *session; |
31148
f7ee91763c6b
msn: Remove msn_cmdproc_send_quick in favor of msn_cmdproc_send_trans
masca@cpw.pidgin.im
parents:
31147
diff
changeset
|
2149 MsnTransaction *trans; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2150 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2151 session = gc->proto_data; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2152 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2153 if (!session->http_method) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2154 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2155 MsnCmdProc *cmdproc; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2156 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2157 cmdproc = session->notification->cmdproc; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2158 |
31149
54c8aeecab4c
We need a way to send commands without transaction ID
masca@cpw.pidgin.im
parents:
31148
diff
changeset
|
2159 trans = msn_transaction_new(cmdproc, "PNG", NULL); |
31154
c316749944c1
I don't really like this name.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31153
diff
changeset
|
2160 msn_transaction_set_saveable(trans, FALSE); |
31148
f7ee91763c6b
msn: Remove msn_cmdproc_send_quick in favor of msn_cmdproc_send_trans
masca@cpw.pidgin.im
parents:
31147
diff
changeset
|
2161 msn_cmdproc_send_trans(cmdproc, trans); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2162 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2163 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2164 |
23517
70de4e2246ec
Add real server-side aliasing to MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23509
diff
changeset
|
2165 static void msn_alias_buddy(PurpleConnection *pc, const char *name, const char *alias) |
70de4e2246ec
Add real server-side aliasing to MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23509
diff
changeset
|
2166 { |
70de4e2246ec
Add real server-side aliasing to MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23509
diff
changeset
|
2167 MsnSession *session; |
70de4e2246ec
Add real server-side aliasing to MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23509
diff
changeset
|
2168 |
70de4e2246ec
Add real server-side aliasing to MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23509
diff
changeset
|
2169 session = pc->proto_data; |
70de4e2246ec
Add real server-side aliasing to MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23509
diff
changeset
|
2170 |
70de4e2246ec
Add real server-side aliasing to MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23509
diff
changeset
|
2171 msn_update_contact(session, name, MSN_UPDATE_ALIAS, alias); |
70de4e2246ec
Add real server-side aliasing to MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23509
diff
changeset
|
2172 } |
70de4e2246ec
Add real server-side aliasing to MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23509
diff
changeset
|
2173 |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2174 static void |
15823 | 2175 msn_group_buddy(PurpleConnection *gc, const char *who, |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2176 const char *old_group_name, const char *new_group_name) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2177 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2178 MsnSession *session; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2179 MsnUserList *userlist; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2180 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2181 session = gc->proto_data; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2182 userlist = session->userlist; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2183 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2184 msn_userlist_move_buddy(userlist, who, old_group_name, new_group_name); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2185 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2186 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2187 static void |
15823 | 2188 msn_rename_group(PurpleConnection *gc, const char *old_name, |
2189 PurpleGroup *group, GList *moved_buddies) | |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2190 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2191 MsnSession *session; |
24120
16734635febf
Start hiding blist.h internals in prpls.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23978
diff
changeset
|
2192 const char *gname; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2193 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2194 session = gc->proto_data; |
23300
5cdd93dac7a2
Delete trailing whitespace
Mark Doliner <mark@kingant.net>
parents:
23182
diff
changeset
|
2195 |
20481
eb93710aec4d
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:
20477
diff
changeset
|
2196 g_return_if_fail(session != NULL); |
eb93710aec4d
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:
20477
diff
changeset
|
2197 g_return_if_fail(session->userlist != NULL); |
23300
5cdd93dac7a2
Delete trailing whitespace
Mark Doliner <mark@kingant.net>
parents:
23182
diff
changeset
|
2198 |
24120
16734635febf
Start hiding blist.h internals in prpls.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23978
diff
changeset
|
2199 gname = purple_group_get_name(group); |
20481
eb93710aec4d
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:
20477
diff
changeset
|
2200 if (msn_userlist_find_group_with_name(session->userlist, old_name) != NULL) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2201 { |
24120
16734635febf
Start hiding blist.h internals in prpls.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23978
diff
changeset
|
2202 msn_contact_rename_group(session, old_name, gname); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2203 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2204 else |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2205 { |
20481
eb93710aec4d
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:
20477
diff
changeset
|
2206 /* not found */ |
24120
16734635febf
Start hiding blist.h internals in prpls.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23978
diff
changeset
|
2207 msn_add_group(session, NULL, gname); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2208 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2209 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2210 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2211 static void |
15823 | 2212 msn_convo_closed(PurpleConnection *gc, const char *who) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2213 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2214 MsnSession *session; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2215 MsnSwitchBoard *swboard; |
15823 | 2216 PurpleConversation *conv; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2217 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2218 session = gc->proto_data; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2219 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2220 swboard = msn_session_find_swboard(session, who); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2221 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2222 /* |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2223 * Don't perform an assertion here. If swboard is NULL, then the |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2224 * switchboard was either closed by the other party, or the person |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2225 * is talking to himself. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2226 */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2227 if (swboard == NULL) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2228 return; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2229 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2230 conv = swboard->conv; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2231 |
17247
d63075ed73c9
When closing IM windows on MSN, don't release the switchboard connection
Stu Tomlinson <stu@nosnilmot.com>
parents:
17197
diff
changeset
|
2232 /* If we release the switchboard here, it may still have messages |
d63075ed73c9
When closing IM windows on MSN, don't release the switchboard connection
Stu Tomlinson <stu@nosnilmot.com>
parents:
17197
diff
changeset
|
2233 pending ACK which would result in incorrect unsent message errors. |
d63075ed73c9
When closing IM windows on MSN, don't release the switchboard connection
Stu Tomlinson <stu@nosnilmot.com>
parents:
17197
diff
changeset
|
2234 Just let it timeout... This is *so* going to screw with people who |
d63075ed73c9
When closing IM windows on MSN, don't release the switchboard connection
Stu Tomlinson <stu@nosnilmot.com>
parents:
17197
diff
changeset
|
2235 use dumb clients that report "User has closed the conversation window" */ |
d63075ed73c9
When closing IM windows on MSN, don't release the switchboard connection
Stu Tomlinson <stu@nosnilmot.com>
parents:
17197
diff
changeset
|
2236 /* msn_switchboard_release(swboard, MSN_SB_FLAG_IM); */ |
d63075ed73c9
When closing IM windows on MSN, don't release the switchboard connection
Stu Tomlinson <stu@nosnilmot.com>
parents:
17197
diff
changeset
|
2237 swboard->conv = NULL; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2238 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2239 /* If other switchboards managed to associate themselves with this |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2240 * conv, make sure they know it's gone! */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2241 if (conv != NULL) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2242 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2243 while ((swboard = msn_session_find_swboard_with_conv(session, conv)) != NULL) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2244 swboard->conv = NULL; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2245 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2246 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2247 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2248 static void |
16390
4fc51a87ce42
Updates for the account buddy icon stuff. This doesn't yet work fully (and maybe not even partly), but it compiles.
Richard Laager <rlaager@wiktel.com>
parents:
16375
diff
changeset
|
2249 msn_set_buddy_icon(PurpleConnection *gc, PurpleStoredImage *img) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2250 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2251 MsnSession *session; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2252 MsnUser *user; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2253 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2254 session = gc->proto_data; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2255 user = session->user; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2256 |
16390
4fc51a87ce42
Updates for the account buddy icon stuff. This doesn't yet work fully (and maybe not even partly), but it compiles.
Richard Laager <rlaager@wiktel.com>
parents:
16375
diff
changeset
|
2257 msn_user_set_buddy_icon(user, img); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2258 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2259 msn_change_status(session); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2260 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2261 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2262 static void |
15823 | 2263 msn_remove_group(PurpleConnection *gc, PurpleGroup *group) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2264 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2265 MsnSession *session; |
24120
16734635febf
Start hiding blist.h internals in prpls.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23978
diff
changeset
|
2266 const char *gname; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2267 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2268 session = gc->proto_data; |
24120
16734635febf
Start hiding blist.h internals in prpls.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23978
diff
changeset
|
2269 gname = purple_group_get_name(group); |
16734635febf
Start hiding blist.h internals in prpls.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23978
diff
changeset
|
2270 |
16734635febf
Start hiding blist.h internals in prpls.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23978
diff
changeset
|
2271 purple_debug_info("msn", "Remove group %s\n", gname); |
20394
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
2272 /*we can't delete the default group*/ |
24120
16734635febf
Start hiding blist.h internals in prpls.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23978
diff
changeset
|
2273 if(!strcmp(gname, MSN_INDIVIDUALS_GROUP_NAME)|| |
16734635febf
Start hiding blist.h internals in prpls.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23978
diff
changeset
|
2274 !strcmp(gname, MSN_NON_IM_GROUP_NAME)) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2275 { |
23564
7bceac816e19
The great MSN debug message cleanup! Threw in a few whitespace fixes,
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23550
diff
changeset
|
2276 purple_debug_info("msn", "This group can't be removed, returning.\n"); |
20394
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
2277 return ; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2278 } |
23300
5cdd93dac7a2
Delete trailing whitespace
Mark Doliner <mark@kingant.net>
parents:
23182
diff
changeset
|
2279 |
24120
16734635febf
Start hiding blist.h internals in prpls.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23978
diff
changeset
|
2280 msn_del_group(session, gname); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2281 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2282 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2283 /** |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2284 * Extract info text from info_data and add it to user_info |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2285 */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2286 static gboolean |
15823 | 2287 msn_tooltip_extract_info_text(PurpleNotifyUserInfo *user_info, MsnGetInfoData *info_data) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2288 { |
15823 | 2289 PurpleBuddy *b; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2290 |
15823 | 2291 b = purple_find_buddy(purple_connection_get_account(info_data->gc), |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2292 info_data->name); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2293 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2294 if (b) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2295 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2296 char *tmp; |
24120
16734635febf
Start hiding blist.h internals in prpls.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23978
diff
changeset
|
2297 const char *alias; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2298 |
25294
8aa7d8bcbc7d
Alias foo. I think blist.h structs are now completely hidden.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
25290
diff
changeset
|
2299 alias = purple_buddy_get_local_buddy_alias(b); |
8aa7d8bcbc7d
Alias foo. I think blist.h structs are now completely hidden.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
25290
diff
changeset
|
2300 if (alias && alias[0]) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2301 { |
31810
0123c69ec0e5
Add a purple_notify_user_info_add_pair_plaintext function that accepts a
Mark Doliner <mark@kingant.net>
parents:
30425
diff
changeset
|
2302 purple_notify_user_info_add_pair_plaintext(user_info, _("Alias"), alias); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2303 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2304 |
24120
16734635febf
Start hiding blist.h internals in prpls.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23978
diff
changeset
|
2305 if ((alias = purple_buddy_get_server_alias(b)) != NULL) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2306 { |
24120
16734635febf
Start hiding blist.h internals in prpls.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23978
diff
changeset
|
2307 char *nicktext = g_markup_escape_text(alias, -1); |
24615
9fc3f5bf4455
Make our profile text a little cleaner and more uniform across the protocols.
Mark Doliner <mark@kingant.net>
parents:
24451
diff
changeset
|
2308 tmp = g_strdup_printf("<font sml=\"msn\">%s</font>", nicktext); |
15823 | 2309 purple_notify_user_info_add_pair(user_info, _("Nickname"), tmp); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2310 g_free(tmp); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2311 g_free(nicktext); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2312 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2313 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2314 /* Add the tooltip information */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2315 msn_tooltip_text(b, user_info, TRUE); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2316 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2317 return TRUE; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2318 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2319 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2320 return FALSE; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2321 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2322 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2323 #if PHOTO_SUPPORT |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2324 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2325 static char * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2326 msn_get_photo_url(const char *url_text) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2327 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2328 char *p, *q; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2329 |
20425
5048651671e1
Revert a bunch of whitespace changes so reviewing a diff against
Stu Tomlinson <stu@nosnilmot.com>
parents:
20422
diff
changeset
|
2330 if ((p = strstr(url_text, PHOTO_URL)) != NULL) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2331 { |
20394
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
2332 p += strlen(PHOTO_URL); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2333 } |
23730
5aba1f0f36b0
Fix up some whitespace problems.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23673
diff
changeset
|
2334 if (p && (strncmp(p, "http://", strlen("http://")) == 0) && ((q = strchr(p, '"')) != NULL)) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2335 return g_strndup(p, q - p); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2336 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2337 return NULL; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2338 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2339 |
15823 | 2340 static void msn_got_photo(PurpleUtilFetchUrlData *url_data, gpointer data, |
23529
46d8edad1647
Fix up a typo between the declaration and definition of msn_got_photo.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23524
diff
changeset
|
2341 const gchar *url_text, gsize len, const gchar *error_message); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2342 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2343 #endif |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2344 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2345 #if 0 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2346 static char *msn_info_date_reformat(const char *field, size_t len) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2347 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2348 char *tmp = g_strndup(field, len); |
15823 | 2349 time_t t = purple_str_to_time(tmp, FALSE, NULL, NULL, NULL); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2350 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2351 g_free(tmp); |
15823 | 2352 return g_strdup(purple_date_format_short(localtime(&t))); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2353 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2354 #endif |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2355 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2356 #define MSN_GOT_INFO_GET_FIELD(a, b) \ |
15823 | 2357 found = purple_markup_extract_info_field(stripped, stripped_len, user_info, \ |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2358 "\n" a ":", 0, "\n", 0, "Undisclosed", b, 0, NULL, NULL); \ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2359 if (found) \ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2360 sect_info = TRUE; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2361 |
17665
02abb6713cf2
Improve parsing user info for MSN, Fixes #690
Stu Tomlinson <stu@nosnilmot.com>
parents:
17247
diff
changeset
|
2362 #define MSN_GOT_INFO_GET_FIELD_NO_SEARCH(a, b) \ |
02abb6713cf2
Improve parsing user info for MSN, Fixes #690
Stu Tomlinson <stu@nosnilmot.com>
parents:
17247
diff
changeset
|
2363 found = purple_markup_extract_info_field(stripped, stripped_len, user_info, \ |
02abb6713cf2
Improve parsing user info for MSN, Fixes #690
Stu Tomlinson <stu@nosnilmot.com>
parents:
17247
diff
changeset
|
2364 "\n" a ":", 0, "\n", 0, "Undisclosed", b, 0, NULL, msn_info_strip_search_link); \ |
02abb6713cf2
Improve parsing user info for MSN, Fixes #690
Stu Tomlinson <stu@nosnilmot.com>
parents:
17247
diff
changeset
|
2365 if (found) \ |
02abb6713cf2
Improve parsing user info for MSN, Fixes #690
Stu Tomlinson <stu@nosnilmot.com>
parents:
17247
diff
changeset
|
2366 sect_info = TRUE; |
02abb6713cf2
Improve parsing user info for MSN, Fixes #690
Stu Tomlinson <stu@nosnilmot.com>
parents:
17247
diff
changeset
|
2367 |
02abb6713cf2
Improve parsing user info for MSN, Fixes #690
Stu Tomlinson <stu@nosnilmot.com>
parents:
17247
diff
changeset
|
2368 static char * |
02abb6713cf2
Improve parsing user info for MSN, Fixes #690
Stu Tomlinson <stu@nosnilmot.com>
parents:
17247
diff
changeset
|
2369 msn_info_strip_search_link(const char *field, size_t len) |
02abb6713cf2
Improve parsing user info for MSN, Fixes #690
Stu Tomlinson <stu@nosnilmot.com>
parents:
17247
diff
changeset
|
2370 { |
02abb6713cf2
Improve parsing user info for MSN, Fixes #690
Stu Tomlinson <stu@nosnilmot.com>
parents:
17247
diff
changeset
|
2371 const char *c; |
20554 | 2372 if ((c = strstr(field, " (http://")) == NULL) |
17665
02abb6713cf2
Improve parsing user info for MSN, Fixes #690
Stu Tomlinson <stu@nosnilmot.com>
parents:
17247
diff
changeset
|
2373 return g_strndup(field, len); |
02abb6713cf2
Improve parsing user info for MSN, Fixes #690
Stu Tomlinson <stu@nosnilmot.com>
parents:
17247
diff
changeset
|
2374 return g_strndup(field, c - field); |
02abb6713cf2
Improve parsing user info for MSN, Fixes #690
Stu Tomlinson <stu@nosnilmot.com>
parents:
17247
diff
changeset
|
2375 } |
02abb6713cf2
Improve parsing user info for MSN, Fixes #690
Stu Tomlinson <stu@nosnilmot.com>
parents:
17247
diff
changeset
|
2376 |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2377 static void |
15823 | 2378 msn_got_info(PurpleUtilFetchUrlData *url_data, gpointer data, |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2379 const gchar *url_text, size_t len, const gchar *error_message) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2380 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2381 MsnGetInfoData *info_data = (MsnGetInfoData *)data; |
30748
ea96292336f0
Save and cancel-on-exit any URL requests, instead of checking the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30425
diff
changeset
|
2382 MsnSession *session; |
15823 | 2383 PurpleNotifyUserInfo *user_info; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2384 char *stripped, *p, *q, *tmp; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2385 char *user_url = NULL; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2386 gboolean found; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2387 gboolean has_tooltip_text = FALSE; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2388 gboolean has_info = FALSE; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2389 gboolean sect_info = FALSE; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2390 gboolean has_contact_info = FALSE; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2391 char *url_buffer; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2392 int stripped_len; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2393 #if PHOTO_SUPPORT |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2394 char *photo_url_text = NULL; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2395 MsnGetInfoStepTwoData *info2_data = NULL; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2396 #endif |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2397 |
20394
4a099e4d0d09
propagate from branch 'im.pidgin.pidgin' (head 98b6b547b29ea1192b73cc4e1de1e674edef4328)
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
2398 purple_debug_info("msn", "In msn_got_info,url_text:{%s}\n",url_text); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2399 |
30748
ea96292336f0
Save and cancel-on-exit any URL requests, instead of checking the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30425
diff
changeset
|
2400 session = purple_connection_get_protocol_data(info_data->gc); |
ea96292336f0
Save and cancel-on-exit any URL requests, instead of checking the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30425
diff
changeset
|
2401 session->url_datas = g_slist_remove(session->url_datas, url_data); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2402 |
15823 | 2403 user_info = purple_notify_user_info_new(); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2404 has_tooltip_text = msn_tooltip_extract_info_text(user_info, info_data); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2405 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2406 if (error_message != NULL || url_text == NULL || strcmp(url_text, "") == 0) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2407 { |
24615
9fc3f5bf4455
Make our profile text a little cleaner and more uniform across the protocols.
Mark Doliner <mark@kingant.net>
parents:
24451
diff
changeset
|
2408 purple_notify_user_info_add_pair(user_info, |
9fc3f5bf4455
Make our profile text a little cleaner and more uniform across the protocols.
Mark Doliner <mark@kingant.net>
parents:
24451
diff
changeset
|
2409 _("Error retrieving profile"), NULL); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2410 |
15823 | 2411 purple_notify_userinfo(info_data->gc, info_data->name, user_info, NULL, NULL); |
2412 purple_notify_user_info_destroy(user_info); | |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2413 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2414 g_free(info_data->name); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2415 g_free(info_data); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2416 return; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2417 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2418 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2419 url_buffer = g_strdup(url_text); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2420 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2421 /* If they have a homepage link, MSN masks it such that we need to |
15823 | 2422 * fetch the url out before purple_markup_strip_html() nukes it */ |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2423 /* I don't think this works with the new spaces profiles - Stu 3/2/06 */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2424 if ((p = strstr(url_text, |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2425 "Take a look at my </font><A class=viewDesc title=\"")) != NULL) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2426 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2427 p += 50; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2428 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2429 if ((q = strchr(p, '"')) != NULL) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2430 user_url = g_strndup(p, q - p); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2431 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2432 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2433 /* |
15823 | 2434 * purple_markup_strip_html() doesn't strip out character entities like |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2435 * and · |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2436 */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2437 while ((p = strstr(url_buffer, " ")) != NULL) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2438 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2439 *p = ' '; /* Turn 's into ordinary blanks */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2440 p += 1; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2441 memmove(p, p + 5, strlen(p + 5)); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2442 url_buffer[strlen(url_buffer) - 5] = '\0'; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2443 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2444 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2445 while ((p = strstr(url_buffer, "·")) != NULL) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2446 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2447 memmove(p, p + 6, strlen(p + 6)); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2448 url_buffer[strlen(url_buffer) - 6] = '\0'; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2449 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2450 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2451 /* Nuke the nasty \r's that just get in the way */ |
15823 | 2452 purple_str_strip_char(url_buffer, '\r'); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2453 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2454 /* MSN always puts in ' for apostrophes...replace them */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2455 while ((p = strstr(url_buffer, "'")) != NULL) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2456 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2457 *p = '\''; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2458 memmove(p + 1, p + 5, strlen(p + 5)); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2459 url_buffer[strlen(url_buffer) - 4] = '\0'; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2460 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2461 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2462 /* Nuke the html, it's easier than trying to parse the horrid stuff */ |
15823 | 2463 stripped = purple_markup_strip_html(url_buffer); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2464 stripped_len = strlen(stripped); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2465 |
15823 | 2466 purple_debug_misc("msn", "stripped = %p\n", stripped); |
2467 purple_debug_misc("msn", "url_buffer = %p\n", url_buffer); | |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2468 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2469 /* General section header */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2470 if (has_tooltip_text) |
15823 | 2471 purple_notify_user_info_add_section_break(user_info); |
19993
e73e510d56ec
A fix from Laszlo Pandy to make the MSN HTTP Method work again. Fixes #2638 and should make a number of people happy. This introduces a new string that isn't marked as translatable for 2.2.0 because it is so late in the game.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
19718
diff
changeset
|
2472 |
15823 | 2473 purple_notify_user_info_add_section_header(user_info, _("General")); |
19993
e73e510d56ec
A fix from Laszlo Pandy to make the MSN HTTP Method work again. Fixes #2638 and should make a number of people happy. This introduces a new string that isn't marked as translatable for 2.2.0 because it is so late in the game.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
19718
diff
changeset
|
2474 |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2475 /* Extract their Name and put it in */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2476 MSN_GOT_INFO_GET_FIELD("Name", _("Name")); |
19993
e73e510d56ec
A fix from Laszlo Pandy to make the MSN HTTP Method work again. Fixes #2638 and should make a number of people happy. This introduces a new string that isn't marked as translatable for 2.2.0 because it is so late in the game.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
19718
diff
changeset
|
2477 |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2478 /* General */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2479 MSN_GOT_INFO_GET_FIELD("Nickname", _("Nickname")); |
17665
02abb6713cf2
Improve parsing user info for MSN, Fixes #690
Stu Tomlinson <stu@nosnilmot.com>
parents:
17247
diff
changeset
|
2480 MSN_GOT_INFO_GET_FIELD_NO_SEARCH("Age", _("Age")); |
02abb6713cf2
Improve parsing user info for MSN, Fixes #690
Stu Tomlinson <stu@nosnilmot.com>
parents:
17247
diff
changeset
|
2481 MSN_GOT_INFO_GET_FIELD_NO_SEARCH("Gender", _("Gender")); |
02abb6713cf2
Improve parsing user info for MSN, Fixes #690
Stu Tomlinson <stu@nosnilmot.com>
parents:
17247
diff
changeset
|
2482 MSN_GOT_INFO_GET_FIELD_NO_SEARCH("Occupation", _("Occupation")); |
02abb6713cf2
Improve parsing user info for MSN, Fixes #690
Stu Tomlinson <stu@nosnilmot.com>
parents:
17247
diff
changeset
|
2483 MSN_GOT_INFO_GET_FIELD_NO_SEARCH("Location", _("Location")); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2484 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2485 /* Extract their Interests and put it in */ |
15823 | 2486 found = purple_markup_extract_info_field(stripped, stripped_len, user_info, |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2487 "\nInterests\t", 0, " (/default.aspx?page=searchresults", 0, |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2488 "Undisclosed", _("Hobbies and Interests") /* _("Interests") */, |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2489 0, NULL, NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2490 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2491 if (found) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2492 sect_info = TRUE; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2493 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2494 MSN_GOT_INFO_GET_FIELD("More about me", _("A Little About Me")); |
19993
e73e510d56ec
A fix from Laszlo Pandy to make the MSN HTTP Method work again. Fixes #2638 and should make a number of people happy. This introduces a new string that isn't marked as translatable for 2.2.0 because it is so late in the game.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
19718
diff
changeset
|
2495 |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2496 if (sect_info) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2497 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2498 has_info = TRUE; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2499 sect_info = FALSE; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2500 } |
19993
e73e510d56ec
A fix from Laszlo Pandy to make the MSN HTTP Method work again. Fixes #2638 and should make a number of people happy. This introduces a new string that isn't marked as translatable for 2.2.0 because it is so late in the game.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
19718
diff
changeset
|
2501 else |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2502 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2503 /* Remove the section header */ |
15823 | 2504 purple_notify_user_info_remove_last_item(user_info); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2505 if (has_tooltip_text) |
15823 | 2506 purple_notify_user_info_remove_last_item(user_info); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2507 } |
19993
e73e510d56ec
A fix from Laszlo Pandy to make the MSN HTTP Method work again. Fixes #2638 and should make a number of people happy. This introduces a new string that isn't marked as translatable for 2.2.0 because it is so late in the game.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
19718
diff
changeset
|
2508 |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2509 /* Social */ |
15823 | 2510 purple_notify_user_info_add_section_break(user_info); |
2511 purple_notify_user_info_add_section_header(user_info, _("Social")); | |
19993
e73e510d56ec
A fix from Laszlo Pandy to make the MSN HTTP Method work again. Fixes #2638 and should make a number of people happy. This introduces a new string that isn't marked as translatable for 2.2.0 because it is so late in the game.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
19718
diff
changeset
|
2512 |
22433
616a76954a97
Improve "Get Info" parsing on MSN - ignore all URLs in fields instead of
Stu Tomlinson <stu@nosnilmot.com>
parents:
22259
diff
changeset
|
2513 MSN_GOT_INFO_GET_FIELD_NO_SEARCH("Marital status", _("Marital Status")); |
616a76954a97
Improve "Get Info" parsing on MSN - ignore all URLs in fields instead of
Stu Tomlinson <stu@nosnilmot.com>
parents:
22259
diff
changeset
|
2514 MSN_GOT_INFO_GET_FIELD_NO_SEARCH("Interested in", _("Interests")); |
616a76954a97
Improve "Get Info" parsing on MSN - ignore all URLs in fields instead of
Stu Tomlinson <stu@nosnilmot.com>
parents:
22259
diff
changeset
|
2515 MSN_GOT_INFO_GET_FIELD_NO_SEARCH("Pets", _("Pets")); |
616a76954a97
Improve "Get Info" parsing on MSN - ignore all URLs in fields instead of
Stu Tomlinson <stu@nosnilmot.com>
parents:
22259
diff
changeset
|
2516 MSN_GOT_INFO_GET_FIELD_NO_SEARCH("Hometown", _("Hometown")); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2517 MSN_GOT_INFO_GET_FIELD("Places lived", _("Places Lived")); |
22433
616a76954a97
Improve "Get Info" parsing on MSN - ignore all URLs in fields instead of
Stu Tomlinson <stu@nosnilmot.com>
parents:
22259
diff
changeset
|
2518 MSN_GOT_INFO_GET_FIELD_NO_SEARCH("Fashion", _("Fashion")); |
616a76954a97
Improve "Get Info" parsing on MSN - ignore all URLs in fields instead of
Stu Tomlinson <stu@nosnilmot.com>
parents:
22259
diff
changeset
|
2519 MSN_GOT_INFO_GET_FIELD_NO_SEARCH("Humor", _("Humor")); |
616a76954a97
Improve "Get Info" parsing on MSN - ignore all URLs in fields instead of
Stu Tomlinson <stu@nosnilmot.com>
parents:
22259
diff
changeset
|
2520 MSN_GOT_INFO_GET_FIELD_NO_SEARCH("Music", _("Music")); |
616a76954a97
Improve "Get Info" parsing on MSN - ignore all URLs in fields instead of
Stu Tomlinson <stu@nosnilmot.com>
parents:
22259
diff
changeset
|
2521 MSN_GOT_INFO_GET_FIELD_NO_SEARCH("Favorite quote", _("Favorite Quote")); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2522 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2523 if (sect_info) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2524 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2525 has_info = TRUE; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2526 sect_info = FALSE; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2527 } |
19993
e73e510d56ec
A fix from Laszlo Pandy to make the MSN HTTP Method work again. Fixes #2638 and should make a number of people happy. This introduces a new string that isn't marked as translatable for 2.2.0 because it is so late in the game.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
19718
diff
changeset
|
2528 else |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2529 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2530 /* Remove the section header */ |
15823 | 2531 purple_notify_user_info_remove_last_item(user_info); |
2532 purple_notify_user_info_remove_last_item(user_info); | |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2533 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2534 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2535 /* Contact Info */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2536 /* Personal */ |
15823 | 2537 purple_notify_user_info_add_section_break(user_info); |
2538 purple_notify_user_info_add_section_header(user_info, _("Contact Info")); | |
2539 purple_notify_user_info_add_section_header(user_info, _("Personal")); | |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2540 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2541 MSN_GOT_INFO_GET_FIELD("Name", _("Name")); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2542 MSN_GOT_INFO_GET_FIELD("Significant other", _("Significant Other")); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2543 MSN_GOT_INFO_GET_FIELD("Home phone", _("Home Phone")); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2544 MSN_GOT_INFO_GET_FIELD("Home phone 2", _("Home Phone 2")); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2545 MSN_GOT_INFO_GET_FIELD("Home address", _("Home Address")); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2546 MSN_GOT_INFO_GET_FIELD("Personal Mobile", _("Personal Mobile")); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2547 MSN_GOT_INFO_GET_FIELD("Home fax", _("Home Fax")); |
23182
e0bcb8cfda74
Use "email" and "Email" consistently. This is potentially controversial,
Richard Laager <rlaager@wiktel.com>
parents:
23154
diff
changeset
|
2548 MSN_GOT_INFO_GET_FIELD("Personal email", _("Personal Email")); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2549 MSN_GOT_INFO_GET_FIELD("Personal IM", _("Personal IM")); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2550 MSN_GOT_INFO_GET_FIELD("Birthday", _("Birthday")); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2551 MSN_GOT_INFO_GET_FIELD("Anniversary", _("Anniversary")); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2552 MSN_GOT_INFO_GET_FIELD("Notes", _("Notes")); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2553 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2554 if (sect_info) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2555 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2556 has_info = TRUE; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2557 sect_info = FALSE; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2558 has_contact_info = TRUE; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2559 } |
19993
e73e510d56ec
A fix from Laszlo Pandy to make the MSN HTTP Method work again. Fixes #2638 and should make a number of people happy. This introduces a new string that isn't marked as translatable for 2.2.0 because it is so late in the game.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
19718
diff
changeset
|
2560 else |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2561 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2562 /* Remove the section header */ |
15823 | 2563 purple_notify_user_info_remove_last_item(user_info); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2564 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2565 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2566 /* Business */ |
15823 | 2567 purple_notify_user_info_add_section_header(user_info, _("Work")); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2568 MSN_GOT_INFO_GET_FIELD("Name", _("Name")); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2569 MSN_GOT_INFO_GET_FIELD("Job title", _("Job Title")); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2570 MSN_GOT_INFO_GET_FIELD("Company", _("Company")); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2571 MSN_GOT_INFO_GET_FIELD("Department", _("Department")); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2572 MSN_GOT_INFO_GET_FIELD("Profession", _("Profession")); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2573 MSN_GOT_INFO_GET_FIELD("Work phone 1", _("Work Phone")); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2574 MSN_GOT_INFO_GET_FIELD("Work phone 2", _("Work Phone 2")); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2575 MSN_GOT_INFO_GET_FIELD("Work address", _("Work Address")); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2576 MSN_GOT_INFO_GET_FIELD("Work mobile", _("Work Mobile")); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2577 MSN_GOT_INFO_GET_FIELD("Work pager", _("Work Pager")); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2578 MSN_GOT_INFO_GET_FIELD("Work fax", _("Work Fax")); |
23182
e0bcb8cfda74
Use "email" and "Email" consistently. This is potentially controversial,
Richard Laager <rlaager@wiktel.com>
parents:
23154
diff
changeset
|
2579 MSN_GOT_INFO_GET_FIELD("Work email", _("Work Email")); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2580 MSN_GOT_INFO_GET_FIELD("Work IM", _("Work IM")); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2581 MSN_GOT_INFO_GET_FIELD("Start date", _("Start Date")); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2582 MSN_GOT_INFO_GET_FIELD("Notes", _("Notes")); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2583 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2584 if (sect_info) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2585 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2586 has_info = TRUE; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2587 sect_info = FALSE; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2588 has_contact_info = TRUE; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2589 } |
19993
e73e510d56ec
A fix from Laszlo Pandy to make the MSN HTTP Method work again. Fixes #2638 and should make a number of people happy. This introduces a new string that isn't marked as translatable for 2.2.0 because it is so late in the game.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
19718
diff
changeset
|
2590 else |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2591 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2592 /* Remove the section header */ |
15823 | 2593 purple_notify_user_info_remove_last_item(user_info); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2594 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2595 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2596 if (!has_contact_info) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2597 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2598 /* Remove the Contact Info section header */ |
15823 | 2599 purple_notify_user_info_remove_last_item(user_info); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2600 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2601 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2602 #if 0 /* these probably don't show up any more */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2603 /* |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2604 * The fields, 'A Little About Me', 'Favorite Things', 'Hobbies |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2605 * and Interests', 'Favorite Quote', and 'My Homepage' may or may |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2606 * not appear, in any combination. However, they do appear in |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2607 * certain order, so we can successively search to pin down the |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2608 * distinct values. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2609 */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2610 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2611 /* Check if they have A Little About Me */ |
15823 | 2612 found = purple_markup_extract_info_field(stripped, stripped_len, s, |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2613 " A Little About Me \n\n", 0, "Favorite Things", '\n', NULL, |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2614 _("A Little About Me"), 0, NULL, NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2615 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2616 if (!found) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2617 { |
15823 | 2618 found = purple_markup_extract_info_field(stripped, stripped_len, s, |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2619 " A Little About Me \n\n", 0, "Hobbies and Interests", '\n', |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2620 NULL, _("A Little About Me"), 0, NULL, NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2621 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2622 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2623 if (!found) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2624 { |
15823 | 2625 found = purple_markup_extract_info_field(stripped, stripped_len, s, |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2626 " A Little About Me \n\n", 0, "Favorite Quote", '\n', NULL, |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2627 _("A Little About Me"), 0, NULL, NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2628 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2629 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2630 if (!found) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2631 { |
15823 | 2632 found = purple_markup_extract_info_field(stripped, stripped_len, s, |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2633 " A Little About Me \n\n", 0, "My Homepage \n\nTake a look", |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2634 '\n', |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2635 NULL, _("A Little About Me"), 0, NULL, NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2636 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2637 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2638 if (!found) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2639 { |
15823 | 2640 purple_markup_extract_info_field(stripped, stripped_len, s, |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2641 " A Little About Me \n\n", 0, "last updated", '\n', NULL, |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2642 _("A Little About Me"), 0, NULL, NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2643 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2644 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2645 if (found) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2646 has_info = TRUE; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2647 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2648 /* Check if they have Favorite Things */ |
15823 | 2649 found = purple_markup_extract_info_field(stripped, stripped_len, s, |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2650 " Favorite Things \n\n", 0, "Hobbies and Interests", '\n', NULL, |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2651 _("Favorite Things"), 0, NULL, NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2652 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2653 if (!found) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2654 { |
15823 | 2655 found = purple_markup_extract_info_field(stripped, stripped_len, s, |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2656 " Favorite Things \n\n", 0, "Favorite Quote", '\n', NULL, |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2657 _("Favorite Things"), 0, NULL, NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2658 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2659 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2660 if (!found) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2661 { |
15823 | 2662 found = purple_markup_extract_info_field(stripped, stripped_len, s, |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2663 " Favorite Things \n\n", 0, "My Homepage \n\nTake a look", '\n', |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2664 NULL, _("Favorite Things"), 0, NULL, NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2665 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2666 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2667 if (!found) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2668 { |
15823 | 2669 purple_markup_extract_info_field(stripped, stripped_len, s, |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2670 " Favorite Things \n\n", 0, "last updated", '\n', NULL, |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2671 _("Favorite Things"), 0, NULL, NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2672 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2673 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2674 if (found) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2675 has_info = TRUE; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2676 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2677 /* Check if they have Hobbies and Interests */ |
15823 | 2678 found = purple_markup_extract_info_field(stripped, stripped_len, s, |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2679 " Hobbies and Interests \n\n", 0, "Favorite Quote", '\n', NULL, |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2680 _("Hobbies and Interests"), 0, NULL, NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2681 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2682 if (!found) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2683 { |
15823 | 2684 found = purple_markup_extract_info_field(stripped, stripped_len, s, |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2685 " Hobbies and Interests \n\n", 0, "My Homepage \n\nTake a look", |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2686 '\n', NULL, _("Hobbies and Interests"), 0, NULL, NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2687 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2688 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2689 if (!found) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2690 { |
15823 | 2691 purple_markup_extract_info_field(stripped, stripped_len, s, |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2692 " Hobbies and Interests \n\n", 0, "last updated", '\n', NULL, |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2693 _("Hobbies and Interests"), 0, NULL, NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2694 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2695 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2696 if (found) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2697 has_info = TRUE; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2698 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2699 /* Check if they have Favorite Quote */ |
15823 | 2700 found = purple_markup_extract_info_field(stripped, stripped_len, s, |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2701 "Favorite Quote \n\n", 0, "My Homepage \n\nTake a look", '\n', NULL, |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2702 _("Favorite Quote"), 0, NULL, NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2703 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2704 if (!found) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2705 { |
15823 | 2706 purple_markup_extract_info_field(stripped, stripped_len, s, |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2707 "Favorite Quote \n\n", 0, "last updated", '\n', NULL, |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2708 _("Favorite Quote"), 0, NULL, NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2709 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2710 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2711 if (found) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2712 has_info = TRUE; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2713 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2714 /* Extract the last updated date and put it in */ |
15823 | 2715 found = purple_markup_extract_info_field(stripped, stripped_len, s, |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2716 " last updated:", 1, "\n", 0, NULL, _("Last Updated"), 0, |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2717 NULL, msn_info_date_reformat); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2718 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2719 if (found) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2720 has_info = TRUE; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2721 #endif |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2722 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2723 /* If we were able to fetch a homepage url earlier, stick it in there */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2724 if (user_url != NULL) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2725 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2726 tmp = g_strdup_printf("<a href=\"%s\">%s</a>", user_url, user_url); |
15823 | 2727 purple_notify_user_info_add_pair(user_info, _("Homepage"), tmp); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2728 g_free(tmp); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2729 g_free(user_url); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2730 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2731 has_info = TRUE; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2732 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2733 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2734 if (!has_info) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2735 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2736 /* MSN doesn't actually distinguish between "unknown member" and |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2737 * a known member with an empty profile. Try to explain this fact. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2738 * Note that if we have a nonempty tooltip_text, we know the user |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2739 * exists. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2740 */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2741 /* This doesn't work with the new spaces profiles - Stu 3/2/06 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2742 char *p = strstr(url_buffer, "Unknown Member </TITLE>"); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2743 * This might not work for long either ... */ |
17665
02abb6713cf2
Improve parsing user info for MSN, Fixes #690
Stu Tomlinson <stu@nosnilmot.com>
parents:
17247
diff
changeset
|
2744 /* Nope, it failed some time before 5/2/07 :( |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2745 char *p = strstr(url_buffer, "form id=\"SpacesSearch\" name=\"SpacesSearch\""); |
17665
02abb6713cf2
Improve parsing user info for MSN, Fixes #690
Stu Tomlinson <stu@nosnilmot.com>
parents:
17247
diff
changeset
|
2746 * Let's see how long this one holds out for ... */ |
02abb6713cf2
Improve parsing user info for MSN, Fixes #690
Stu Tomlinson <stu@nosnilmot.com>
parents:
17247
diff
changeset
|
2747 char *p = strstr(url_buffer, "<form id=\"profile_form\" name=\"profile_form\" action=\"http://spaces.live.com/profile.aspx?cid=0\""); |
15823 | 2748 PurpleBuddy *b = purple_find_buddy |
2749 (purple_connection_get_account(info_data->gc), info_data->name); | |
24615
9fc3f5bf4455
Make our profile text a little cleaner and more uniform across the protocols.
Mark Doliner <mark@kingant.net>
parents:
24451
diff
changeset
|
2750 purple_notify_user_info_add_pair(user_info, |
9fc3f5bf4455
Make our profile text a little cleaner and more uniform across the protocols.
Mark Doliner <mark@kingant.net>
parents:
24451
diff
changeset
|
2751 _("Error retrieving profile"), NULL); |
9fc3f5bf4455
Make our profile text a little cleaner and more uniform across the protocols.
Mark Doliner <mark@kingant.net>
parents:
24451
diff
changeset
|
2752 purple_notify_user_info_add_pair(user_info, NULL, |
9fc3f5bf4455
Make our profile text a little cleaner and more uniform across the protocols.
Mark Doliner <mark@kingant.net>
parents:
24451
diff
changeset
|
2753 ((p && b) ? _("The user has not created a public profile.") : |
9fc3f5bf4455
Make our profile text a little cleaner and more uniform across the protocols.
Mark Doliner <mark@kingant.net>
parents:
24451
diff
changeset
|
2754 (p ? _("MSN reported not being able to find the user's profile. " |
9fc3f5bf4455
Make our profile text a little cleaner and more uniform across the protocols.
Mark Doliner <mark@kingant.net>
parents:
24451
diff
changeset
|
2755 "This either means that the user does not exist, " |
9fc3f5bf4455
Make our profile text a little cleaner and more uniform across the protocols.
Mark Doliner <mark@kingant.net>
parents:
24451
diff
changeset
|
2756 "or that the user exists " |
9fc3f5bf4455
Make our profile text a little cleaner and more uniform across the protocols.
Mark Doliner <mark@kingant.net>
parents:
24451
diff
changeset
|
2757 "but has not created a public profile.") : |
9fc3f5bf4455
Make our profile text a little cleaner and more uniform across the protocols.
Mark Doliner <mark@kingant.net>
parents:
24451
diff
changeset
|
2758 _("Could not find " /* This should never happen */ |
9fc3f5bf4455
Make our profile text a little cleaner and more uniform across the protocols.
Mark Doliner <mark@kingant.net>
parents:
24451
diff
changeset
|
2759 "any information in the user's profile. " |
9fc3f5bf4455
Make our profile text a little cleaner and more uniform across the protocols.
Mark Doliner <mark@kingant.net>
parents:
24451
diff
changeset
|
2760 "The user most likely does not exist.")))); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2761 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2762 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2763 /* put a link to the actual profile URL */ |
24615
9fc3f5bf4455
Make our profile text a little cleaner and more uniform across the protocols.
Mark Doliner <mark@kingant.net>
parents:
24451
diff
changeset
|
2764 purple_notify_user_info_add_section_break(user_info); |
9fc3f5bf4455
Make our profile text a little cleaner and more uniform across the protocols.
Mark Doliner <mark@kingant.net>
parents:
24451
diff
changeset
|
2765 tmp = g_strdup_printf("<a href=\"%s%s\">%s</a>", |
9fc3f5bf4455
Make our profile text a little cleaner and more uniform across the protocols.
Mark Doliner <mark@kingant.net>
parents:
24451
diff
changeset
|
2766 PROFILE_URL, info_data->name, _("View web profile")); |
9fc3f5bf4455
Make our profile text a little cleaner and more uniform across the protocols.
Mark Doliner <mark@kingant.net>
parents:
24451
diff
changeset
|
2767 purple_notify_user_info_add_pair(user_info, NULL, tmp); |
19993
e73e510d56ec
A fix from Laszlo Pandy to make the MSN HTTP Method work again. Fixes #2638 and should make a number of people happy. This introduces a new string that isn't marked as translatable for 2.2.0 because it is so late in the game.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
19718
diff
changeset
|
2768 g_free(tmp); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2769 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2770 #if PHOTO_SUPPORT |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2771 /* Find the URL to the photo; must be before the marshalling [Bug 994207] */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2772 photo_url_text = msn_get_photo_url(url_text); |
23564
7bceac816e19
The great MSN debug message cleanup! Threw in a few whitespace fixes,
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23550
diff
changeset
|
2773 purple_debug_info("msn", "photo url:{%s}\n", photo_url_text ? photo_url_text : "(null)"); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2774 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2775 /* Marshall the existing state */ |
20989
2097b1664fa3
Fix some leaks and prevent some unnecessary allocations and frees.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
20957
diff
changeset
|
2776 info2_data = g_new0(MsnGetInfoStepTwoData, 1); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2777 info2_data->info_data = info_data; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2778 info2_data->stripped = stripped; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2779 info2_data->url_buffer = url_buffer; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2780 info2_data->user_info = user_info; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2781 info2_data->photo_url_text = photo_url_text; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2782 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2783 /* Try to put the photo in there too, if there's one */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2784 if (photo_url_text) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2785 { |
30748
ea96292336f0
Save and cancel-on-exit any URL requests, instead of checking the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30425
diff
changeset
|
2786 url_data = purple_util_fetch_url_len(photo_url_text, FALSE, NULL, FALSE, |
ea96292336f0
Save and cancel-on-exit any URL requests, instead of checking the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30425
diff
changeset
|
2787 MAX_HTTP_BUDDYICON_BYTES, |
ea96292336f0
Save and cancel-on-exit any URL requests, instead of checking the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30425
diff
changeset
|
2788 msn_got_photo, info2_data); |
ea96292336f0
Save and cancel-on-exit any URL requests, instead of checking the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30425
diff
changeset
|
2789 session->url_datas = g_slist_prepend(session->url_datas, url_data); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2790 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2791 else |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2792 { |
30748
ea96292336f0
Save and cancel-on-exit any URL requests, instead of checking the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30425
diff
changeset
|
2793 /* Finish the Get Info and show the user something */ |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2794 msn_got_photo(NULL, info2_data, NULL, 0, NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2795 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2796 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2797 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2798 static void |
15823 | 2799 msn_got_photo(PurpleUtilFetchUrlData *url_data, gpointer user_data, |
22798
05cb3f04c01e
This cleans up a bunch of warnings that stem from the fact that size_t and
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
22518
diff
changeset
|
2800 const gchar *url_text, gsize len, const gchar *error_message) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2801 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2802 MsnGetInfoStepTwoData *info2_data = (MsnGetInfoStepTwoData *)user_data; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2803 int id = -1; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2804 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2805 /* Unmarshall the saved state */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2806 MsnGetInfoData *info_data = info2_data->info_data; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2807 char *stripped = info2_data->stripped; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2808 char *url_buffer = info2_data->url_buffer; |
15823 | 2809 PurpleNotifyUserInfo *user_info = info2_data->user_info; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2810 char *photo_url_text = info2_data->photo_url_text; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2811 |
30748
ea96292336f0
Save and cancel-on-exit any URL requests, instead of checking the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30425
diff
changeset
|
2812 if (url_data) { |
ea96292336f0
Save and cancel-on-exit any URL requests, instead of checking the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30425
diff
changeset
|
2813 MsnSession *session = purple_connection_get_protocol_data(info_data->gc); |
ea96292336f0
Save and cancel-on-exit any URL requests, instead of checking the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30425
diff
changeset
|
2814 session->url_datas = g_slist_remove(session->url_datas, url_data); |
ea96292336f0
Save and cancel-on-exit any URL requests, instead of checking the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30425
diff
changeset
|
2815 } |
ea96292336f0
Save and cancel-on-exit any URL requests, instead of checking the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30425
diff
changeset
|
2816 |
ea96292336f0
Save and cancel-on-exit any URL requests, instead of checking the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30425
diff
changeset
|
2817 if (url_text && error_message) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2818 { |
15823 | 2819 purple_debug_warning("msn", "invalid connection. ignoring buddy photo info.\n"); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2820 g_free(stripped); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2821 g_free(url_buffer); |
20950
52deb2160496
Fix some (rather large) leakage.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
20856
diff
changeset
|
2822 purple_notify_user_info_destroy(user_info); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2823 g_free(info_data->name); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2824 g_free(info_data); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2825 g_free(photo_url_text); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2826 g_free(info2_data); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2827 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2828 return; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2829 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2830 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2831 /* Try to put the photo in there too, if there's one and is readable */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2832 if (user_data && url_text && len != 0) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2833 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2834 if (strstr(url_text, "400 Bad Request") |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2835 || strstr(url_text, "403 Forbidden") |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2836 || strstr(url_text, "404 Not Found")) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2837 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2838 |
15823 | 2839 purple_debug_info("msn", "Error getting %s: %s\n", |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2840 photo_url_text, url_text); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2841 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2842 else |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2843 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2844 char buf[1024]; |
22798
05cb3f04c01e
This cleans up a bunch of warnings that stem from the fact that size_t and
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
22518
diff
changeset
|
2845 purple_debug_info("msn", "%s is %" G_GSIZE_FORMAT " bytes\n", photo_url_text, len); |
16391
24bbd7e46bfe
Change the imgstore and by extension, then the buddy icon code to take over
Richard Laager <rlaager@wiktel.com>
parents:
16390
diff
changeset
|
2846 id = purple_imgstore_add_with_id(g_memdup(url_text, len), len, NULL); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2847 g_snprintf(buf, sizeof(buf), "<img id=\"%d\"><br>", id); |
15823 | 2848 purple_notify_user_info_prepend_pair(user_info, NULL, buf); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2849 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2850 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2851 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2852 /* We continue here from msn_got_info, as if nothing has happened */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2853 #endif |
15823 | 2854 purple_notify_userinfo(info_data->gc, info_data->name, user_info, NULL, NULL); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2855 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2856 g_free(stripped); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2857 g_free(url_buffer); |
15823 | 2858 purple_notify_user_info_destroy(user_info); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2859 g_free(info_data->name); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2860 g_free(info_data); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2861 #if PHOTO_SUPPORT |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2862 g_free(photo_url_text); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2863 g_free(info2_data); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2864 if (id != -1) |
16375
391a79778f89
Rework the buddy icon subsystem to use the imgstore subsystem, and modify the
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
2865 purple_imgstore_unref_by_id(id); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2866 #endif |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2867 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2868 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2869 static void |
15823 | 2870 msn_get_info(PurpleConnection *gc, const char *name) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2871 { |
30748
ea96292336f0
Save and cancel-on-exit any URL requests, instead of checking the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30425
diff
changeset
|
2872 MsnSession *session = purple_connection_get_protocol_data(gc); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2873 MsnGetInfoData *data; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2874 char *url; |
30748
ea96292336f0
Save and cancel-on-exit any URL requests, instead of checking the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30425
diff
changeset
|
2875 PurpleUtilFetchUrlData *url_data; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2876 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2877 data = g_new0(MsnGetInfoData, 1); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2878 data->gc = gc; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2879 data->name = g_strdup(name); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2880 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2881 url = g_strdup_printf("%s%s", PROFILE_URL, name); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2882 |
30748
ea96292336f0
Save and cancel-on-exit any URL requests, instead of checking the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30425
diff
changeset
|
2883 url_data = purple_util_fetch_url(url, FALSE, |
ea96292336f0
Save and cancel-on-exit any URL requests, instead of checking the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30425
diff
changeset
|
2884 "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)", |
ea96292336f0
Save and cancel-on-exit any URL requests, instead of checking the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30425
diff
changeset
|
2885 TRUE, msn_got_info, data); |
ea96292336f0
Save and cancel-on-exit any URL requests, instead of checking the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30425
diff
changeset
|
2886 session->url_datas = g_slist_prepend(session->url_datas, url_data); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2887 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2888 g_free(url); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2889 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2890 |
15823 | 2891 static gboolean msn_load(PurplePlugin *plugin) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2892 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2893 msn_notification_init(); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2894 msn_switchboard_init(); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2895 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2896 return TRUE; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2897 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2898 |
15823 | 2899 static gboolean msn_unload(PurplePlugin *plugin) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2900 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2901 msn_notification_end(); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2902 msn_switchboard_end(); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2903 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2904 return TRUE; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2905 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2906 |
15823 | 2907 static PurpleAccount *find_acct(const char *prpl, const char *acct_id) |
15624
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2908 { |
15823 | 2909 PurpleAccount *acct = NULL; |
15624
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2910 |
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2911 /* If we have a specific acct, use it */ |
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2912 if (acct_id) { |
15823 | 2913 acct = purple_accounts_find(acct_id, prpl); |
2914 if (acct && !purple_account_is_connected(acct)) | |
15624
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2915 acct = NULL; |
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2916 } else { /* Otherwise find an active account for the protocol */ |
18063
926ccb104da0
disapproval of revision '1411afd7660760db59966c3a9f18e2adab8eb27e'
Richard Laager <rlaager@wiktel.com>
parents:
18058
diff
changeset
|
2917 GList *l = purple_accounts_get_all(); |
15624
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2918 while (l) { |
15823 | 2919 if (!strcmp(prpl, purple_account_get_protocol_id(l->data)) |
2920 && purple_account_is_connected(l->data)) { | |
15624
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2921 acct = l->data; |
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2922 break; |
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2923 } |
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2924 l = l->next; |
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2925 } |
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2926 } |
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2927 |
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2928 return acct; |
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2929 } |
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2930 |
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2931 static gboolean msn_uri_handler(const char *proto, const char *cmd, GHashTable *params) |
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2932 { |
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2933 char *acct_id = g_hash_table_lookup(params, "account"); |
15823 | 2934 PurpleAccount *acct; |
15624
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2935 |
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2936 if (g_ascii_strcasecmp(proto, "msnim")) |
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2937 return FALSE; |
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2938 |
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2939 acct = find_acct("prpl-msn", acct_id); |
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2940 |
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2941 if (!acct) |
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2942 return FALSE; |
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2943 |
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2944 /* msnim:chat?contact=user@domain.tld */ |
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2945 if (!g_ascii_strcasecmp(cmd, "Chat")) { |
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2946 char *sname = g_hash_table_lookup(params, "contact"); |
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2947 if (sname) { |
15823 | 2948 PurpleConversation *conv = purple_find_conversation_with_account( |
2949 PURPLE_CONV_TYPE_IM, sname, acct); | |
15624
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2950 if (conv == NULL) |
15823 | 2951 conv = purple_conversation_new(PURPLE_CONV_TYPE_IM, acct, sname); |
2952 purple_conversation_present(conv); | |
15624
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2953 } |
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2954 /*else |
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2955 **If pidgindialogs_im() was in the core, we could use it here. |
15823 | 2956 * It is all purple_request_* based, but I'm not sure it really belongs in the core |
15624
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2957 pidgindialogs_im();*/ |
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2958 |
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2959 return TRUE; |
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2960 } |
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2961 /* msnim:add?contact=user@domain.tld */ |
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2962 else if (!g_ascii_strcasecmp(cmd, "Add")) { |
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2963 char *name = g_hash_table_lookup(params, "contact"); |
15823 | 2964 purple_blist_request_add_buddy(acct, name, NULL, NULL); |
15624
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2965 return TRUE; |
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2966 } |
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2967 |
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2968 return FALSE; |
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2969 } |
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2970 |
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
2971 |
15823 | 2972 static PurplePluginProtocolInfo prpl_info = |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2973 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2974 OPT_PROTO_MAIL_CHECK, |
30310 | 2975 NULL, /* user_splits */ |
2976 NULL, /* protocol_options */ | |
2977 {"png,gif", 0, 0, 96, 96, 0, PURPLE_ICON_SCALE_SEND}, /* icon_spec */ | |
2978 msn_list_icon, /* list_icon */ | |
2979 msn_list_emblems, /* list_emblems */ | |
2980 msn_status_text, /* status_text */ | |
2981 msn_tooltip_text, /* tooltip_text */ | |
2982 msn_status_types, /* away_states */ | |
2983 msn_blist_node_menu, /* blist_node_menu */ | |
2984 NULL, /* chat_info */ | |
2985 NULL, /* chat_info_defaults */ | |
2986 msn_login, /* login */ | |
2987 msn_close, /* close */ | |
2988 msn_send_im, /* send_im */ | |
2989 NULL, /* set_info */ | |
2990 msn_send_typing, /* send_typing */ | |
2991 msn_get_info, /* get_info */ | |
2992 msn_set_status, /* set_away */ | |
2993 msn_set_idle, /* set_idle */ | |
2994 NULL, /* change_passwd */ | |
2995 msn_add_buddy, /* add_buddy */ | |
2996 NULL, /* add_buddies */ | |
2997 msn_rem_buddy, /* remove_buddy */ | |
2998 NULL, /* remove_buddies */ | |
2999 msn_add_permit, /* add_permit */ | |
3000 msn_add_deny, /* add_deny */ | |
3001 msn_rem_permit, /* rem_permit */ | |
3002 msn_rem_deny, /* rem_deny */ | |
3003 msn_set_permit_deny, /* set_permit_deny */ | |
3004 NULL, /* join_chat */ | |
3005 NULL, /* reject chat invite */ | |
3006 NULL, /* get_chat_name */ | |
3007 msn_chat_invite, /* chat_invite */ | |
3008 msn_chat_leave, /* chat_leave */ | |
3009 NULL, /* chat_whisper */ | |
3010 msn_chat_send, /* chat_send */ | |
3011 msn_keepalive, /* keepalive */ | |
3012 NULL, /* register_user */ | |
3013 NULL, /* get_cb_info */ | |
3014 NULL, /* get_cb_away */ | |
3015 msn_alias_buddy, /* alias_buddy */ | |
3016 msn_group_buddy, /* group_buddy */ | |
3017 msn_rename_group, /* rename_group */ | |
3018 NULL, /* buddy_free */ | |
3019 msn_convo_closed, /* convo_closed */ | |
3020 msn_normalize, /* normalize */ | |
3021 msn_set_buddy_icon, /* set_buddy_icon */ | |
3022 msn_remove_group, /* remove_group */ | |
3023 NULL, /* get_cb_real_name */ | |
3024 NULL, /* set_chat_topic */ | |
3025 NULL, /* find_blist_chat */ | |
3026 NULL, /* roomlist_get_list */ | |
3027 NULL, /* roomlist_cancel */ | |
3028 NULL, /* roomlist_expand_category */ | |
3029 msn_can_receive_file, /* can_receive_file */ | |
3030 msn_send_file, /* send_file */ | |
3031 msn_new_xfer, /* new_xfer */ | |
3032 msn_offline_message, /* offline_message */ | |
3033 NULL, /* whiteboard_prpl_ops */ | |
3034 NULL, /* send_raw */ | |
3035 NULL, /* roomlist_room_serialize */ | |
3036 NULL, /* unregister_user */ | |
3037 msn_send_attention, /* send_attention */ | |
3038 msn_attention_types, /* attention_types */ | |
3039 sizeof(PurplePluginProtocolInfo), /* struct_size */ | |
3040 msn_get_account_text_table, /* get_account_text_table */ | |
3041 NULL, /* initiate_media */ | |
3042 NULL, /* get_media_caps */ | |
3043 NULL, /* get_moods */ | |
30312
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
3044 msn_set_public_alias, /* set_public_alias */ |
ec89b1d8571a
Implement [gs]et_public_alias in MSN.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30310
diff
changeset
|
3045 msn_get_public_alias /* get_public_alias */ |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
3046 }; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
3047 |
15823 | 3048 static PurplePluginInfo info = |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
3049 { |
15823 | 3050 PURPLE_PLUGIN_MAGIC, |
3051 PURPLE_MAJOR_VERSION, | |
3052 PURPLE_MINOR_VERSION, | |
24373
ad685dadbaca
Our in-tree prpls probably shouldn't list authors who don't work on
Mark Doliner <mark@kingant.net>
parents:
24371
diff
changeset
|
3053 PURPLE_PLUGIN_PROTOCOL, /**< type */ |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
3054 NULL, /**< ui_requirement */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
3055 0, /**< flags */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
3056 NULL, /**< dependencies */ |
24373
ad685dadbaca
Our in-tree prpls probably shouldn't list authors who don't work on
Mark Doliner <mark@kingant.net>
parents:
24371
diff
changeset
|
3057 PURPLE_PRIORITY_DEFAULT, /**< priority */ |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
3058 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
3059 "prpl-msn", /**< id */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
3060 "MSN", /**< name */ |
21030
3cc856ca2338
Add a --with-extraversion option to ./configure so packagers can fine tune
Stu Tomlinson <stu@nosnilmot.com>
parents:
21026
diff
changeset
|
3061 DISPLAY_VERSION, /**< version */ |
24374
75545fdf8944
String changes. I'm kind of blindly making changes to the qq strings
Mark Doliner <mark@kingant.net>
parents:
24373
diff
changeset
|
3062 N_("Windows Live Messenger Protocol Plugin"), /**< summary */ |
75545fdf8944
String changes. I'm kind of blindly making changes to the qq strings
Mark Doliner <mark@kingant.net>
parents:
24373
diff
changeset
|
3063 N_("Windows Live Messenger Protocol Plugin"), /**< description */ |
24373
ad685dadbaca
Our in-tree prpls probably shouldn't list authors who don't work on
Mark Doliner <mark@kingant.net>
parents:
24371
diff
changeset
|
3064 NULL, /**< author */ |
ad685dadbaca
Our in-tree prpls probably shouldn't list authors who don't work on
Mark Doliner <mark@kingant.net>
parents:
24371
diff
changeset
|
3065 PURPLE_WEBSITE, /**< homepage */ |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
3066 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
3067 msn_load, /**< load */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
3068 msn_unload, /**< unload */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
3069 NULL, /**< destroy */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
3070 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
3071 NULL, /**< ui_info */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
3072 &prpl_info, /**< extra_info */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
3073 NULL, /**< prefs_info */ |
16675
a338acd14365
And now the protocols
Gary Kramlich <grim@reaperworld.com>
parents:
16483
diff
changeset
|
3074 msn_actions, |
a338acd14365
And now the protocols
Gary Kramlich <grim@reaperworld.com>
parents:
16483
diff
changeset
|
3075 |
a338acd14365
And now the protocols
Gary Kramlich <grim@reaperworld.com>
parents:
16483
diff
changeset
|
3076 /* padding */ |
a338acd14365
And now the protocols
Gary Kramlich <grim@reaperworld.com>
parents:
16483
diff
changeset
|
3077 NULL, |
a338acd14365
And now the protocols
Gary Kramlich <grim@reaperworld.com>
parents:
16483
diff
changeset
|
3078 NULL, |
a338acd14365
And now the protocols
Gary Kramlich <grim@reaperworld.com>
parents:
16483
diff
changeset
|
3079 NULL, |
a338acd14365
And now the protocols
Gary Kramlich <grim@reaperworld.com>
parents:
16483
diff
changeset
|
3080 NULL |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
3081 }; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
3082 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
3083 static void |
15823 | 3084 init_plugin(PurplePlugin *plugin) |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
3085 { |
15823 | 3086 PurpleAccountOption *option; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
3087 |
15823 | 3088 option = purple_account_option_string_new(_("Server"), "server", |
23550
efa4534fd23a
Clean up some #define's in msn.h and various supporting changes.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23533
diff
changeset
|
3089 MSN_SERVER); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
3090 prpl_info.protocol_options = g_list_append(prpl_info.protocol_options, |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
3091 option); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
3092 |
23550
efa4534fd23a
Clean up some #define's in msn.h and various supporting changes.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23533
diff
changeset
|
3093 option = purple_account_option_int_new(_("Port"), "port", MSN_PORT); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
3094 prpl_info.protocol_options = g_list_append(prpl_info.protocol_options, |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
3095 option); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
3096 |
15823 | 3097 option = purple_account_option_bool_new(_("Use HTTP Method"), |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
3098 "http_method", FALSE); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
3099 prpl_info.protocol_options = g_list_append(prpl_info.protocol_options, |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
3100 option); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
3101 |
20044
4fdf9c1212e2
Mark new MSN string translatable now that we're no longer string frozen.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
19993
diff
changeset
|
3102 option = purple_account_option_string_new(_("HTTP Method Server"), |
19993
e73e510d56ec
A fix from Laszlo Pandy to make the MSN HTTP Method work again. Fixes #2638 and should make a number of people happy. This introduces a new string that isn't marked as translatable for 2.2.0 because it is so late in the game.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
19718
diff
changeset
|
3103 "http_method_server", MSN_HTTPCONN_SERVER); |
e73e510d56ec
A fix from Laszlo Pandy to make the MSN HTTP Method work again. Fixes #2638 and should make a number of people happy. This introduces a new string that isn't marked as translatable for 2.2.0 because it is so late in the game.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
19718
diff
changeset
|
3104 prpl_info.protocol_options = g_list_append(prpl_info.protocol_options, |
e73e510d56ec
A fix from Laszlo Pandy to make the MSN HTTP Method work again. Fixes #2638 and should make a number of people happy. This introduces a new string that isn't marked as translatable for 2.2.0 because it is so late in the game.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
19718
diff
changeset
|
3105 option); |
e73e510d56ec
A fix from Laszlo Pandy to make the MSN HTTP Method work again. Fixes #2638 and should make a number of people happy. This introduces a new string that isn't marked as translatable for 2.2.0 because it is so late in the game.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
19718
diff
changeset
|
3106 |
15823 | 3107 option = purple_account_option_bool_new(_("Show custom smileys"), |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
3108 "custom_smileys", TRUE); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
3109 prpl_info.protocol_options = g_list_append(prpl_info.protocol_options, |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
3110 option); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
3111 |
30425
d6f9f4320bf1
Add a pref for allowing direct connections.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30312
diff
changeset
|
3112 option = purple_account_option_bool_new(_("Allow direct connections"), |
d6f9f4320bf1
Add a pref for allowing direct connections.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30312
diff
changeset
|
3113 "direct_connect", TRUE); |
d6f9f4320bf1
Add a pref for allowing direct connections.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30312
diff
changeset
|
3114 prpl_info.protocol_options = g_list_append(prpl_info.protocol_options, |
d6f9f4320bf1
Add a pref for allowing direct connections.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30312
diff
changeset
|
3115 option); |
d6f9f4320bf1
Add a pref for allowing direct connections.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30312
diff
changeset
|
3116 |
31435
05b3fa3725a1
Read the MPOP setting from the AB.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31421
diff
changeset
|
3117 option = purple_account_option_bool_new(_("Allow connecting from multiple locations"), |
05b3fa3725a1
Read the MPOP setting from the AB.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31421
diff
changeset
|
3118 "mpop", TRUE); |
05b3fa3725a1
Read the MPOP setting from the AB.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31421
diff
changeset
|
3119 prpl_info.protocol_options = g_list_append(prpl_info.protocol_options, |
05b3fa3725a1
Read the MPOP setting from the AB.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31421
diff
changeset
|
3120 option); |
05b3fa3725a1
Read the MPOP setting from the AB.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31421
diff
changeset
|
3121 |
15823 | 3122 purple_cmd_register("nudge", "", PURPLE_CMD_P_PRPL, |
3123 PURPLE_CMD_FLAG_IM | PURPLE_CMD_FLAG_PRPL_ONLY, | |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
3124 "prpl-msn", msn_cmd_nudge, |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
3125 _("nudge: nudge a user to get their attention"), NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
3126 |
15823 | 3127 purple_prefs_remove("/plugins/prpl/msn"); |
15624
71af5b6209d5
uri-handler support for AIM/ICQ, Yahoo and MSN
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15591
diff
changeset
|
3128 |
15823 | 3129 purple_signal_connect(purple_get_core(), "uri-handler", plugin, |
3130 PURPLE_CALLBACK(msn_uri_handler), NULL); | |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
3131 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
3132 |
15823 | 3133 PURPLE_INIT_PLUGIN(msn, init_plugin, info); |