For default everyone permissions on library items, make notecards and scripts non-modifiable (but still copyable, etc).

Users should not be given the impression that they can modify these items.
This still does not solve the issue where library items cannot be dragged into prims or user inventory any time after they are initially seen.
Curiously, manually copying and pasting still appears to work.
On the surface, this seems to have something to do with library item caching on the client, since deleting the cache allows drag to work again once
Not sure what the exact problem is.
bulletsim
Justin Clark-Casey (justincc) 2011-07-23 02:18:23 +01:00
parent f0895028e9
commit be9b4ad23a
2 changed files with 6 additions and 9 deletions

View File

@ -207,14 +207,10 @@ namespace OpenSim.Region.CoreModules.Framework.Library
if (node is InventoryItemBase)
{
InventoryItemBase item = (InventoryItemBase)node;
// item.BasePermissions = (uint)PermissionMask.All;
item.BasePermissions = 0x7FFFFFFF;
item.EveryOnePermissions = 0x7FFFFFFF;
item.CurrentPermissions = 0x7FFFFFFF;
item.NextPermissions = 0x7FFFFFFF;
// item.EveryOnePermissions = (uint)PermissionMask.Copy;
// item.CurrentPermissions = (uint)PermissionMask.None;
// item.NextPermissions = (uint)PermissionMask.All;
item.BasePermissions = (uint)PermissionMask.All;
item.EveryOnePermissions = (uint)PermissionMask.All - (uint)PermissionMask.Modify;
item.CurrentPermissions = (uint)PermissionMask.All;
item.NextPermissions = (uint)PermissionMask.All;
}
}

View File

@ -195,7 +195,8 @@ namespace OpenSim.Services.InventoryService
item.AssetType = config.GetInt("assetType", item.InvType);
item.CurrentPermissions = (uint)config.GetLong("currentPermissions", (uint)PermissionMask.All);
item.NextPermissions = (uint)config.GetLong("nextPermissions", (uint)PermissionMask.All);
item.EveryOnePermissions = (uint)config.GetLong("everyonePermissions", (uint)PermissionMask.All);
item.EveryOnePermissions
= (uint)config.GetLong("everyonePermissions", (uint)PermissionMask.All - (uint)PermissionMask.Modify);
item.BasePermissions = (uint)config.GetLong("basePermissions", (uint)PermissionMask.All);
item.Flags = (uint)config.GetInt("flags", 0);