Merge branch 'master' into careminster

avinationmerge
Melanie 2010-01-28 14:38:46 +00:00
commit 5b9ca6e35f
2 changed files with 8 additions and 4 deletions

View File

@ -127,6 +127,7 @@ namespace OpenSim.Region.CoreModules.World.Permissions
private bool m_debugPermissions = false; private bool m_debugPermissions = false;
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_ParcelOwnerIsGod = false; private bool m_ParcelOwnerIsGod = false;
/// <value> /// <value>
@ -167,6 +168,7 @@ namespace OpenSim.Region.CoreModules.World.Permissions
m_bypassPermissions = !myConfig.GetBoolean("serverside_object_permissions", false); m_bypassPermissions = !myConfig.GetBoolean("serverside_object_permissions", false);
m_propagatePermissions = myConfig.GetBoolean("propagate_permissions", true); m_propagatePermissions = myConfig.GetBoolean("propagate_permissions", true);
m_RegionOwnerIsGod = myConfig.GetBoolean("region_owner_is_god", true); m_RegionOwnerIsGod = myConfig.GetBoolean("region_owner_is_god", true);
m_RegionManagerIsGod = myConfig.GetBoolean("region_manager_is_god", false);
m_ParcelOwnerIsGod = myConfig.GetBoolean("parcel_owner_is_god", true); m_ParcelOwnerIsGod = myConfig.GetBoolean("parcel_owner_is_god", true);
m_allowedScriptCreators m_allowedScriptCreators
@ -528,10 +530,13 @@ namespace OpenSim.Region.CoreModules.World.Permissions
if (m_scene.RegionInfo.EstateSettings.EstateOwner != UUID.Zero) if (m_scene.RegionInfo.EstateSettings.EstateOwner != UUID.Zero)
{ {
if (m_scene.RegionInfo.EstateSettings.EstateOwner == user) if (m_scene.RegionInfo.EstateSettings.EstateOwner == user && m_RegionOwnerIsGod)
return true; return true;
} }
if (IsEstateManager(user) && m_RegionManagerIsGod)
return true;
if (m_allowGridGods) if (m_allowGridGods)
{ {
CachedUserInfo profile = m_scene.CommsManager.UserProfileCacheService.GetUserDetails(user); CachedUserInfo profile = m_scene.CommsManager.UserProfileCacheService.GetUserDetails(user);
@ -544,6 +549,7 @@ namespace OpenSim.Region.CoreModules.World.Permissions
return false; return false;
} }
protected bool IsFriendWithPerms(UUID user,UUID objectOwner) protected bool IsFriendWithPerms(UUID user,UUID objectOwner)
{ {
@ -948,9 +954,6 @@ namespace OpenSim.Region.CoreModules.World.Permissions
DebugPermissionInformation(MethodInfo.GetCurrentMethod().Name); DebugPermissionInformation(MethodInfo.GetCurrentMethod().Name);
if (m_bypassPermissions) return m_bypassPermissionsValue; if (m_bypassPermissions) return m_bypassPermissionsValue;
if (IsEstateManager(user) && m_RegionOwnerIsGod)
return true;
return IsAdministrator(user); return IsAdministrator(user);
} }

View File

@ -207,6 +207,7 @@
; This allows somne control over permissions ; This allows somne control over permissions
; please note that this still doesn't duplicate SL, and is not intended to ; please note that this still doesn't duplicate SL, and is not intended to
;region_owner_is_god = true ;region_owner_is_god = true
;region_manager_is_god = false
;parcel_owner_is_god = true ;parcel_owner_is_god = true
; Control user types that are allowed to create new scripts ; Control user types that are allowed to create new scripts