diff options
author | Lynx Linden <lynx@lindenlab.com> | 2009-12-10 19:02:33 +0000 |
---|---|---|
committer | Lynx Linden <lynx@lindenlab.com> | 2009-12-10 19:02:33 +0000 |
commit | d06ef8878388b8b9956b385a74b7114a82de2355 (patch) | |
tree | 4aa30f1b69baf683830abd7191e35ff9305d0644 /indra/newview/llfloatersearch.cpp | |
parent | 1ab022df432b529fffb3a7f0772dff16a2c195ed (diff) |
DEV-43679: Display god level warning in Search window.
If you change your god level from when you performed a search, the
search results may be inappropriate for your god level (we pass the
current god status to the search web pages). When this is the case, we
now display a warning at the bottom of the search floater to let the
user know that they should redo their search.
Diffstat (limited to 'indra/newview/llfloatersearch.cpp')
-rw-r--r-- | indra/newview/llfloatersearch.cpp | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/indra/newview/llfloatersearch.cpp b/indra/newview/llfloatersearch.cpp index 2c618263ec..c658963708 100644 --- a/indra/newview/llfloatersearch.cpp +++ b/indra/newview/llfloatersearch.cpp @@ -42,7 +42,8 @@ LLFloaterSearch::LLFloaterSearch(const LLSD& key) : LLFloater(key), LLViewerMediaObserver(), - mBrowser(NULL) + mBrowser(NULL), + mSearchGodLevel(0) { // declare a map that transforms a category name into // the URL suffix that is used to search that category @@ -86,12 +87,21 @@ void LLFloaterSearch::handleMediaEvent(LLPluginClassMedia *self, EMediaEvent eve case MEDIA_EVENT_NAVIGATE_COMPLETE: childSetText("status_text", getString("done_text")); break; - + default: break; } } +void LLFloaterSearch::godLevelChanged(U8 godlevel) +{ + // search results can change based upon god level - if the user + // changes god level, then give them a warning (we don't refresh + // the search as this might undo any page navigation or + // AJAX-driven changes since the last search). + childSetVisible("refresh_search", (godlevel != mSearchGodLevel)); +} + void LLFloaterSearch::search(const LLSD &key) { if (! mBrowser) @@ -99,6 +109,10 @@ void LLFloaterSearch::search(const LLSD &key) return; } + // reset the god level warning as we're sending the latest state + childHide("refresh_search"); + mSearchGodLevel = gAgent.getGodLevel(); + // get the URL for the search page std::string url = getString("search_url"); if (! LLStringUtil::endsWith(url, "/")) |