From af96b99356414eca2e65f4976e9c6ea5ab36f87a Mon Sep 17 00:00:00 2001 From: Diva Canto Date: Tue, 27 Mar 2012 20:36:54 -0700 Subject: More on switching the root folder from under the viewer. More experiments. --- OpenSim/Region/Framework/Scenes/ScenePresence.cs | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'OpenSim/Region/Framework/Scenes/ScenePresence.cs') diff --git a/OpenSim/Region/Framework/Scenes/ScenePresence.cs b/OpenSim/Region/Framework/Scenes/ScenePresence.cs index cf60c69..547f66f 100644 --- a/OpenSim/Region/Framework/Scenes/ScenePresence.cs +++ b/OpenSim/Region/Framework/Scenes/ScenePresence.cs @@ -32,6 +32,7 @@ using System.Reflection; using System.Timers; using OpenMetaverse; using log4net; +using Nini.Config; using OpenSim.Framework; using OpenSim.Framework.Client; using OpenSim.Region.Framework.Interfaces; @@ -1162,6 +1163,23 @@ namespace OpenSim.Region.Framework.Scenes friendsModule.SendFriendsOnlineIfNeeded(ControllingClient); } + // HACK HACK -- just seeing how the viewer responds + // Let's send the Suitcase or the real root folder folder for incoming HG agents + // Visiting agents get their suitcase contents; incoming local users get their real root folder's content + AgentCircuitData aCircuit = m_scene.AuthenticateHandler.GetAgentCircuitData(UUID); + if ((aCircuit.teleportFlags & (uint)Constants.TeleportFlags.ViaHGLogin) != 0) + { + // HACK FOR NOW. JUST TESTING, SO KEEPING EVERYONE ELSE OUT OF THESE TESTS + IConfig config = m_scene.Config.Configs["HGEntityTransferModule"]; + if (config != null && config.GetBoolean("RestrictInventoryAccessAbroad", false)) + { + m_log.DebugFormat("[SCENE]: Sending root folder to viewer..."); + InventoryFolderBase root = m_scene.InventoryService.GetRootFolder(client.AgentId); + //InventoryCollection rootContents = InventoryService.GetFolderContent(client.AgentId, root.ID); + client.SendBulkUpdateInventory(root); + } + } + // m_log.DebugFormat( // "[SCENE PRESENCE]: Completing movement of {0} into region {1} took {2}ms", // client.Name, Scene.RegionInfo.RegionName, (DateTime.Now - startTime).Milliseconds); -- cgit v1.1