diff options
author | Melanie | 2010-12-13 20:28:14 +0000 |
---|---|---|
committer | Melanie | 2010-12-13 20:28:14 +0000 |
commit | d6803e6448535aac738d7193760d9d28b7146bd5 (patch) | |
tree | 6c3c3e0f8c08bc8276ebe09c190e58ce94eeb97f /OpenSim/Region/Framework/Scenes | |
parent | Changed logging level for message about failure to retrieve a map image from ... (diff) | |
download | opensim-SC-d6803e6448535aac738d7193760d9d28b7146bd5.zip opensim-SC-d6803e6448535aac738d7193760d9d28b7146bd5.tar.gz opensim-SC-d6803e6448535aac738d7193760d9d28b7146bd5.tar.bz2 opensim-SC-d6803e6448535aac738d7193760d9d28b7146bd5.tar.xz |
Change some lookups in he Land Management module to make group permissions
work better. Add a generic group permissions hoot to the scene permissions
system.
Diffstat (limited to 'OpenSim/Region/Framework/Scenes')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/Scene.Permissions.cs | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/OpenSim/Region/Framework/Scenes/Scene.Permissions.cs b/OpenSim/Region/Framework/Scenes/Scene.Permissions.cs index d67638a..ab0eed8 100644 --- a/OpenSim/Region/Framework/Scenes/Scene.Permissions.cs +++ b/OpenSim/Region/Framework/Scenes/Scene.Permissions.cs | |||
@@ -68,6 +68,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
68 | public delegate bool IsGodHandler(UUID user, Scene requestFromScene); | 68 | public delegate bool IsGodHandler(UUID user, Scene requestFromScene); |
69 | public delegate bool IsAdministratorHandler(UUID user); | 69 | public delegate bool IsAdministratorHandler(UUID user); |
70 | public delegate bool EditParcelHandler(UUID user, ILandObject parcel, Scene scene); | 70 | public delegate bool EditParcelHandler(UUID user, ILandObject parcel, Scene scene); |
71 | public delegate bool EditParcelPropertiesHandler(UUID user, ILandObject parcel, GroupPowers p, Scene scene); | ||
71 | public delegate bool SellParcelHandler(UUID user, ILandObject parcel, Scene scene); | 72 | public delegate bool SellParcelHandler(UUID user, ILandObject parcel, Scene scene); |
72 | public delegate bool AbandonParcelHandler(UUID user, ILandObject parcel, Scene scene); | 73 | public delegate bool AbandonParcelHandler(UUID user, ILandObject parcel, Scene scene); |
73 | public delegate bool ReclaimParcelHandler(UUID user, ILandObject parcel, Scene scene); | 74 | public delegate bool ReclaimParcelHandler(UUID user, ILandObject parcel, Scene scene); |
@@ -131,6 +132,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
131 | public event IsGodHandler OnIsGod; | 132 | public event IsGodHandler OnIsGod; |
132 | public event IsAdministratorHandler OnIsAdministrator; | 133 | public event IsAdministratorHandler OnIsAdministrator; |
133 | public event EditParcelHandler OnEditParcel; | 134 | public event EditParcelHandler OnEditParcel; |
135 | public event EditParcelPropertiesHandler OnEditParcelProperties; | ||
134 | public event SellParcelHandler OnSellParcel; | 136 | public event SellParcelHandler OnSellParcel; |
135 | public event AbandonParcelHandler OnAbandonParcel; | 137 | public event AbandonParcelHandler OnAbandonParcel; |
136 | public event ReclaimParcelHandler OnReclaimParcel; | 138 | public event ReclaimParcelHandler OnReclaimParcel; |
@@ -734,6 +736,21 @@ namespace OpenSim.Region.Framework.Scenes | |||
734 | } | 736 | } |
735 | return true; | 737 | return true; |
736 | } | 738 | } |
739 | |||
740 | public bool CanEditParcelProperties(UUID user, ILandObject parcel, GroupPowers p) | ||
741 | { | ||
742 | EditParcelPropertiesHandler handler = OnEditParcelProperties; | ||
743 | if (handler != null) | ||
744 | { | ||
745 | Delegate[] list = handler.GetInvocationList(); | ||
746 | foreach (EditParcelPropertiesHandler h in list) | ||
747 | { | ||
748 | if (h(user, parcel, p, m_scene) == false) | ||
749 | return false; | ||
750 | } | ||
751 | } | ||
752 | return true; | ||
753 | } | ||
737 | #endregion | 754 | #endregion |
738 | 755 | ||
739 | #region SELL PARCEL | 756 | #region SELL PARCEL |
@@ -1043,4 +1060,4 @@ namespace OpenSim.Region.Framework.Scenes | |||
1043 | return true; | 1060 | return true; |
1044 | } | 1061 | } |
1045 | } | 1062 | } |
1046 | } \ No newline at end of file | 1063 | } |