diff --git a/indra/newview/llavataractions.cpp b/indra/newview/llavataractions.cpp index eacaea4bf1..b4b3a6e731 100644 --- a/indra/newview/llavataractions.cpp +++ b/indra/newview/llavataractions.cpp @@ -105,12 +105,14 @@ const U32 KICK_FLAGS_FREEZE = 1 << 0; const U32 KICK_FLAGS_UNFREEZE = 1 << 1; -std::string getProfileURL(const std::string& agent_name) +std::string getProfileURL(const std::string& agent_name, bool feed_only) { // OpenSim support - //std::string url = "[WEB_PROFILE_URL][AGENT_NAME]"; + //std::string url = "[WEB_PROFILE_URL][AGENT_NAME][FEED_ONLY]"; //LLSD subs; //subs["WEB_PROFILE_URL"] = LLGridManager::getInstance()->getWebProfileURL(); + //subs["AGENT_NAME"] = agent_name; + //subs["FEED_ONLY"] = feed_only ? "/?feed_only=true" : ""; std::string url; LLSD subs; @@ -132,7 +134,8 @@ std::string getProfileURL(const std::string& agent_name) else #endif { - url = "[WEB_PROFILE_URL][AGENT_NAME]"; + url = "[WEB_PROFILE_URL][AGENT_NAME][FEED_ONLY]"; + subs["FEED_ONLY"] = feed_only ? "/?feed_only=true" : ""; subs["WEB_PROFILE_URL"] = LLGridManager::getInstance()->getWebProfileURL(); } // diff --git a/indra/newview/llavataractions.h b/indra/newview/llavataractions.h index f7c3500eda..ada289b9ed 100644 --- a/indra/newview/llavataractions.h +++ b/indra/newview/llavataractions.h @@ -38,7 +38,7 @@ class LLInventoryPanel; class LLFloater; class LLView; -std::string getProfileURL(const std::string& agent_name); +std::string getProfileURL(const std::string& agent_name, bool feed_only = false); /** * Friend-related actions (add, remove, offer teleport, etc) diff --git a/indra/newview/llfloaterdisplayname.cpp b/indra/newview/llfloaterdisplayname.cpp index c85130afff..e6742727d6 100644 --- a/indra/newview/llfloaterdisplayname.cpp +++ b/indra/newview/llfloaterdisplayname.cpp @@ -160,7 +160,7 @@ void LLFloaterDisplayName::onCancel() void LLFloaterDisplayName::onReset() { - if (LLAvatarNameCache::getInstance()->hasNameLookupURL()) + if (LLAvatarNameCache::getInstance()->hasNameLookupURL()) { LLViewerDisplayName::set("",boost::bind(&LLFloaterDisplayName::onCacheSetName, this, _1, _2, _3)); } @@ -194,7 +194,7 @@ void LLFloaterDisplayName::onSave() return; } - if (LLAvatarNameCache::getInstance()->hasNameLookupURL()) + if (LLAvatarNameCache::getInstance()->hasNameLookupURL()) { LLViewerDisplayName::set(display_name_utf8,boost::bind(&LLFloaterDisplayName::onCacheSetName, this, _1, _2, _3)); } diff --git a/indra/newview/llpanelprofile.cpp b/indra/newview/llpanelprofile.cpp index 4738f9eed0..86c246be15 100644 --- a/indra/newview/llpanelprofile.cpp +++ b/indra/newview/llpanelprofile.cpp @@ -1041,16 +1041,13 @@ void LLPanelProfileWeb::apply(LLAvatarData* data) void LLPanelProfileWeb::updateData() { LLUUID avatar_id = getAvatarId(); - if (!getIsLoading() && avatar_id.notNull()) + if (!getIsLoading() && avatar_id.notNull() && !mURLWebProfile.empty()) { setIsLoading(); - if (!mURLWebProfile.empty()) - { - mWebBrowser->setVisible(TRUE); - mPerformanceTimer.start(); - mWebBrowser->navigateTo(mURLWebProfile, HTTP_CONTENT_TEXT_HTML); - } + mWebBrowser->setVisible(TRUE); + mPerformanceTimer.start(); + mWebBrowser->navigateTo(mURLWebProfile, HTTP_CONTENT_TEXT_HTML); } } @@ -1068,17 +1065,14 @@ void LLPanelProfileWeb::onAvatarNameCache(const LLUUID& agent_id, const LLAvatar LLStringUtil::replaceChar(username, ' ', '.'); } - mURLWebProfile = getProfileURL(username); + mURLWebProfile = getProfileURL(username, true); if (mURLWebProfile.empty()) { return; } //if the tab was opened before name was resolved, load the panel now - if (getIsLoading()) - { - updateData(); - } + updateData(); } void LLPanelProfileWeb::onCommitLoad(LLUICtrl* ctrl) diff --git a/indra/newview/skins/default/xui/en/floater_profile.xml b/indra/newview/skins/default/xui/en/floater_profile.xml index 966c125a5b..3ddbd422ba 100644 --- a/indra/newview/skins/default/xui/en/floater_profile.xml +++ b/indra/newview/skins/default/xui/en/floater_profile.xml @@ -106,6 +106,7 @@