aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs33
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Interface/IOSSL_Api.cs2
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Runtime/OSSL_Stub.cs5
-rw-r--r--bin/config-include/osslEnable.ini1
4 files changed, 41 insertions, 0 deletions
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs
index 0461e1a..1c404bb 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs
@@ -2318,6 +2318,39 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
2318 return retval; 2318 return retval;
2319 } 2319 }
2320 2320
2321 public string osGetAvatarHomeURI(string uuid)
2322 {
2323 CheckThreatLevel(ThreatLevel.Low, "osGetAvatarHomeURI");
2324 m_host.AddScriptLPS(1);
2325
2326 IUserManagement userManager = m_ScriptEngine.World.RequestModuleInterface<IUserManagement>();
2327 string returnValue = "";
2328
2329 if (userManager != null)
2330 {
2331 returnValue = userManager.GetUserServerURL(new UUID(uuid), "HomeURI");
2332 }
2333
2334 if (returnValue == "")
2335 {
2336 IConfigSource config = m_ScriptEngine.ConfigSource;
2337 returnValue = Util.GetConfigVarFromSections<string>(config, "HomeURI",
2338 new string[] { "Startup", "Hypergrid" }, String.Empty);
2339
2340 if (!string.IsNullOrEmpty(returnValue))
2341 return returnValue;
2342
2343 // Legacy. Remove soon!
2344 if (config.Configs["LoginService"] != null)
2345 returnValue = config.Configs["LoginService"].GetString("SRV_HomeURI", returnValue);
2346
2347 if (String.IsNullOrEmpty(returnValue))
2348 returnValue = GridUserInfo(InfoType.Home);
2349 }
2350
2351 return returnValue;
2352 }
2353
2321 public LSL_String osFormatString(string str, LSL_List strings) 2354 public LSL_String osFormatString(string str, LSL_List strings)
2322 { 2355 {
2323 CheckThreatLevel(ThreatLevel.VeryLow, "osFormatString"); 2356 CheckThreatLevel(ThreatLevel.VeryLow, "osFormatString");
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Interface/IOSSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Interface/IOSSL_Api.cs
index d072528..6259b76 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Interface/IOSSL_Api.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Interface/IOSSL_Api.cs
@@ -283,6 +283,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api.Interfaces
283 string osGetGridGatekeeperURI(); 283 string osGetGridGatekeeperURI();
284 string osGetGridCustom(string key); 284 string osGetGridCustom(string key);
285 285
286 string osGetAvatarHomeURI(string uuid);
287
286 LSL_String osFormatString(string str, LSL_List strings); 288 LSL_String osFormatString(string str, LSL_List strings);
287 LSL_List osMatchString(string src, string pattern, int start); 289 LSL_List osMatchString(string src, string pattern, int start);
288 LSL_String osReplaceString(string src, string pattern, string replace, int count, int start); 290 LSL_String osReplaceString(string src, string pattern, string replace, int count, int start);
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/OSSL_Stub.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/OSSL_Stub.cs
index c5c55d6..a60f381 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/OSSL_Stub.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/OSSL_Stub.cs
@@ -510,6 +510,11 @@ namespace OpenSim.Region.ScriptEngine.Shared.ScriptBase
510 return m_OSSL_Functions.osGetGridCustom(key); 510 return m_OSSL_Functions.osGetGridCustom(key);
511 } 511 }
512 512
513 public string osGetAvatarHomeURI(string uuid)
514 {
515 return m_OSSL_Functions.osGetAvatarHomeURI(uuid);
516 }
517
513 public LSL_String osFormatString(string str, LSL_List strings) 518 public LSL_String osFormatString(string str, LSL_List strings)
514 { 519 {
515 return m_OSSL_Functions.osFormatString(str, strings); 520 return m_OSSL_Functions.osFormatString(str, strings);
diff --git a/bin/config-include/osslEnable.ini b/bin/config-include/osslEnable.ini
index ebb7b84..0a03d4c 100644
--- a/bin/config-include/osslEnable.ini
+++ b/bin/config-include/osslEnable.ini
@@ -137,6 +137,7 @@
137 Allow_osLoadedCreationTime = ${XEngine|osslParcelOG}ESTATE_MANAGER,ESTATE_OWNER 137 Allow_osLoadedCreationTime = ${XEngine|osslParcelOG}ESTATE_MANAGER,ESTATE_OWNER
138 Allow_osMessageObject = ${XEngine|osslParcelOG}ESTATE_MANAGER,ESTATE_OWNER 138 Allow_osMessageObject = ${XEngine|osslParcelOG}ESTATE_MANAGER,ESTATE_OWNER
139 Allow_osRegexIsMatch = true 139 Allow_osRegexIsMatch = true
140 Allow_osGetAvatarHomeURI = ${XEngine|osslParcelOG}ESTATE_MANAGER,ESTATE_OWNER
140 141
141 ; ThreatLevel Moderate 142 ; ThreatLevel Moderate
142 Allow_osDropAttachment = ${XEngine|osslParcelO}ESTATE_MANAGER,ESTATE_OWNER 143 Allow_osDropAttachment = ${XEngine|osslParcelO}ESTATE_MANAGER,ESTATE_OWNER