aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--OpenSim/Region/Environment/Interfaces/IDialogModule.cs15
-rw-r--r--OpenSim/Region/Environment/Modules/Avatar/Dialog/DialogModule.cs9
-rw-r--r--OpenSim/Region/Environment/Scenes/Scene.cs23
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs9
4 files changed, 29 insertions, 27 deletions
diff --git a/OpenSim/Region/Environment/Interfaces/IDialogModule.cs b/OpenSim/Region/Environment/Interfaces/IDialogModule.cs
index 45c62bd..755aa27 100644
--- a/OpenSim/Region/Environment/Interfaces/IDialogModule.cs
+++ b/OpenSim/Region/Environment/Interfaces/IDialogModule.cs
@@ -92,7 +92,20 @@ namespace OpenSim.Region.Environment.Interfaces
92 /// <param name="buttonlabels"></param> 92 /// <param name="buttonlabels"></param>
93 void SendDialogToUser( 93 void SendDialogToUser(
94 UUID avatarID, string objectName, UUID objectID, UUID ownerID, 94 UUID avatarID, string objectName, UUID objectID, UUID ownerID,
95 string message, UUID textureID, int ch, string[] buttonlabels); 95 string message, UUID textureID, int ch, string[] buttonlabels);
96
97 /// <summary>
98 /// Send a url to a particular user.
99 /// </summary>
100 /// <param name="avatarID"></param>
101 /// <param name="objectName"></param>
102 /// <param name="objectID"></param>
103 /// <param name="ownerID"></param>
104 /// <param name="groupOwned"></param>
105 /// <param name="message"></param>
106 /// <param name="url"></param>
107 void SendUrlToUser(
108 UUID avatarID, string objectName, UUID objectID, UUID ownerID, bool groupOwned, string message, string url);
96 109
97 /// <summary> 110 /// <summary>
98 /// Send a notification to all users in the scene. This notification should remain around until the 111 /// Send a notification to all users in the scene. This notification should remain around until the
diff --git a/OpenSim/Region/Environment/Modules/Avatar/Dialog/DialogModule.cs b/OpenSim/Region/Environment/Modules/Avatar/Dialog/DialogModule.cs
index 8fbe77f..4f8da9a 100644
--- a/OpenSim/Region/Environment/Modules/Avatar/Dialog/DialogModule.cs
+++ b/OpenSim/Region/Environment/Modules/Avatar/Dialog/DialogModule.cs
@@ -110,6 +110,15 @@ namespace OpenSim.Region.Environment.Modules.Avatar.Dialog
110 if (sp != null) 110 if (sp != null)
111 sp.ControllingClient.SendDialog(objectName, objectID, ownerID, message, textureID, ch, buttonlabels); 111 sp.ControllingClient.SendDialog(objectName, objectID, ownerID, message, textureID, ch, buttonlabels);
112 } 112 }
113
114 public void SendUrlToUser(
115 UUID avatarID, string objectName, UUID objectID, UUID ownerID, bool groupOwned, string message, string url)
116 {
117 ScenePresence sp = m_scene.GetScenePresence(avatarID);
118
119 if (sp != null)
120 sp.ControllingClient.SendLoadURL(objectName, objectID, ownerID, groupOwned, message, url);
121 }
113 122
114 public void SendNotificationToUsersInEstate( 123 public void SendNotificationToUsersInEstate(
115 UUID fromAvatarID, string fromAvatarName, string message) 124 UUID fromAvatarID, string fromAvatarName, string message)
diff --git a/OpenSim/Region/Environment/Scenes/Scene.cs b/OpenSim/Region/Environment/Scenes/Scene.cs
index 655f15d..3b4b719 100644
--- a/OpenSim/Region/Environment/Scenes/Scene.cs
+++ b/OpenSim/Region/Environment/Scenes/Scene.cs
@@ -3354,29 +3354,6 @@ namespace OpenSim.Region.Environment.Scenes
3354 m_timePhase = phase; 3354 m_timePhase = phase;
3355 } 3355 }
3356 3356
3357 /// <summary>
3358 ///
3359 /// </summary>
3360 /// <param name="avatarID"></param>
3361 /// <param name="objectName"></param>
3362 /// <param name="objectID"></param>
3363 /// <param name="ownerID"></param>
3364 /// <param name="groupOwned"></param>
3365 /// <param name="message"></param>
3366 /// <param name="url"></param>
3367 public void SendUrlToUser(UUID avatarID, string objectName, UUID objectID, UUID ownerID, bool groupOwned,
3368 string message, string url)
3369 {
3370 lock (m_scenePresences)
3371 {
3372 if (m_scenePresences.ContainsKey(avatarID))
3373 {
3374 m_scenePresences[avatarID].ControllingClient.SendLoadURL(objectName, objectID, ownerID, groupOwned,
3375 message, url);
3376 }
3377 }
3378 }
3379
3380 public virtual void StoreAddFriendship(UUID ownerID, UUID friendID, uint perms) 3357 public virtual void StoreAddFriendship(UUID ownerID, UUID friendID, uint perms)
3381 { 3358 {
3382 m_sceneGridService.AddNewUserFriend(ownerID, friendID, perms); 3359 m_sceneGridService.AddNewUserFriend(ownerID, friendID, perms);
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
index f2a8474..34a3a26 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
@@ -7799,9 +7799,12 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
7799 public void llLoadURL(string avatar_id, string message, string url) 7799 public void llLoadURL(string avatar_id, string message, string url)
7800 { 7800 {
7801 m_host.AddScriptLPS(1); 7801 m_host.AddScriptLPS(1);
7802 UUID avatarId = new UUID(avatar_id); 7802
7803 m_ScriptEngine.World.SendUrlToUser(avatarId, m_host.Name, m_host.UUID, m_host.ObjectOwner, false, message, 7803 IDialogModule dm = World.RequestModuleInterface<IDialogModule>();
7804 url); 7804 if (null != dm)
7805 dm.SendUrlToUser(
7806 new UUID(avatar_id), m_host.Name, m_host.UUID, m_host.ObjectOwner, false, message, url);
7807
7805 // ScriptSleep(10000); 7808 // ScriptSleep(10000);
7806 } 7809 }
7807 7810