diff options
author | Yuri Chebotarev <ychebotarev@productengine.com> | 2009-12-01 15:55:24 +0200 |
---|---|---|
committer | Yuri Chebotarev <ychebotarev@productengine.com> | 2009-12-01 15:55:24 +0200 |
commit | b509e655bdb7d2ef8a6cc0d87f765626b6d5783f (patch) | |
tree | 9ff40cd154e1fea8cbc42d9ea0c2b1479f5bdc4c /indra | |
parent | 9e0e0e4d54c73288a159beae3a654771a75f3714 (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')
-rw-r--r-- | indra/newview/llgroupactions.cpp | 6 | ||||
-rw-r--r-- | indra/newview/llpanelavatar.cpp | 11 | ||||
-rw-r--r-- | indra/newview/llpanelavatar.h | 4 |
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; }; |