* Permissions! - You can now only perform certain functions (such as editing other peoples objects) if you have permission to do so.

* Moved OnPermissionError to EventManager - now triggers a standard blue alert.
* Terraforming now requires permission via the permissions manager. [Defaults to admin-only]
* Permissions manager is now substantiated in Scene
* Buttload of new permissions added.
* Estate manager operations now require various levels of permission to operate
* OGS1 now produces 'summary reports' for a commsManager of each scene it maintains connections for. Reduces grid network traffic for ping checks.
* Added new "permissions true" / "permissions false" console command to enable or disable permissions.
This commit is contained in:
Adam Frisby
2007-08-15 14:10:26 +00:00
parent a4fc02d790
commit 5699bb2e64
7 changed files with 208 additions and 47 deletions

View File

@@ -110,6 +110,13 @@ namespace OpenSim.Region.Environment.Scenes
get { return m_scriptManager; }
}
private PermissionManager m_permissionManager;
public PermissionManager PermissionsMngr
{
get { return m_permissionManager; }
}
public Dictionary<LLUUID, SceneObjectGroup> Objects
{
get { return Prims; }
@@ -143,10 +150,13 @@ namespace OpenSim.Region.Environment.Scenes
m_estateManager = new EstateManager(this, m_regInfo);
m_scriptManager = new ScriptManager(this);
m_eventManager = new EventManager();
m_permissionManager = new PermissionManager(this);
m_eventManager.OnParcelPrimCountAdd +=
m_LandManager.addPrimToLandPrimCounts;
m_eventManager.OnPermissionError += SendPermissionAlert;
MainLog.Instance.Verbose("Creating new entitities instance");
Entities = new Dictionary<LLUUID, EntityBase>();
Avatars = new Dictionary<LLUUID, ScenePresence>();
@@ -966,6 +976,12 @@ namespace OpenSim.Region.Environment.Scenes
#endregion
#region Alert Methods
void SendPermissionAlert(LLUUID user, string reason)
{
SendAlertToUser(user, reason, false);
}
public void SendGeneralAlert(string message)
{
foreach (ScenePresence presence in this.Avatars.Values)