aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework/Scenes/Scene.Permissions.cs
diff options
context:
space:
mode:
authorMelanie2010-12-13 20:28:14 +0000
committerMelanie2010-12-13 20:28:14 +0000
commitd6803e6448535aac738d7193760d9d28b7146bd5 (patch)
tree6c3c3e0f8c08bc8276ebe09c190e58ce94eeb97f /OpenSim/Region/Framework/Scenes/Scene.Permissions.cs
parentChanged logging level for message about failure to retrieve a map image from ... (diff)
downloadopensim-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/Scene.Permissions.cs')
-rw-r--r--OpenSim/Region/Framework/Scenes/Scene.Permissions.cs19
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}