# HG changeset patch # User mikael # Date 1113846611 0 # Node ID ac48ace7ee19ceacb47cbfbf8671d26f55e804be # Parent d39f15683c345c4a83a466d4ce6719dac53fc7e8 [/trunk] Changeset 104 by mikael * Add roster_getstatus() diff -r d39f15683c34 -r ac48ace7ee19 mcabber/src/roster.c --- a/mcabber/src/roster.c Mon Apr 18 17:14:12 2005 +0000 +++ b/mcabber/src/roster.c Mon Apr 18 17:50:11 2005 +0000 @@ -238,6 +238,19 @@ roster_usr->type = type; } +enum imstatus roster_getstatus(const char *jid) +{ + GSList *sl_user; + roster *roster_usr; + + sl_user = roster_find(jid, jidsearch, ROSTER_TYPE_USER|ROSTER_TYPE_AGENT); + if (sl_user == NULL) + return offline; // Not in the roster, anyway... + + roster_usr = (roster*)sl_user->data; + return roster_usr->status; +} + guint roster_gettype(const char *jid) { GSList *sl_user; diff -r d39f15683c34 -r ac48ace7ee19 mcabber/src/roster.h --- a/mcabber/src/roster.h Mon Apr 18 17:14:12 2005 +0000 +++ b/mcabber/src/roster.h Mon Apr 18 17:50:11 2005 +0000 @@ -41,6 +41,7 @@ void roster_setstatus(const char *jid, enum imstatus bstat); void roster_setflags(const char *jid, guint flags, guint value); void roster_settype(const char *jid, guint type); +enum imstatus roster_getstatus(const char *jid); guint roster_gettype(const char *jid); void buddylist_hide_offline_buddies(int hide);