Support for OpenSimExtras search-server-url

meow-7.2.2
Cinders 2013-08-12 13:05:48 -06:00
parent 92af2b0d10
commit f5a8bfe148
4 changed files with 29 additions and 8 deletions

View File

@ -2921,10 +2921,14 @@ void FSPanelSearchWeb::loadURL(const FSFloaterSearch::SearchQuery &p)
url = debug_url;
}
else if(LLGridManager::getInstance()->isInOpenSim())
{
url = LLLoginInstance::getInstance()->hasResponse("search")
? LLLoginInstance::getInstance()->getResponse("search").asString()
: gSavedSettings.getString("SearchURLOpenSim");
{
std::string os_search_url = gAgent.getRegion()->getSearchServerURL();
if (!os_search_url.empty())
url = os_search_url;
else if (LLLoginInstance::getInstance()->hasResponse("search"))
url = LLLoginInstance::getInstance()->getResponse("search").asString();
else
url = gSavedSettings.getString("SearchURLOpenSim");
}
else
#endif // OPENSIM

View File

@ -38,8 +38,9 @@
#include "llui.h"
#include "llviewercontrol.h"
#include "llweb.h"
#include "llviewernetwork.h"// </FS:AW opensim search support>
#include "llviewernetwork.h"// </FS:AW opensim search support>
#include "llviewerregion.h" // <FS:CR> Opensim search support
// support secondlife:///app/search/{CATEGORY}/{QUERY} SLapps
class LLSearchHandler : public LLCommandHandler
@ -223,9 +224,13 @@ void LLFloaterSearch::search(const SearchQuery &p)
}
else if(LLGridManager::getInstance()->isInOpenSim())
{
url = LLLoginInstance::getInstance()->hasResponse("search")
? LLLoginInstance::getInstance()->getResponse("search").asString()
: gSavedSettings.getString("SearchURLOpenSim");
std::string os_search_url = gAgent.getRegion()->getSearchServerURL();
if (!os_search_url.empty())
url = os_search_url;
else if (LLLoginInstance::getInstance()->hasResponse("search"))
url = LLLoginInstance::getInstance()->getResponse("search").asString();
else
url = gSavedSettings.getString("SearchURLOpenSim");
}
else // we are in SL or SL beta
#endif // OPENSIM // <FS:AW optional opensim support>

View File

@ -2094,5 +2094,16 @@ std::string LLViewerRegion::getHGMapServerURL() const
}
return url;
}
// OS Search URL
std::string LLViewerRegion::getSearchServerURL() const
{
std::string url = "";
if (mSimulatorFeatures.has("OpenSimExtras") && mSimulatorFeatures["OpenSimExtras"].has("search-server-url"))
{
url = mSimulatorFeatures["OpenSimExtras"]["search-server-url"].asString();
}
return url;
}
#endif // OPENSIM
// </FS:CR>

View File

@ -329,6 +329,7 @@ public:
EOSExportSupport regionSupportsExport() const; // ExportSupports
#ifdef OPENSIM
std::string getHGMapServerURL() const; // HG Maps
std::string getSearchServerURL() const; // OS Search URL
#endif // OPENSIM
// </FS:CR>