summaryrefslogtreecommitdiff
path: root/indra/newview
diff options
context:
space:
mode:
authorYuri Chebotarev <ychebotarev@productengine.com>2009-12-01 15:55:24 +0200
committerYuri Chebotarev <ychebotarev@productengine.com>2009-12-01 15:55:24 +0200
commitb509e655bdb7d2ef8a6cc0d87f765626b6d5783f (patch)
tree9ff40cd154e1fea8cbc42d9ea0c2b1479f5bdc4c /indra/newview
parent9e0e0e4d54c73288a159beae3a654771a75f3714 (diff)
fix for normal EXT-2820 [BSI] Functionality loss: Can't open groups from Resident's profile
--HG-- branch : product-engine
Diffstat (limited to 'indra/newview')
-rw-r--r--indra/newview/llgroupactions.cpp6
-rw-r--r--indra/newview/llpanelavatar.cpp11
-rw-r--r--indra/newview/llpanelavatar.h4
3 files changed, 10 insertions, 11 deletions
diff --git a/indra/newview/llgroupactions.cpp b/indra/newview/llgroupactions.cpp
index 6fe8ed0e4d..99b58f2170 100644
--- a/indra/newview/llgroupactions.cpp
+++ b/indra/newview/llgroupactions.cpp
@@ -100,9 +100,9 @@ public:
}
if (tokens[1].asString() == "inspect")
{
- LLSD key;
- key["group_id"] = group_id;
- LLFloaterReg::showInstance("inspect_group", key);
+ if (group_id.isNull())
+ return true;
+ LLGroupActions::show(group_id);
return true;
}
return false;
diff --git a/indra/newview/llpanelavatar.cpp b/indra/newview/llpanelavatar.cpp
index 97c1e96175..c2bf881a60 100644
--- a/indra/newview/llpanelavatar.cpp
+++ b/indra/newview/llpanelavatar.cpp
@@ -522,20 +522,19 @@ void LLPanelAvatarProfile::processGroupProperties(const LLAvatarGroups* avatar_g
for(; it_end != it; ++it)
{
LLAvatarGroups::LLGroupData group_data = *it;
-
- // Check if there is no duplicates for this group
- if (std::find(mGroups.begin(), mGroups.end(), group_data.group_name) == mGroups.end())
- mGroups.push_back(group_data.group_name);
+ mGroups[group_data.group_name] = group_data.group_id;
}
// Creating string, containing group list
std::string groups = "";
- for (group_list_t::const_iterator it = mGroups.begin(); it != mGroups.end(); ++it)
+ for (group_map_t::iterator it = mGroups.begin(); it != mGroups.end(); ++it)
{
if (it != mGroups.begin())
groups += ", ";
- groups += *it;
+
+ std::string group_url="[secondlife:///app/group/" + it->second.asString() + "/about " + it->first + "]";
+ groups += group_url;
}
childSetValue("sl_groups", groups);
diff --git a/indra/newview/llpanelavatar.h b/indra/newview/llpanelavatar.h
index f54aeee4eb..b19c5cca49 100644
--- a/indra/newview/llpanelavatar.h
+++ b/indra/newview/llpanelavatar.h
@@ -192,8 +192,8 @@ protected:
private:
- typedef std::list<std::string> group_list_t;
- group_list_t mGroups;
+ typedef std::map< std::string,LLUUID> group_map_t;
+ group_map_t mGroups;
LLToggleableMenu* mProfileMenu;
};