comparison src/protocols/oscar/oscar.c @ 10198:137a880153ba

[gaim-migrate @ 11315] Get oscar ready for available messages, and make invisible a unique status for now, so that it works consistently in the GUI. committer: Tailor Script <tailor@pidgin.im>
author Mark Doliner <mark@kingant.net>
date Wed, 17 Nov 2004 01:40:31 +0000
parents 7369bf2bf593
children 9e0b98c458b1
comparison
equal deleted inserted replaced
10197:7369bf2bf593 10198:137a880153ba
4246 * Wait a little while then call aim_locate_dorequest(sess). This keeps 4246 * Wait a little while then call aim_locate_dorequest(sess). This keeps
4247 * us from hitting the rate limit due to request away messages and info 4247 * us from hitting the rate limit due to request away messages and info
4248 * too quickly. 4248 * too quickly.
4249 */ 4249 */
4250 if (od->getinfotimer == 0) 4250 if (od->getinfotimer == 0)
4251 od->getinfotimer = gaim_timeout_add(1200, gaim_reqinfo_timeout_cb, sess); 4251 od->getinfotimer = gaim_timeout_add(1500, gaim_reqinfo_timeout_cb, sess);
4252 4252
4253 return 1; 4253 return 1;
4254 } 4254 }
4255 4255
4256 static int gaim_parse_motd(aim_session_t *sess, aim_frame_t *fr, ...) 4256 static int gaim_parse_motd(aim_session_t *sess, aim_frame_t *fr, ...)
5570 5570
5571 if (primitive == GAIM_STATUS_AVAILABLE) { 5571 if (primitive == GAIM_STATUS_AVAILABLE) {
5572 aim_setextstatus(od->sess, AIM_ICQ_STATE_NORMAL); 5572 aim_setextstatus(od->sess, AIM_ICQ_STATE_NORMAL);
5573 5573
5574 aim_locate_setprofile(od->sess, NULL, NULL, 0, NULL, "", 0); 5574 aim_locate_setprofile(od->sess, NULL, NULL, 0, NULL, "", 0);
5575 #if 0 5575
5576 /* Set an available message */ 5576 text_html = gaim_status_get_attr_string(status, "message");
5577 aim_srv_setavailmsg(od->sess, text); 5577 if (text_html != NULL) {
5578 #endif 5578 aim_srv_setavailmsg(od->sess, text_html);
5579 }
5579 5580
5580 } else if (primitive == GAIM_STATUS_AWAY) { 5581 } else if (primitive == GAIM_STATUS_AWAY) {
5581 aim_setextstatus(od->sess, AIM_ICQ_STATE_NORMAL); 5582 aim_setextstatus(od->sess, AIM_ICQ_STATE_NORMAL);
5582 5583
5583 text_html = gaim_status_get_attr_string(status, "message"); 5584 text_html = gaim_status_get_attr_string(status, "message");
6863 type = gaim_status_type_new_full(GAIM_STATUS_ONLINE, 6864 type = gaim_status_type_new_full(GAIM_STATUS_ONLINE,
6864 OSCAR_STATUS_ID_ONLINE, 6865 OSCAR_STATUS_ID_ONLINE,
6865 _("Online"), FALSE, FALSE, FALSE); 6866 _("Online"), FALSE, FALSE, FALSE);
6866 status_types = g_list_append(status_types, type); 6867 status_types = g_list_append(status_types, type);
6867 6868
6868 type = gaim_status_type_new_full(GAIM_STATUS_AVAILABLE, 6869 type = gaim_status_type_new_with_attrs(GAIM_STATUS_AVAILABLE,
6869 OSCAR_STATUS_ID_AVAILABLE, 6870 OSCAR_STATUS_ID_AVAILABLE,
6870 _("Available"), TRUE, TRUE, FALSE); 6871 _("Available"), TRUE, TRUE, FALSE,
6872 "message", _("Message"),
6873 gaim_value_new(GAIM_TYPE_STRING), NULL);
6871 status_types = g_list_append(status_types, type); 6874 status_types = g_list_append(status_types, type);
6872 6875
6873 type = gaim_status_type_new_with_attrs(GAIM_STATUS_AWAY, 6876 type = gaim_status_type_new_with_attrs(GAIM_STATUS_AWAY,
6874 OSCAR_STATUS_ID_AWAY, 6877 OSCAR_STATUS_ID_AWAY,
6875 _("Away"), TRUE, TRUE, FALSE, 6878 _("Away"), TRUE, TRUE, FALSE,
6877 gaim_value_new(GAIM_TYPE_STRING), NULL); 6880 gaim_value_new(GAIM_TYPE_STRING), NULL);
6878 status_types = g_list_append(status_types, type); 6881 status_types = g_list_append(status_types, type);
6879 6882
6880 type = gaim_status_type_new_full(GAIM_STATUS_HIDDEN, 6883 type = gaim_status_type_new_full(GAIM_STATUS_HIDDEN,
6881 OSCAR_STATUS_ID_INVISIBLE, 6884 OSCAR_STATUS_ID_INVISIBLE,
6882 _("Invisible"), TRUE, TRUE, TRUE); 6885 _("Invisible"), TRUE, TRUE, FALSE);
6883 status_types = g_list_append(status_types, type); 6886 status_types = g_list_append(status_types, type);
6884 6887
6885 if (aim_sn_is_icq(gaim_account_get_username(account)) == FALSE ) 6888 if (aim_sn_is_icq(gaim_account_get_username(account)) == FALSE )
6886 return status_types; 6889 return status_types;
6887 6890