From 1e899704c1c19a8c42ff313677a13f35b46605da Mon Sep 17 00:00:00 2001
From: dahlia
Date: Thu, 7 Jan 2010 11:28:38 -0800
Subject: Adds config option "ForwardOfflineGroupMessages" to allow disabling
 of group messages forwarded while offline. Addresses Mantis #4457

---
 .../CoreModules/Avatar/InstantMessage/OfflineMessageModule.cs      | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

(limited to 'OpenSim/Region')

diff --git a/OpenSim/Region/CoreModules/Avatar/InstantMessage/OfflineMessageModule.cs b/OpenSim/Region/CoreModules/Avatar/InstantMessage/OfflineMessageModule.cs
index 1614b70..450897c 100644
--- a/OpenSim/Region/CoreModules/Avatar/InstantMessage/OfflineMessageModule.cs
+++ b/OpenSim/Region/CoreModules/Avatar/InstantMessage/OfflineMessageModule.cs
@@ -47,6 +47,7 @@ namespace OpenSim.Region.CoreModules.Avatar.InstantMessage
         private bool enabled = true;
         private List<Scene> m_SceneList = new List<Scene>();
         private string m_RestURL = String.Empty;
+        private bool m_ForwardOfflineGroupMessages = true;
 
         public void Initialise(Scene scene, IConfigSource config)
         {
@@ -67,6 +68,9 @@ namespace OpenSim.Region.CoreModules.Avatar.InstantMessage
                 return;
             }
 
+            if (cnf != null)
+                m_ForwardOfflineGroupMessages = cnf.GetBoolean("ForwardOfflineGroupMessages", m_ForwardOfflineGroupMessages);
+
             lock (m_SceneList)
             {
                 if (m_SceneList.Count == 0)
@@ -182,7 +186,8 @@ namespace OpenSim.Region.CoreModules.Avatar.InstantMessage
 
         private void UndeliveredMessage(GridInstantMessage im)
         {
-            if (im.offline != 0)
+            if ((im.offline != 0)
+                && (!im.fromGroup || (im.fromGroup && m_ForwardOfflineGroupMessages)))
             {
                 bool success = SynchronousRestObjectPoster.BeginPostObject<GridInstantMessage, bool>(
                         "POST", m_RestURL+"/SaveMessage/", im);
-- 
cgit v1.1