Ejemplo n.º 1
0
        public override void OnResponse(ItemQueryResponse response, PathIdentifier pathIdentifier)
        {
            var leoUploadPath = new PathIdentifier(pathIdentifier as FolderIdentifier, LEOUploadUtility.LEO_UPLOAD_PATH_KEY);

            if (pathIdentifier.IsChildOf(leoUploadPath) && response.AllowedOperations != null)
            {
                if (!LEOUploadUtility.IsUserLeo(connection.UserAccessIdentifiers))
                {
                    response.AllowedOperations = response.AllowedOperations.Where(a => !(a.BatchOperation is UploadRequest));
                }
            }
        }
Ejemplo n.º 2
0
        public override void OverrideAllowedOperations(FileModel fileModel, List <AllowedOperation> allowed, PathIdentifier virtualPathIdentifier)
        {
            var isUserLeo = LEOUploadUtility.IsUserLeo(connection.UserAccessIdentifiers);

            var leoUploadFolder = new PathIdentifier(fileModel.Identifier as FolderIdentifier, LEOUploadUtility.LEO_UPLOAD_PATH_KEY);

            if (virtualPathIdentifier.Equals(leoUploadFolder) || virtualPathIdentifier.IsChildOf(leoUploadFolder))
            {
                allowed.Clear();

                allowed.Add(AllowedOperation.GetAllowedOperationDownload(fileModel.Identifier, false));
                allowed.Add(AllowedOperation.GetAllowedOperationMove(fileModel.Identifier));

                if (isUserLeo)
                {
                    allowed.Add(AllowedOperation.GetAllowedOperationRename(fileModel.Identifier));
                }
            }
        }
Ejemplo n.º 3
0
        protected override List <AllowedOperation> GetPageAllowedOperations(PathIdentifier identifier)
        {
            if (IsLEOUser && identifier != null && identifier.IsChildOf(OfficerPathIdentifier))
            {
                var ops = new List <AllowedOperation>
                {
                    AllowedOperation.GetAllowedOperationMove(identifier),
                    AllowedOperation.GetAllowedOperationNewPath(identifier)
                };

                if (ManagerConfiguration.IsFeatureEnabledUpload &&
                    state.Folder.PrivilegeCheck("file:create", connection, throwOnFail: false))
                {
                    ops.Add(AllowedOperation.GetAllowedOperationUpload(identifier));
                }

                return(ops);
            }

            return(null);
        }
Ejemplo n.º 4
0
 private bool IsAllowed(PathIdentifier pathIdentifier, bool includeAncestors = true)
 {
     return((OfficerPathIdentifier.IsChildOf(pathIdentifier) && includeAncestors) ||
            pathIdentifier.Equals(OfficerPathIdentifier) ||
            pathIdentifier.IsChildOf(OfficerPathIdentifier));
 }