Mercurial > pidgin
comparison src/server.c @ 8674:8c7da2e36136
[gaim-migrate @ 9426]
That was some nasty whitespace. More people need the big red blocks enabled
in their editor.
committer: Tailor Script <tailor@pidgin.im>
author | Christian Hammond <chipx86@chipx86.com> |
---|---|
date | Fri, 16 Apr 2004 23:32:46 +0000 |
parents | d4f6b9aa4cc8 |
children | ddd2bf87fe8d |
comparison
equal
deleted
inserted
replaced
8673:5891a1a6fc7e | 8674:8c7da2e36136 |
---|---|
166 update_keepalive(gc, TRUE); | 166 update_keepalive(gc, TRUE); |
167 } | 167 } |
168 | 168 |
169 /* This should return the elapsed time in seconds in which Gaim will not send | 169 /* This should return the elapsed time in seconds in which Gaim will not send |
170 * typing notifications. | 170 * typing notifications. |
171 * if it returns zero, it will not send any more typing notifications | 171 * if it returns zero, it will not send any more typing notifications |
172 * typing is a flag - TRUE for typing, FALSE for stopped typing */ | 172 * typing is a flag - TRUE for typing, FALSE for stopped typing */ |
173 int serv_send_typing(GaimConnection *g, const char *name, int typing) { | 173 int serv_send_typing(GaimConnection *g, const char *name, int typing) { |
174 GaimPluginProtocolInfo *prpl_info = NULL; | 174 GaimPluginProtocolInfo *prpl_info = NULL; |
175 | 175 |
176 if (g != NULL && g->prpl != NULL) | 176 if (g != NULL && g->prpl != NULL) |
594 } | 594 } |
595 | 595 |
596 } | 596 } |
597 | 597 |
598 if (prpl_info->rename_group) { | 598 if (prpl_info->rename_group) { |
599 /* prpl's might need to check if the group already | 599 /* prpl's might need to check if the group already |
600 * exists or not, and handle that differently */ | 600 * exists or not, and handle that differently */ |
601 prpl_info->rename_group(g, old_group->name, new_name, tobemoved); | 601 prpl_info->rename_group(g, old_group->name, new_name, tobemoved); |
602 } else { | 602 } else { |
603 serv_remove_buddies(g, tobemoved, old_group->name); | 603 serv_remove_buddies(g, tobemoved, old_group->name); |
604 serv_add_buddies(g, tobemoved); | 604 serv_add_buddies(g, tobemoved); |
790 } | 790 } |
791 | 791 |
792 void serv_set_buddyicon(GaimConnection *gc, const char *filename) | 792 void serv_set_buddyicon(GaimConnection *gc, const char *filename) |
793 { | 793 { |
794 GaimPluginProtocolInfo *prpl_info = NULL; | 794 GaimPluginProtocolInfo *prpl_info = NULL; |
795 | 795 |
796 if (gc->prpl != NULL) | 796 if (gc->prpl != NULL) |
797 prpl_info = GAIM_PLUGIN_PROTOCOL_INFO(gc->prpl); | 797 prpl_info = GAIM_PLUGIN_PROTOCOL_INFO(gc->prpl); |
798 | 798 |
799 if (prpl_info && prpl_info->set_buddy_icon) | 799 if (prpl_info && prpl_info->set_buddy_icon) |
800 prpl_info->set_buddy_icon(gc, filename); | 800 prpl_info->set_buddy_icon(gc, filename); |
801 | 801 |
802 } | 802 } |
803 | 803 |
804 int find_queue_row_by_name(char *name) | 804 int find_queue_row_by_name(char *name) |
805 { | 805 { |
806 gchar *temp; | 806 gchar *temp; |
807 gint i = 0; | 807 gint i = 0; |
812 while(valid) { | 812 while(valid) { |
813 gtk_tree_model_get(GTK_TREE_MODEL(awayqueuestore), &iter, 0, &temp, -1); | 813 gtk_tree_model_get(GTK_TREE_MODEL(awayqueuestore), &iter, 0, &temp, -1); |
814 if(!strcmp(name, temp)) | 814 if(!strcmp(name, temp)) |
815 return i; | 815 return i; |
816 g_free(temp); | 816 g_free(temp); |
817 | 817 |
818 i++; | 818 i++; |
819 valid = gtk_tree_model_iter_next(GTK_TREE_MODEL(awayqueuestore), &iter); | 819 valid = gtk_tree_model_iter_next(GTK_TREE_MODEL(awayqueuestore), &iter); |
820 } | 820 } |
821 | 821 |
822 return -1; | 822 return -1; |
931 * this to be queued properly, we have to make sure that the | 931 * this to be queued properly, we have to make sure that the |
932 * imaway dialog actually exists, first. | 932 * imaway dialog actually exists, first. |
933 */ | 933 */ |
934 if (!cnv && awayqueue && | 934 if (!cnv && awayqueue && |
935 gaim_prefs_get_bool("/gaim/gtk/away/queue_messages")) { | 935 gaim_prefs_get_bool("/gaim/gtk/away/queue_messages")) { |
936 /* | 936 /* |
937 * Alright, so we're going to queue it. Neat, eh? :) | 937 * Alright, so we're going to queue it. Neat, eh? :) |
938 * So first we create something to store the message, and add | 938 * So first we create something to store the message, and add |
939 * it to our queue. Then we update the away dialog to indicate | 939 * it to our queue. Then we update the away dialog to indicate |
940 * that we've queued something. | 940 * that we've queued something. |
941 */ | 941 */ |
1099 GaimAccount *account; | 1099 GaimAccount *account; |
1100 GaimConversation *c; | 1100 GaimConversation *c; |
1101 GaimBuddy *b; | 1101 GaimBuddy *b; |
1102 GSList *buddies; | 1102 GSList *buddies; |
1103 int old_idle; | 1103 int old_idle; |
1104 time_t current_time = time(NULL); | 1104 time_t current_time = time(NULL); |
1105 int signing_on = 0; | 1105 int signing_on = 0; |
1106 int signing_off = 0; | 1106 int signing_off = 0; |
1107 | 1107 |
1108 account = gaim_connection_get_account(gc); | 1108 account = gaim_connection_get_account(gc); |
1109 b = gaim_find_buddy(account, name); | 1109 b = gaim_find_buddy(account, name); |
1110 | 1110 |
1111 if (signon && (GAIM_PLUGIN_PROTOCOL_INFO(gc->prpl)->options & | 1111 if (signon && (GAIM_PLUGIN_PROTOCOL_INFO(gc->prpl)->options & |
1137 gaim_blist_save(); | 1137 gaim_blist_save(); |
1138 } | 1138 } |
1139 | 1139 |
1140 old_idle = b->idle; | 1140 old_idle = b->idle; |
1141 | 1141 |
1142 if (loggedin) { | 1142 if (loggedin) { |
1143 if (!GAIM_BUDDY_IS_ONLINE(b)) { | 1143 if (!GAIM_BUDDY_IS_ONLINE(b)) { |
1144 signing_on = TRUE; | 1144 signing_on = TRUE; |
1145 } | 1145 } |
1146 } else if (GAIM_BUDDY_IS_ONLINE(b)) { | 1146 } else if (GAIM_BUDDY_IS_ONLINE(b)) { |
1147 signing_off = TRUE; | 1147 signing_off = TRUE; |
1148 } | 1148 } |
1149 | 1149 |
1150 | 1150 |
1151 if (signing_on) { | 1151 if (signing_on) { |
1152 if (gaim_prefs_get_bool("/core/conversations/im/show_login")) { | 1152 if (gaim_prefs_get_bool("/core/conversations/im/show_login")) { |
1153 if (c != NULL) { | 1153 if (c != NULL) { |
1170 message_queue = g_slist_append(message_queue, qm); | 1170 message_queue = g_slist_append(message_queue, qm); |
1171 } | 1171 } |
1172 } | 1172 } |
1173 gaim_sound_play_event(GAIM_SOUND_BUDDY_ARRIVE); | 1173 gaim_sound_play_event(GAIM_SOUND_BUDDY_ARRIVE); |
1174 | 1174 |
1175 if(gaim_prefs_get_bool("/core/logging/log_system") && | 1175 if(gaim_prefs_get_bool("/core/logging/log_system") && |
1176 gaim_prefs_get_bool("/core/logging/log_signon_signoff")) { | 1176 gaim_prefs_get_bool("/core/logging/log_signon_signoff")) { |
1177 GaimAccount *account = gaim_connection_get_account(gc); | 1177 GaimAccount *account = gaim_connection_get_account(gc); |
1178 GaimLog *log = gaim_account_get_log(account); | 1178 GaimLog *log = gaim_account_get_log(account); |
1179 char *tmp = g_strdup_printf(_("%s signed on"), | 1179 char *tmp = g_strdup_printf(_("%s signed on"), |
1180 gaim_get_buddy_alias(b)); | 1180 gaim_get_buddy_alias(b)); |
1181 | 1181 |
1182 gaim_log_write(log, GAIM_MESSAGE_SYSTEM, gaim_get_buddy_alias(b), | 1182 gaim_log_write(log, GAIM_MESSAGE_SYSTEM, gaim_get_buddy_alias(b), |
1183 current_time, tmp); | 1183 current_time, tmp); |
1184 g_free(tmp); | 1184 g_free(tmp); |
1185 } | 1185 } |
1186 } | 1186 } |
1187 | 1187 |
1188 if(gaim_prefs_get_bool("/core/logging/log_system") && | 1188 if(gaim_prefs_get_bool("/core/logging/log_system") && |
1189 gaim_prefs_get_bool("/core/logging/log_away_state")) { | 1189 gaim_prefs_get_bool("/core/logging/log_away_state")) { |
1190 GaimAccount *account = gaim_connection_get_account(gc); | 1190 GaimAccount *account = gaim_connection_get_account(gc); |
1191 GaimLog *log = gaim_account_get_log(account); | 1191 GaimLog *log = gaim_account_get_log(account); |
1192 char *tmp = NULL; | 1192 char *tmp = NULL; |
1193 | 1193 |
1194 if((b->uc & UC_UNAVAILABLE) && !(type & UC_UNAVAILABLE)) | 1194 if((b->uc & UC_UNAVAILABLE) && !(type & UC_UNAVAILABLE)) |
1195 tmp = g_strdup_printf(_("%s came back"), gaim_get_buddy_alias(b)); | 1195 tmp = g_strdup_printf(_("%s came back"), gaim_get_buddy_alias(b)); |
1196 else if(!(b->uc & UC_UNAVAILABLE) && (type & UC_UNAVAILABLE)) | 1196 else if(!(b->uc & UC_UNAVAILABLE) && (type & UC_UNAVAILABLE)) |
1197 tmp = g_strdup_printf(_("%s went away"), gaim_get_buddy_alias(b)); | 1197 tmp = g_strdup_printf(_("%s went away"), gaim_get_buddy_alias(b)); |
1198 | 1198 |
1199 if(tmp){ | 1199 if(tmp){ |
1200 gaim_log_write(log, GAIM_MESSAGE_SYSTEM, gaim_get_buddy_alias(b), | 1200 gaim_log_write(log, GAIM_MESSAGE_SYSTEM, gaim_get_buddy_alias(b), |
1201 current_time, tmp); | 1201 current_time, tmp); |
1202 g_free(tmp); | 1202 g_free(tmp); |
1203 } | 1203 } |
1204 } | 1204 } |
1205 | 1205 |
1206 if (!old_idle && idle) { | 1206 if (!old_idle && idle) { |
1207 gaim_signal_emit(gaim_blist_get_handle(), "buddy-idle", b); | 1207 gaim_signal_emit(gaim_blist_get_handle(), "buddy-idle", b); |
1208 if(gaim_prefs_get_bool("/core/logging/log_system") && | 1208 if(gaim_prefs_get_bool("/core/logging/log_system") && |
1209 gaim_prefs_get_bool("/core/logging/log_idle_state")) { | 1209 gaim_prefs_get_bool("/core/logging/log_idle_state")) { |
1210 GaimAccount *account = gaim_connection_get_account(gc); | 1210 GaimAccount *account = gaim_connection_get_account(gc); |
1211 GaimLog *log = gaim_account_get_log(account); | 1211 GaimLog *log = gaim_account_get_log(account); |
1212 char *tmp = g_strdup_printf(_("%s became idle"), | 1212 char *tmp = g_strdup_printf(_("%s became idle"), |
1213 gaim_get_buddy_alias(b)); | 1213 gaim_get_buddy_alias(b)); |
1214 | 1214 |
1215 gaim_log_write(log, GAIM_MESSAGE_SYSTEM, gaim_get_buddy_alias(b), | 1215 gaim_log_write(log, GAIM_MESSAGE_SYSTEM, gaim_get_buddy_alias(b), |
1216 current_time, tmp); | 1216 current_time, tmp); |
1217 g_free(tmp); | 1217 g_free(tmp); |
1218 } | 1218 } |
1219 } else if (old_idle && !idle) { | 1219 } else if (old_idle && !idle) { |
1220 gaim_signal_emit(gaim_blist_get_handle(), "buddy-unidle", b); | 1220 gaim_signal_emit(gaim_blist_get_handle(), "buddy-unidle", b); |
1221 | 1221 |
1222 if(gaim_prefs_get_bool("/core/logging/log_system") && | 1222 if(gaim_prefs_get_bool("/core/logging/log_system") && |
1223 gaim_prefs_get_bool("/core/logging/log_idle_state")) { | 1223 gaim_prefs_get_bool("/core/logging/log_idle_state")) { |
1224 GaimAccount *account = gaim_connection_get_account(gc); | 1224 GaimAccount *account = gaim_connection_get_account(gc); |
1225 GaimLog *log = gaim_account_get_log(account); | 1225 GaimLog *log = gaim_account_get_log(account); |
1226 char *tmp = g_strdup_printf(_("%s became unidle"), | 1226 char *tmp = g_strdup_printf(_("%s became unidle"), |
1227 gaim_get_buddy_alias(b)); | 1227 gaim_get_buddy_alias(b)); |
1228 | 1228 |
1229 gaim_log_write(log, GAIM_MESSAGE_SYSTEM, gaim_get_buddy_alias(b), | 1229 gaim_log_write(log, GAIM_MESSAGE_SYSTEM, gaim_get_buddy_alias(b), |
1230 current_time, tmp); | 1230 current_time, tmp); |
1231 g_free(tmp); | 1231 g_free(tmp); |
1232 } | 1232 } |
1233 } | 1233 } |
1234 | 1234 |
1235 if (signing_off) { | 1235 if (signing_off) { |
1236 if (gaim_prefs_get_bool("/core/conversations/im/show_login")) { | 1236 if (gaim_prefs_get_bool("/core/conversations/im/show_login")) { |
1237 if (c != NULL) { | 1237 if (c != NULL) { |
1253 } | 1253 } |
1254 } | 1254 } |
1255 serv_got_typing_stopped(gc, name); /* obviously not typing */ | 1255 serv_got_typing_stopped(gc, name); /* obviously not typing */ |
1256 gaim_sound_play_event(GAIM_SOUND_BUDDY_LEAVE); | 1256 gaim_sound_play_event(GAIM_SOUND_BUDDY_LEAVE); |
1257 | 1257 |
1258 if(gaim_prefs_get_bool("/core/logging/log_system") && | 1258 if(gaim_prefs_get_bool("/core/logging/log_system") && |
1259 gaim_prefs_get_bool("/core/logging/log_signon_signoff")) { | 1259 gaim_prefs_get_bool("/core/logging/log_signon_signoff")) { |
1260 GaimAccount *account = gaim_connection_get_account(gc); | 1260 GaimAccount *account = gaim_connection_get_account(gc); |
1261 GaimLog *log = gaim_account_get_log(account); | 1261 GaimLog *log = gaim_account_get_log(account); |
1262 char *tmp = g_strdup_printf(_("%s signed off"), | 1262 char *tmp = g_strdup_printf(_("%s signed off"), |
1263 gaim_get_buddy_alias(b)); | 1263 gaim_get_buddy_alias(b)); |
1264 | 1264 |
1265 gaim_log_write(log, GAIM_MESSAGE_SYSTEM, gaim_get_buddy_alias(b), | 1265 gaim_log_write(log, GAIM_MESSAGE_SYSTEM, gaim_get_buddy_alias(b), |
1266 current_time, tmp); | 1266 current_time, tmp); |
1267 g_free(tmp); | 1267 g_free(tmp); |
1268 } | 1268 } |
1269 } | 1269 } |
1270 | 1270 |
1271 if (gc->login_time_official && gc->login_time) | 1271 if (gc->login_time_official && gc->login_time) |
1272 signon += gc->login_time_official - gc->login_time; | 1272 signon += gc->login_time_official - gc->login_time; |
1273 gaim_blist_update_buddy_signon(b, signon); | 1273 gaim_blist_update_buddy_signon(b, signon); |