internal List<int> GetPrincipals(IUser user, bool isCreator, bool isLastModifier)
{
var principals = new List<int>(new int[] { user.Id, RepositoryConfiguration.EveryoneGroupId });
if (membership.ContainsKey(user.Id))
principals.AddRange(membership[user.Id]);
if (isCreator)
principals.Add(RepositoryConfiguration.CreatorsGroupId);
if (isLastModifier)
principals.Add(RepositoryConfiguration.LastModifiersGroupId);
var extension = user.MembershipExtension;
if (extension != null)
principals.AddRange(extension.ExtensionIds);
return principals;
}
private PermissionValue[] GetPermissionValues(int allowBits, int denyBits)