comparison src/protocols/oscar/oscar.c @ 7945:0a0be07f066a

[gaim-migrate @ 8619] Hopefully recognize the iChat AV capability. Also hopefully fix a problem faceprint was seeing where hiptop users wouldn't always have the hiptop icon. committer: Tailor Script <tailor@pidgin.im>
author Mark Doliner <mark@kingant.net>
date Sun, 28 Dec 2003 22:12:50 +0000
parents c5a4d1863425
children 7b8407d8c546
comparison
equal deleted inserted replaced
7944:a99f0aebc7ce 7945:0a0be07f066a
49 #define UC_ADMIN 0x04 49 #define UC_ADMIN 0x04
50 #define UC_UNCONFIRMED 0x08 50 #define UC_UNCONFIRMED 0x08
51 #define UC_NORMAL 0x10 51 #define UC_NORMAL 0x10
52 #define UC_AB 0x20 52 #define UC_AB 0x20
53 #define UC_WIRELESS 0x40 53 #define UC_WIRELESS 0x40
54 #define UC_HIPTOP 0x80
55 54
56 #define AIMHASHDATA "http://gaim.sourceforge.net/aim_data.php3" 55 #define AIMHASHDATA "http://gaim.sourceforge.net/aim_data.php3"
57 56
58 #define OSCAR_CONNECT_STEPS 6 57 #define OSCAR_CONNECT_STEPS 6
59 58
1756 1755
1757 if (info->present & AIM_USERINFO_PRESENT_CAPABILITIES) 1756 if (info->present & AIM_USERINFO_PRESENT_CAPABILITIES)
1758 caps = info->capabilities; 1757 caps = info->capabilities;
1759 if (info->flags & AIM_FLAG_ACTIVEBUDDY) 1758 if (info->flags & AIM_FLAG_ACTIVEBUDDY)
1760 type |= UC_AB; 1759 type |= UC_AB;
1761 if (caps & AIM_CAPS_HIPTOP)
1762 type |= UC_HIPTOP;
1763 1760
1764 if (info->present & AIM_USERINFO_PRESENT_FLAGS) { 1761 if (info->present & AIM_USERINFO_PRESENT_FLAGS) {
1765 if (info->flags & AIM_FLAG_UNCONFIRMED) 1762 if (info->flags & AIM_FLAG_UNCONFIRMED)
1766 type |= UC_UNCONFIRMED; 1763 type |= UC_UNCONFIRMED;
1767 if (info->flags & AIM_FLAG_ADMINISTRATOR) 1764 if (info->flags & AIM_FLAG_ADMINISTRATOR)
3135 tmp = _("Security Enabled"); 3132 tmp = _("Security Enabled");
3136 break; 3133 break;
3137 case AIM_CAPS_VIDEO: 3134 case AIM_CAPS_VIDEO:
3138 tmp = _("Video Chat"); 3135 tmp = _("Video Chat");
3139 break; 3136 break;
3137 case AIM_CAPS_ICHATAV:
3138 tmp = _("iChat AV");
3139 break;
3140 default: 3140 default:
3141 tmp = NULL; 3141 tmp = NULL;
3142 break; 3142 break;
3143 } 3143 }
3144 if (tmp) 3144 if (tmp)
5383 account = b->account; 5383 account = b->account;
5384 if (account != NULL) 5384 if (account != NULL)
5385 gc = account->gc; 5385 gc = account->gc;
5386 if (gc != NULL) 5386 if (gc != NULL)
5387 od = gc->proto_data; 5387 od = gc->proto_data;
5388 if (od != NULL)
5389 userinfo = aim_locate_finduserinfo(od->sess, b->name);
5388 5390
5389 if (!GAIM_BUDDY_IS_ONLINE(b)) { 5391 if (!GAIM_BUDDY_IS_ONLINE(b)) {
5390 char *gname; 5392 char *gname;
5391 if ((b->name) && (od) && (od->sess->ssi.received_data) && 5393 if ((b->name) && (od) && (od->sess->ssi.received_data) &&
5392 (gname = aim_ssi_itemlist_findparentname(od->sess->ssi.local, b->name)) && 5394 (gname = aim_ssi_itemlist_findparentname(od->sess->ssi.local, b->name)) &&
5421 emblems[i++] = "aol"; 5423 emblems[i++] = "aol";
5422 if (b->uc & UC_ADMIN) 5424 if (b->uc & UC_ADMIN)
5423 emblems[i++] = "admin"; 5425 emblems[i++] = "admin";
5424 if (b->uc & UC_AB && i < 4) 5426 if (b->uc & UC_AB && i < 4)
5425 emblems[i++] = "activebuddy"; 5427 emblems[i++] = "activebuddy";
5426 if (b->uc & UC_HIPTOP && i < 4)
5427 emblems[i++] = "hiptop";
5428 /* if (b->uc & UC_UNCONFIRMED && i < 4) 5428 /* if (b->uc & UC_UNCONFIRMED && i < 4)
5429 emblems[i++] = "unconfirmed"; */ 5429 emblems[i++] = "unconfirmed"; */
5430 5430
5431 if ((i < 4) && (od != NULL)) { 5431 if ((i < 4) && (userinfo != NULL) && (userinfo->capabilities & AIM_CAPS_HIPTOP))
5432 userinfo = aim_locate_finduserinfo(od->sess, b->name); 5432 emblems[i++] = "hiptop";
5433 if ((userinfo != NULL) && (userinfo->capabilities & AIM_CAPS_SECUREIM)) 5433
5434 if ((i < 4) && (userinfo != NULL) && (userinfo->capabilities & AIM_CAPS_SECUREIM))
5434 emblems[i++] = "secure"; 5435 emblems[i++] = "secure";
5435 }
5436 5436
5437 *se = emblems[0]; 5437 *se = emblems[0];
5438 *sw = emblems[1]; 5438 *sw = emblems[1];
5439 *nw = emblems[2]; 5439 *nw = emblems[2];
5440 *ne = emblems[3]; 5440 *ne = emblems[3];