Send the owner name, not the client name on SendDialog.

This modifies IClientAPI.SendDialog slightly.
Fixes Mantis #3661.
0.6.6-post-fixes
Homer Horwitz 2009-05-16 16:01:25 +00:00
parent 29301e66c0
commit 99cf8e3f5a
8 changed files with 28 additions and 14 deletions

View File

@ -1146,7 +1146,7 @@ namespace OpenSim.Client.MXP.ClientStack
SendChatMessage("Please visit: " + url, 0, Vector3.Zero, objectname, UUID.Zero, 0, 0); SendChatMessage("Please visit: " + url, 0, Vector3.Zero, objectname, UUID.Zero, 0, 0);
} }
public void SendDialog(string objectname, UUID objectID, UUID ownerID, string msg, UUID textureID, int ch, string[] buttonlabels) public void SendDialog(string objectname, UUID objectID, string ownerFirstName, string ownerLastName, string msg, UUID textureID, int ch, string[] buttonlabels)
{ {
// TODO: Probably can do this better // TODO: Probably can do this better
SendChatMessage("Dialog: " + msg, 0, Vector3.Zero, objectname, UUID.Zero, 0, 0); SendChatMessage("Dialog: " + msg, 0, Vector3.Zero, objectname, UUID.Zero, 0, 0);

View File

@ -694,7 +694,7 @@ namespace OpenSim.Client.VWoHTTP.ClientStack
throw new System.NotImplementedException(); throw new System.NotImplementedException();
} }
public void SendDialog(string objectname, UUID objectID, UUID ownerID, string msg, UUID textureID, int ch, string[] buttonlabels) public void SendDialog(string objectname, UUID objectID, string ownerFirstName, string ownerLastName, string msg, UUID textureID, int ch, string[] buttonlabels)
{ {
throw new System.NotImplementedException(); throw new System.NotImplementedException();
} }

View File

@ -957,7 +957,7 @@ namespace OpenSim.Framework
void SendAgentAlertMessage(string message, bool modal); void SendAgentAlertMessage(string message, bool modal);
void SendLoadURL(string objectname, UUID objectID, UUID ownerID, bool groupOwned, string message, string url); void SendLoadURL(string objectname, UUID objectID, UUID ownerID, bool groupOwned, string message, string url);
void SendDialog(string objectname, UUID objectID, UUID ownerID, string msg, UUID textureID, int ch, void SendDialog(string objectname, UUID objectID, string ownerFirstName, string ownerLastName, string msg, UUID textureID, int ch,
string[] buttonlabels); string[] buttonlabels);
bool AddMoney(int debit); bool AddMoney(int debit);

View File

@ -2474,13 +2474,14 @@ namespace OpenSim.Region.ClientStack.LindenUDP
OutPacket(loadURL, ThrottleOutPacketType.Task); OutPacket(loadURL, ThrottleOutPacketType.Task);
} }
public void SendDialog(string objectname, UUID objectID, UUID ownerID, string msg, UUID textureID, int ch, string[] buttonlabels) public void SendDialog(string objectname, UUID objectID, string ownerFirstName, string ownerLastName, string msg, UUID textureID, int ch, string[] buttonlabels)
{ {
ScriptDialogPacket dialog = (ScriptDialogPacket)PacketPool.Instance.GetPacket(PacketType.ScriptDialog); ScriptDialogPacket dialog = (ScriptDialogPacket)PacketPool.Instance.GetPacket(PacketType.ScriptDialog);
dialog.Data.ObjectID = objectID; dialog.Data.ObjectID = objectID;
dialog.Data.ObjectName = Utils.StringToBytes(objectname); dialog.Data.ObjectName = Utils.StringToBytes(objectname);
dialog.Data.FirstName = Utils.StringToBytes(FirstName); // this is the username of the *owner*
dialog.Data.LastName = Utils.StringToBytes(LastName); dialog.Data.FirstName = Utils.StringToBytes(ownerFirstName);
dialog.Data.LastName = Utils.StringToBytes(ownerLastName);
dialog.Data.Message = Utils.StringToBytes(msg); dialog.Data.Message = Utils.StringToBytes(msg);
dialog.Data.ImageID = textureID; dialog.Data.ImageID = textureID;
dialog.Data.ChatChannel = ch; dialog.Data.ChatChannel = ch;

View File

@ -31,6 +31,7 @@ using log4net;
using Nini.Config; using Nini.Config;
using OpenMetaverse; using OpenMetaverse;
using OpenSim.Framework; using OpenSim.Framework;
using OpenSim.Framework.Communications.Cache;
using OpenSim.Region.Framework.Interfaces; using OpenSim.Region.Framework.Interfaces;
using OpenSim.Region.Framework.Scenes; using OpenSim.Region.Framework.Scenes;
@ -106,16 +107,28 @@ namespace OpenSim.Region.CoreModules.Avatar.Dialog
presence.ControllingClient.SendAlertMessage(message); presence.ControllingClient.SendAlertMessage(message);
} }
} }
public void SendDialogToUser( public void SendDialogToUser(
UUID avatarID, string objectName, UUID objectID, UUID ownerID, UUID avatarID, string objectName, UUID objectID, UUID ownerID,
string message, UUID textureID, int ch, string[] buttonlabels) string message, UUID textureID, int ch, string[] buttonlabels)
{ {
CachedUserInfo info = m_scene.CommsManager.UserProfileCacheService.GetUserDetails(ownerID);
string ownerFirstName, ownerLastName;
if (info != null)
{
ownerFirstName = info.UserProfile.FirstName;
ownerLastName = info.UserProfile.SurName;
}
else
{
ownerFirstName = "(unknown";
ownerLastName = "user)";
}
ScenePresence sp = m_scene.GetScenePresence(avatarID); ScenePresence sp = m_scene.GetScenePresence(avatarID);
if (sp != null) if (sp != null)
sp.ControllingClient.SendDialog(objectName, objectID, ownerID, message, textureID, ch, buttonlabels); sp.ControllingClient.SendDialog(objectName, objectID, ownerFirstName, ownerLastName, message, textureID, ch, buttonlabels);
} }
public void SendUrlToUser( public void SendUrlToUser(
UUID avatarID, string objectName, UUID objectID, UUID ownerID, bool groupOwned, string message, string url) UUID avatarID, string objectName, UUID objectID, UUID ownerID, bool groupOwned, string message, string url)

View File

@ -515,7 +515,7 @@ namespace OpenSim.Region.Examples.SimpleModule
{ {
} }
public virtual void SendDialog(string objectname, UUID objectID, UUID ownerID, string msg, UUID textureID, int ch, string[] buttonlabels) public virtual void SendDialog(string objectname, UUID objectID, string ownerFirstName, string ownerLastName, string msg, UUID textureID, int ch, string[] buttonlabels)
{ {
} }

View File

@ -604,7 +604,7 @@ namespace OpenSim.Region.OptionalModules.World.NPC
{ {
} }
public virtual void SendDialog(string objectname, UUID objectID, UUID ownerID, string msg, UUID textureID, int ch, string[] buttonlabels) public virtual void SendDialog(string objectname, UUID objectID, string ownerFirstName, string ownerLastName, string msg, UUID textureID, int ch, string[] buttonlabels)
{ {
} }

View File

@ -602,7 +602,7 @@ namespace OpenSim.Tests.Common.Mock
{ {
} }
public virtual void SendDialog(string objectname, UUID objectID, UUID ownerID, string msg, UUID textureID, int ch, string[] buttonlabels) public virtual void SendDialog(string objectname, UUID objectID, string ownerFirstName, string ownerLastName, string msg, UUID textureID, int ch, string[] buttonlabels)
{ {
} }