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
melanie
UbitUmarov 2017-01-06 14:48:49 +00:00
parent c707955517
commit 0b912b2acc
3 changed files with 2 additions and 21 deletions

View File

@ -99,7 +99,6 @@ namespace OpenSim.Region.CoreModules.World.Permissions
private bool m_allowGridGods = false; private bool m_allowGridGods = false;
private bool m_RegionOwnerIsGod = false; private bool m_RegionOwnerIsGod = false;
private bool m_RegionManagerIsGod = false; private bool m_RegionManagerIsGod = false;
private bool m_ParcelOwnerIsGod = false;
private bool m_SimpleBuildPermissions = false; private bool m_SimpleBuildPermissions = false;
@ -178,8 +177,6 @@ namespace OpenSim.Region.CoreModules.World.Permissions
new string[] { "Startup", "Permissions" }, true); new string[] { "Startup", "Permissions" }, true);
m_RegionManagerIsGod = Util.GetConfigVarFromSections<bool>(config, "region_manager_is_god", m_RegionManagerIsGod = Util.GetConfigVarFromSections<bool>(config, "region_manager_is_god",
new string[] { "Startup", "Permissions" }, false); new string[] { "Startup", "Permissions" }, false);
m_ParcelOwnerIsGod = Util.GetConfigVarFromSections<bool>(config, "parcel_owner_is_god",
new string[] { "Startup", "Permissions" }, false);
m_SimpleBuildPermissions = Util.GetConfigVarFromSections<bool>(config, "simple_build_permissions", m_SimpleBuildPermissions = Util.GetConfigVarFromSections<bool>(config, "simple_build_permissions",
new string[] { "Startup", "Permissions" }, false); new string[] { "Startup", "Permissions" }, false);
@ -718,6 +715,7 @@ namespace OpenSim.Region.CoreModules.World.Permissions
if (IsAdministrator(user)) if (IsAdministrator(user))
return PermissionClass.Owner; return PermissionClass.Owner;
/* to review later
// Users should be able to edit what is over their land. // Users should be able to edit what is over their land.
Vector3 taskPos = obj.AbsolutePosition; Vector3 taskPos = obj.AbsolutePosition;
ILandObject parcel = m_scene.LandChannel.GetLandObject(taskPos.X, taskPos.Y); ILandObject parcel = m_scene.LandChannel.GetLandObject(taskPos.X, taskPos.Y);
@ -727,7 +725,7 @@ namespace OpenSim.Region.CoreModules.World.Permissions
if (!IsAdministrator(objectOwner)) if (!IsAdministrator(objectOwner))
return PermissionClass.Owner; return PermissionClass.Owner;
} }
*/
// Group permissions // Group permissions
if ((obj.GroupID != UUID.Zero) && IsGroupMember(obj.GroupID, user, 0)) if ((obj.GroupID != UUID.Zero) && IsGroupMember(obj.GroupID, user, 0))
return PermissionClass.Group; return PermissionClass.Group;

View File

@ -53,7 +53,6 @@ namespace OpenSim.Region.Framework.Scenes
protected bool m_forceGridGodsOnly; protected bool m_forceGridGodsOnly;
protected bool m_regionOwnerIsGod; protected bool m_regionOwnerIsGod;
protected bool m_regionManagerIsGod; protected bool m_regionManagerIsGod;
protected bool m_parcelOwnerIsGod;
protected bool m_forceGodModeAlwaysOn; protected bool m_forceGodModeAlwaysOn;
protected bool m_allowGodActionsWithoutGodMode; protected bool m_allowGodActionsWithoutGodMode;
@ -94,10 +93,6 @@ namespace OpenSim.Region.Framework.Scenes
Util.GetConfigVarFromSections<bool>(config, Util.GetConfigVarFromSections<bool>(config,
"region_manager_is_god", sections, false); "region_manager_is_god", sections, false);
// Parcel owners are gods in their own parcels only.
m_parcelOwnerIsGod =
Util.GetConfigVarFromSections<bool>(config,
"parcel_owner_is_god", sections, false);
} }
else else
m_allowGridGods = true; // reduce user mistakes increased by this over complex options set m_allowGridGods = true; // reduce user mistakes increased by this over complex options set
@ -140,14 +135,6 @@ namespace OpenSim.Region.Framework.Scenes
if (m_regionManagerIsGod && m_scene.Permissions.IsEstateManager(m_scenePresence.UUID)) if (m_regionManagerIsGod && m_scene.Permissions.IsEstateManager(m_scenePresence.UUID))
return true; return true;
if (m_parcelOwnerIsGod) // Skip expensive check if we're already god!
{
Vector3 pos = m_scenePresence.AbsolutePosition;
ILandObject parcel = m_scene.LandChannel.GetLandObject(pos.X, pos.Y);
if (parcel != null && parcel.LandData.OwnerID == m_scenePresence.UUID)
return true;
}
return false; return false;
} }

View File

@ -472,10 +472,6 @@
; Allow region managers to assume god powers in regions they manage ; Allow region managers to assume god powers in regions they manage
;region_manager_is_god = false ;region_manager_is_god = false
; Allow parcel owners to assume god powers in their parcels
; you really do not want this...
;parcel_owner_is_god = false
; God mode should be turned on in the viewer whenever ; God mode should be turned on in the viewer whenever
; the user has god rights somewhere. They may choose ; the user has god rights somewhere. They may choose
; to turn it off again, though. ; to turn it off again, though.