Mercurial > pidgin.yaz
diff libpurple/protocols/jabber/jabber.c @ 17573:2f067d8fb19a
Fixed a few small mistakes I discovered while testing user mood in Adium.
author | Andreas Monitzer <pidgin@monitzer.com> |
---|---|
date | Tue, 12 Jun 2007 03:19:42 +0000 |
parents | 2e0799b916b9 |
children | 5fc8a8a25008 |
line wrap: on
line diff
--- a/libpurple/protocols/jabber/jabber.c Tue Jun 12 01:25:46 2007 +0000 +++ b/libpurple/protocols/jabber/jabber.c Tue Jun 12 03:19:42 2007 +0000 @@ -1192,6 +1192,9 @@ GList *l; if (full) { + PurpleStatus *status; + PurpleValue *value; + if(jb->subscription & JABBER_SUB_FROM) { if(jb->subscription & JABBER_SUB_TO) sub = _("Both"); @@ -1209,6 +1212,21 @@ } purple_notify_user_info_add_pair(user_info, _("Subscription"), sub); + + status = purple_presence_get_active_status(purple_buddy_get_presence(b)); + value = purple_status_get_attr_value(status, "mood"); + if(value && purple_value_get_type(value) == PURPLE_TYPE_STRING) { + const char *mood = purple_value_get_string(value); + + value = purple_status_get_attr_value(status, "moodtext"); + if(value && purple_value_get_type(value) == PURPLE_TYPE_STRING) { + char *moodplustext = g_strdup_printf("%s (%s)",mood,purple_value_get_string(value)); + + purple_notify_user_info_add_pair(user_info, _("Mood"), moodplustext); + g_free(moodplustext); + } else + purple_notify_user_info_add_pair(user_info, _("Mood"), mood); + } } for(l=jb->resources; l; l = l->next) {