internal FileShare GetFileShare(FileEntry file, int projectId) { var fileSecurity = securityAdapterProvider.GetFileSecurity(projectId); var currentUserId = SecurityContext.CurrentAccount.ID; if (!fileSecurity.CanRead(file, currentUserId)) { return(FileShare.Restrict); } if (!fileSecurity.CanCreate(file, currentUserId) || !fileSecurity.CanEdit(file, currentUserId)) { return(FileShare.Read); } if (!fileSecurity.CanDelete(file, currentUserId)) { return(FileShare.ReadWrite); } return(FileShare.None); }
private IFileSecurity GetFileSecurity(int projectId) { return(securityAdapterProvider.GetFileSecurity(projectId)); }