| 1 /* |
1 /* |
| 2 * gaim - Gadu-Gadu Protocol Plugin |
2 * gaim - Gadu-Gadu Protocol Plugin |
| 3 * $Id: gg.c 5105 2003-03-15 03:23:30Z faceprint $ |
3 * $Id: gg.c 5113 2003-03-16 00:01:49Z faceprint $ |
| 4 * |
4 * |
| 5 * Copyright (C) 2001 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> |
5 * Copyright (C) 2001 Arkadiusz Mi¶kiewicz <misiek@pld.ORG.PL> |
| 6 * |
6 * |
| 7 * This program is free software; you can redistribute it and/or modify |
7 * This program is free software; you can redistribute it and/or modify |
| 8 * it under the terms of the GNU General Public License as published by |
8 * it under the terms of the GNU General Public License as published by |
| 114 return FALSE; |
114 return FALSE; |
| 115 } |
115 } |
| 116 |
116 |
| 117 static gint args_compare(gconstpointer a, gconstpointer b) |
117 static gint args_compare(gconstpointer a, gconstpointer b) |
| 118 { |
118 { |
| 119 gchar *arg_a = (gchar *)a; |
119 return g_ascii_strcasecmp((const gchar *)a,(const gchar *)b); |
| 120 gchar *arg_b = (gchar *)b; |
|
| 121 |
|
| 122 return g_strcasecmp(arg_a, arg_b); |
|
| 123 } |
120 } |
| 124 |
121 |
| 125 static gboolean allowed_uin(struct gaim_connection *gc, char *uin) |
122 static gboolean allowed_uin(struct gaim_connection *gc, char *uin) |
| 126 { |
123 { |
| 127 switch (gc->account->permdeny) { |
124 switch (gc->account->permdeny) { |
| 192 if (gc->away) { |
189 if (gc->away) { |
| 193 g_free(gc->away); |
190 g_free(gc->away); |
| 194 gc->away = NULL; |
191 gc->away = NULL; |
| 195 } |
192 } |
| 196 |
193 |
| 197 if (!g_strcasecmp(state, AGG_STATUS_AVAIL)) |
194 if (!gaim_utf8_strcasecmp(state, AGG_STATUS_AVAIL)) |
| 198 status = GG_STATUS_AVAIL; |
195 status = GG_STATUS_AVAIL; |
| 199 else if (!g_strcasecmp(state, AGG_STATUS_AVAIL_FRIENDS)) { |
196 else if (!gaim_utf8_strcasecmp(state, AGG_STATUS_AVAIL_FRIENDS)) { |
| 200 status = GG_STATUS_AVAIL | GG_STATUS_FRIENDS_MASK; |
197 status = GG_STATUS_AVAIL | GG_STATUS_FRIENDS_MASK; |
| 201 gc->away = g_strdup(""); |
198 gc->away = g_strdup(""); |
| 202 } else if (!g_strcasecmp(state, AGG_STATUS_BUSY)) { |
199 } else if (!gaim_utf8_strcasecmp(state, AGG_STATUS_BUSY)) { |
| 203 status = GG_STATUS_BUSY; |
200 status = GG_STATUS_BUSY; |
| 204 gc->away = g_strdup(""); |
201 gc->away = g_strdup(""); |
| 205 } else if (!g_strcasecmp(state, AGG_STATUS_BUSY_FRIENDS)) { |
202 } else if (!gaim_utf8_strcasecmp(state, AGG_STATUS_BUSY_FRIENDS)) { |
| 206 status = GG_STATUS_BUSY | GG_STATUS_FRIENDS_MASK; |
203 status = GG_STATUS_BUSY | GG_STATUS_FRIENDS_MASK; |
| 207 gc->away = g_strdup(""); |
204 gc->away = g_strdup(""); |
| 208 } else if (!g_strcasecmp(state, AGG_STATUS_INVISIBLE)) { |
205 } else if (!gaim_utf8_strcasecmp(state, AGG_STATUS_INVISIBLE)) { |
| 209 status = GG_STATUS_INVISIBLE; |
206 status = GG_STATUS_INVISIBLE; |
| 210 gc->away = g_strdup(""); |
207 gc->away = g_strdup(""); |
| 211 } else if (!g_strcasecmp(state, AGG_STATUS_INVISIBLE_FRIENDS)) { |
208 } else if (!gaim_utf8_strcasecmp(state, AGG_STATUS_INVISIBLE_FRIENDS)) { |
| 212 status = GG_STATUS_INVISIBLE | GG_STATUS_FRIENDS_MASK; |
209 status = GG_STATUS_INVISIBLE | GG_STATUS_FRIENDS_MASK; |
| 213 gc->away = g_strdup(""); |
210 gc->away = g_strdup(""); |
| 214 } else if (!g_strcasecmp(state, AGG_STATUS_NOT_AVAIL)) { |
211 } else if (!gaim_utf8_strcasecmp(state, AGG_STATUS_NOT_AVAIL)) { |
| 215 status = GG_STATUS_NOT_AVAIL; |
212 status = GG_STATUS_NOT_AVAIL; |
| 216 gc->away = g_strdup(""); |
213 gc->away = g_strdup(""); |
| 217 } else if (!g_strcasecmp(state, GAIM_AWAY_CUSTOM)) { |
214 } else if (!gaim_utf8_strcasecmp(state, GAIM_AWAY_CUSTOM)) { |
| 218 if (msg) { |
215 if (msg) { |
| 219 status = GG_STATUS_BUSY; |
216 status = GG_STATUS_BUSY; |
| 220 gc->away = g_strdup(""); |
217 gc->away = g_strdup(""); |
| 221 } else |
218 } else |
| 222 status = GG_STATUS_AVAIL; |
219 status = GG_STATUS_AVAIL; |