aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region
diff options
context:
space:
mode:
authorUbitUmarov2017-01-06 14:48:49 +0000
committerUbitUmarov2017-01-06 15:00:55 +0000
commit0b912b2acc0eee5eef9214541d380a2862222f0e (patch)
tree92b74952f71a54b35cb5c9b117df320e34943cab /OpenSim/Region
parentrestore parcels avatars visibility god level change correct handling; try to... (diff)
downloadopensim-SC-0b912b2acc0eee5eef9214541d380a2862222f0e.zip
opensim-SC-0b912b2acc0eee5eef9214541d380a2862222f0e.tar.gz
opensim-SC-0b912b2acc0eee5eef9214541d380a2862222f0e.tar.bz2
opensim-SC-0b912b2acc0eee5eef9214541d380a2862222f0e.tar.xz
Remove parcel_owner_is_god option. It is conceptually wrong and with
limited use. Relevant parcel owners can just be made estate managers with better regions management logic
Diffstat (limited to '')
-rw-r--r--OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs6
-rw-r--r--OpenSim/Region/Framework/Scenes/GodController.cs13
2 files changed, 2 insertions, 17 deletions
diff --git a/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs b/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs
index 02d0e02..bdf314f 100644
--- a/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs
+++ b/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs
@@ -99,7 +99,6 @@ namespace OpenSim.Region.CoreModules.World.Permissions
99 private bool m_allowGridGods = false; 99 private bool m_allowGridGods = false;
100 private bool m_RegionOwnerIsGod = false; 100 private bool m_RegionOwnerIsGod = false;
101 private bool m_RegionManagerIsGod = false; 101 private bool m_RegionManagerIsGod = false;
102 private bool m_ParcelOwnerIsGod = false;
103 102
104 private bool m_SimpleBuildPermissions = false; 103 private bool m_SimpleBuildPermissions = false;
105 104
@@ -178,8 +177,6 @@ namespace OpenSim.Region.CoreModules.World.Permissions
178 new string[] { "Startup", "Permissions" }, true); 177 new string[] { "Startup", "Permissions" }, true);
179 m_RegionManagerIsGod = Util.GetConfigVarFromSections<bool>(config, "region_manager_is_god", 178 m_RegionManagerIsGod = Util.GetConfigVarFromSections<bool>(config, "region_manager_is_god",
180 new string[] { "Startup", "Permissions" }, false); 179 new string[] { "Startup", "Permissions" }, false);
181 m_ParcelOwnerIsGod = Util.GetConfigVarFromSections<bool>(config, "parcel_owner_is_god",
182 new string[] { "Startup", "Permissions" }, false);
183 180
184 m_SimpleBuildPermissions = Util.GetConfigVarFromSections<bool>(config, "simple_build_permissions", 181 m_SimpleBuildPermissions = Util.GetConfigVarFromSections<bool>(config, "simple_build_permissions",
185 new string[] { "Startup", "Permissions" }, false); 182 new string[] { "Startup", "Permissions" }, false);
@@ -718,6 +715,7 @@ namespace OpenSim.Region.CoreModules.World.Permissions
718 if (IsAdministrator(user)) 715 if (IsAdministrator(user))
719 return PermissionClass.Owner; 716 return PermissionClass.Owner;
720 717
718/* to review later
721 // Users should be able to edit what is over their land. 719 // Users should be able to edit what is over their land.
722 Vector3 taskPos = obj.AbsolutePosition; 720 Vector3 taskPos = obj.AbsolutePosition;
723 ILandObject parcel = m_scene.LandChannel.GetLandObject(taskPos.X, taskPos.Y); 721 ILandObject parcel = m_scene.LandChannel.GetLandObject(taskPos.X, taskPos.Y);
@@ -727,7 +725,7 @@ namespace OpenSim.Region.CoreModules.World.Permissions
727 if (!IsAdministrator(objectOwner)) 725 if (!IsAdministrator(objectOwner))
728 return PermissionClass.Owner; 726 return PermissionClass.Owner;
729 } 727 }
730 728*/
731 // Group permissions 729 // Group permissions
732 if ((obj.GroupID != UUID.Zero) && IsGroupMember(obj.GroupID, user, 0)) 730 if ((obj.GroupID != UUID.Zero) && IsGroupMember(obj.GroupID, user, 0))
733 return PermissionClass.Group; 731 return PermissionClass.Group;
diff --git a/OpenSim/Region/Framework/Scenes/GodController.cs b/OpenSim/Region/Framework/Scenes/GodController.cs
index f8b576c..36483fb 100644
--- a/OpenSim/Region/Framework/Scenes/GodController.cs
+++ b/OpenSim/Region/Framework/Scenes/GodController.cs
@@ -53,7 +53,6 @@ namespace OpenSim.Region.Framework.Scenes
53 protected bool m_forceGridGodsOnly; 53 protected bool m_forceGridGodsOnly;
54 protected bool m_regionOwnerIsGod; 54 protected bool m_regionOwnerIsGod;
55 protected bool m_regionManagerIsGod; 55 protected bool m_regionManagerIsGod;
56 protected bool m_parcelOwnerIsGod;
57 protected bool m_forceGodModeAlwaysOn; 56 protected bool m_forceGodModeAlwaysOn;
58 protected bool m_allowGodActionsWithoutGodMode; 57 protected bool m_allowGodActionsWithoutGodMode;
59 58
@@ -94,10 +93,6 @@ namespace OpenSim.Region.Framework.Scenes
94 Util.GetConfigVarFromSections<bool>(config, 93 Util.GetConfigVarFromSections<bool>(config,
95 "region_manager_is_god", sections, false); 94 "region_manager_is_god", sections, false);
96 95
97 // Parcel owners are gods in their own parcels only.
98 m_parcelOwnerIsGod =
99 Util.GetConfigVarFromSections<bool>(config,
100 "parcel_owner_is_god", sections, false);
101 } 96 }
102 else 97 else
103 m_allowGridGods = true; // reduce user mistakes increased by this over complex options set 98 m_allowGridGods = true; // reduce user mistakes increased by this over complex options set
@@ -140,14 +135,6 @@ namespace OpenSim.Region.Framework.Scenes
140 if (m_regionManagerIsGod && m_scene.Permissions.IsEstateManager(m_scenePresence.UUID)) 135 if (m_regionManagerIsGod && m_scene.Permissions.IsEstateManager(m_scenePresence.UUID))
141 return true; 136 return true;
142 137
143 if (m_parcelOwnerIsGod) // Skip expensive check if we're already god!
144 {
145 Vector3 pos = m_scenePresence.AbsolutePosition;
146 ILandObject parcel = m_scene.LandChannel.GetLandObject(pos.X, pos.Y);
147 if (parcel != null && parcel.LandData.OwnerID == m_scenePresence.UUID)
148 return true;
149 }
150
151 return false; 138 return false;
152 } 139 }
153 140