From 0934e1cf71ee437829f47156af692bc59cf09947 Mon Sep 17 00:00:00 2001 From: UbitUmarov Date: Sat, 12 Dec 2015 10:03:07 +0000 Subject: add IsEstateManager check to Permissions --- OpenSim/Region/Framework/Scenes/Scene.Permissions.cs | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'OpenSim/Region/Framework/Scenes/Scene.Permissions.cs') diff --git a/OpenSim/Region/Framework/Scenes/Scene.Permissions.cs b/OpenSim/Region/Framework/Scenes/Scene.Permissions.cs index 4d90726..a901cfe 100644 --- a/OpenSim/Region/Framework/Scenes/Scene.Permissions.cs +++ b/OpenSim/Region/Framework/Scenes/Scene.Permissions.cs @@ -69,6 +69,7 @@ namespace OpenSim.Region.Framework.Scenes public delegate bool IsGodHandler(UUID user, Scene requestFromScene); public delegate bool IsGridGodHandler(UUID user, Scene requestFromScene); public delegate bool IsAdministratorHandler(UUID user); + public delegate bool IsEstateManagerHandler(UUID user); public delegate bool EditParcelHandler(UUID user, ILandObject parcel, Scene scene); public delegate bool EditParcelPropertiesHandler(UUID user, ILandObject parcel, GroupPowers p, Scene scene, bool allowManager); public delegate bool SellParcelHandler(UUID user, ILandObject parcel, Scene scene); @@ -137,6 +138,7 @@ namespace OpenSim.Region.Framework.Scenes public event IsGodHandler OnIsGod; public event IsGridGodHandler OnIsGridGod; public event IsAdministratorHandler OnIsAdministrator; + public event IsEstateManagerHandler OnIsEstateManager; // public event EditParcelHandler OnEditParcel; public event EditParcelPropertiesHandler OnEditParcelProperties; public event SellParcelHandler OnSellParcel; @@ -761,6 +763,21 @@ namespace OpenSim.Region.Framework.Scenes } #endregion + public bool IsEstateManager(UUID user) + { + IsEstateManagerHandler handler = OnIsEstateManager; + if (handler != null) + { + Delegate[] list = handler.GetInvocationList(); + foreach (IsEstateManagerHandler h in list) + { + if (h(user) == false) + return false; + } + } + return true; + } + #region EDIT PARCEL public bool CanEditParcelProperties(UUID user, ILandObject parcel, GroupPowers p, bool allowManager) -- cgit v1.1