diff options
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 | ||