Commit 1a51b6b6 authored by Xavier Claessens's avatar Xavier Claessens

Add empathy_tp_group_get_invitation

svn path=/trunk/; revision=903
parent 419d09c6
......@@ -954,4 +954,38 @@ empathy_tp_group_is_ready (EmpathyTpGroup *group)
return priv->ready;
}
EmpathyPendingInfo *
empathy_tp_group_get_invitation (EmpathyTpGroup *group,
EmpathyContact **remote_contact)
{
EmpathyTpGroupPriv *priv = GET_PRIV (group);
EmpathyContact *contact = NULL;
EmpathyPendingInfo *invitation = NULL;
GList *l;
g_return_val_if_fail (EMPATHY_IS_TP_GROUP (group), FALSE);
g_return_val_if_fail (priv->ready, NULL);
for (l = priv->local_pendings; l; l = l->next) {
EmpathyPendingInfo *info = l->data;
if (empathy_contact_is_user (info->member)) {
invitation = info;
break;
}
}
if (invitation && priv->members && !priv->members->next) {
contact = priv->members->data;
}
if (!invitation && priv->remote_pendings && !priv->remote_pendings->next) {
contact = priv->remote_pendings->data;
}
if (remote_contact) {
*remote_contact = contact;
}
return invitation;
}
......@@ -81,6 +81,8 @@ EmpathyContact * empathy_tp_group_get_self_contact (EmpathyTpGroup *gr
gboolean empathy_tp_group_is_member (EmpathyTpGroup *group,
EmpathyContact *contact);
gboolean empathy_tp_group_is_ready (EmpathyTpGroup *group);
EmpathyPendingInfo *empathy_tp_group_get_invitation (EmpathyTpGroup *group,
EmpathyContact **remote_contact);
EmpathyPendingInfo *empathy_pending_info_new (EmpathyContact *member,
EmpathyContact *actor,
const gchar *message);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment