summaryrefslogtreecommitdiff
path: root/indra/newview/llcallingcard.cpp
diff options
context:
space:
mode:
authorTofu Linden <tofu.linden@lindenlab.com>2010-02-17 13:50:26 +0000
committerTofu Linden <tofu.linden@lindenlab.com>2010-02-17 13:50:26 +0000
commit2398ac98d01d3809904759251e2c98cf2740e139 (patch)
tree644f663d08e39275f76e19a1cab4d34e3cdf75cf /indra/newview/llcallingcard.cpp
parente2d56363f105f8bef2b05a6bd4c5276db9a60d82 (diff)
parentc3bd736f6c2d51542fb2894542151282144e7388 (diff)
merge from viewer2.
Diffstat (limited to 'indra/newview/llcallingcard.cpp')
-rw-r--r--indra/newview/llcallingcard.cpp15
1 files changed, 11 insertions, 4 deletions
diff --git a/indra/newview/llcallingcard.cpp b/indra/newview/llcallingcard.cpp
index c3bda26aac..79a2631c31 100644
--- a/indra/newview/llcallingcard.cpp
+++ b/indra/newview/llcallingcard.cpp
@@ -682,17 +682,24 @@ void LLAvatarTracker::processNotify(LLMessageSystem* msg, bool online)
}
BOOL notify = FALSE;
LLSD args;
+ LLSD payload;
for(S32 i = 0; i < count; ++i)
{
msg->getUUIDFast(_PREHASH_AgentBlock, _PREHASH_AgentID, agent_id, i);
+ payload["FROM_ID"] = agent_id;
info = getBuddyInfo(agent_id);
if(info)
{
setBuddyOnline(agent_id,online);
if(chat_notify)
{
- notify = TRUE;
- args["NAME_SLURL"] = LLSLURL::buildCommand("agent", agent_id, "about");
+ std::string first, last;
+ if(gCacheName->getName(agent_id, first, last))
+ {
+ notify = TRUE;
+ args["FIRST"] = first;
+ args["LAST"] = last;
+ }
}
}
else
@@ -719,13 +726,13 @@ void LLAvatarTracker::processNotify(LLMessageSystem* msg, bool online)
notification =
LLNotificationsUtil::add("FriendOnline",
args,
- LLSD().with("respond_on_mousedown", TRUE),
+ payload.with("respond_on_mousedown", TRUE),
boost::bind(&LLAvatarActions::startIM, agent_id));
}
else
{
notification =
- LLNotificationsUtil::add("FriendOffline", args);
+ LLNotificationsUtil::add("FriendOffline", args, payload);
}
// If there's an open IM session with this agent, send a notification there too.