From bcb8a7d7f935c37d6d83aac6a9ba4988e59814c7 Mon Sep 17 00:00:00 2001
From: Diva Canto
Date: Sat, 13 Jun 2015 08:36:06 -0700
Subject: A few bug fixes for Agent Preferences to actually work. Also added
 missing config for standalone.

---
 OpenSim/Region/ClientStack/Linden/Caps/AgentPreferencesModule.cs | 2 +-
 OpenSim/Services/Interfaces/IAgentPreferencesService.cs          | 2 +-
 OpenSim/Services/UserAccountService/AgentPreferencesService.cs   | 4 +++-
 bin/config-include/Standalone.ini                                | 3 +++
 bin/config-include/StandaloneHypergrid.ini                       | 3 +++
 5 files changed, 11 insertions(+), 3 deletions(-)

diff --git a/OpenSim/Region/ClientStack/Linden/Caps/AgentPreferencesModule.cs b/OpenSim/Region/ClientStack/Linden/Caps/AgentPreferencesModule.cs
index 509004d..cdb233d 100644
--- a/OpenSim/Region/ClientStack/Linden/Caps/AgentPreferencesModule.cs
+++ b/OpenSim/Region/ClientStack/Linden/Caps/AgentPreferencesModule.cs
@@ -118,7 +118,7 @@ namespace OpenSim.Region.ClientStack.LindenCaps
 
         public string UpdateAgentPreferences(string request, string path, string param, UUID agent)
         {
-            m_log.DebugFormat("[AgentPrefs] UpdateAgentPreferences for {0}", agent.ToString());
+            m_log.DebugFormat("[AgentPrefs]: UpdateAgentPreferences for {0}", agent.ToString());
             OSDMap req = (OSDMap)OSDParser.DeserializeLLSDXml(request);
             AgentPrefs data = m_scenes[0].AgentPreferencesService.GetAgentPreferences(agent);
             if (data == null)
diff --git a/OpenSim/Services/Interfaces/IAgentPreferencesService.cs b/OpenSim/Services/Interfaces/IAgentPreferencesService.cs
index b74b580..3b4fda2 100644
--- a/OpenSim/Services/Interfaces/IAgentPreferencesService.cs
+++ b/OpenSim/Services/Interfaces/IAgentPreferencesService.cs
@@ -35,7 +35,7 @@ namespace OpenSim.Services.Interfaces
     {
         public AgentPrefs(UUID principalID) 
         {
-            principalID = PrincipalID;
+            PrincipalID = principalID;
         }
 
         public AgentPrefs(Dictionary<string, string> kvp)
diff --git a/OpenSim/Services/UserAccountService/AgentPreferencesService.cs b/OpenSim/Services/UserAccountService/AgentPreferencesService.cs
index f8d2e29..1808ee5 100644
--- a/OpenSim/Services/UserAccountService/AgentPreferencesService.cs
+++ b/OpenSim/Services/UserAccountService/AgentPreferencesService.cs
@@ -26,6 +26,7 @@
  */
 
 using System;
+using System.Collections.Generic;
 using System.Reflection;
 using log4net;
 using Nini.Config;
@@ -55,11 +56,12 @@ namespace OpenSim.Services.UserAccountService
         public bool StoreAgentPreferences(AgentPrefs data)
         {
             AgentPreferencesData d = new AgentPreferencesData();
+            d.Data = new Dictionary<string, string>();
             d.Data["PrincipalID"] = data.PrincipalID.ToString();
             d.Data["AccessPrefs"] = data.AccessPrefs;
             d.Data["HoverHeight"] = data.HoverHeight.ToString();
             d.Data["Language"] = data.Language;
-            d.Data["LanguageIsPublic"] = data.LanguageIsPublic.ToString();
+            d.Data["LanguageIsPublic"] = (data.LanguageIsPublic ? "1" : "0");
             d.Data["PermEveryone"] = data.PermEveryone.ToString();
             d.Data["PermGroup"] = data.PermGroup.ToString();
             d.Data["PermNextOwner"] = data.PermNextOwner.ToString();
diff --git a/bin/config-include/Standalone.ini b/bin/config-include/Standalone.ini
index 93a5437..1fbd171 100644
--- a/bin/config-include/Standalone.ini
+++ b/bin/config-include/Standalone.ini
@@ -97,6 +97,9 @@
 [Friends]
     Connector = "OpenSim.Services.FriendsService.dll"
 
+[AgentPreferencesService]
+    LocalServiceModule = "OpenSim.Services.UserAccountService.dll:AgentPreferencesService"
+
 [LoginService]
     LocalServiceModule    = "OpenSim.Services.LLLoginService.dll:LLLoginService"
     UserAccountService    = "OpenSim.Services.UserAccountService.dll:UserAccountService"
diff --git a/bin/config-include/StandaloneHypergrid.ini b/bin/config-include/StandaloneHypergrid.ini
index 43cb145..51f7fd0 100644
--- a/bin/config-include/StandaloneHypergrid.ini
+++ b/bin/config-include/StandaloneHypergrid.ini
@@ -124,6 +124,9 @@
 [Friends]
     Connector = "OpenSim.Services.FriendsService.dll"
 
+[AgentPreferencesService]
+    LocalServiceModule = "OpenSim.Services.UserAccountService.dll:AgentPreferencesService"
+
 [LoginService]
     LocalServiceModule    = "OpenSim.Services.LLLoginService.dll:LLLoginService"
     UserAccountService    = "OpenSim.Services.UserAccountService.dll:UserAccountService"
-- 
cgit v1.1