Beispiel #1
0
        /// <summary>
        /// </summary>
        /// <param name="file"></param>
        public FileWrapper(File file)
            : base(file)
        {
            FolderId = file.FolderID;
            if (file.RootFolderType == FolderType.USER &&
                !Equals(file.RootFolderCreator, SecurityContext.CurrentAccount.ID))
            {
                RootFolderType = FolderType.SHARE;
                using (var folderDao = Global.DaoFactory.GetFolderDao())
                {
                    var parentFolder = folderDao.GetFolder(file.FolderID);
                    if (!Global.GetFilesSecurity().CanRead(parentFolder))
                    {
                        FolderId = Global.FolderShare;
                    }
                }
            }

            FileExst = FileUtility.GetFileExtension(file.Title);
            FileType = FileUtility.GetFileTypeByExtention(FileExst);

            Version           = file.Version;
            VersionGroup      = file.VersionGroup;
            ContentLength     = file.ContentLengthString;
            FileStatus        = file.FileStatus;
            PureContentLength = file.ContentLength;
            Comment           = file.Comment;
            Encrypted         = file.Encrypted;
            try
            {
                ViewUrl = CommonLinkUtility.GetFullAbsolutePath(file.DownloadUrl);

                WebUrl = CommonLinkUtility.GetFullAbsolutePath(FilesLinkUtility.GetFileWebPreviewUrl(file.Title, file.ID));

                if (file.ThumbnailStatus == Thumbnail.Created)
                {
                    ThumbnailUrl = CommonLinkUtility.GetFullAbsolutePath(FilesLinkUtility.GetFileThumbnailUrl(file.ID, file.Version));
                }
            }
            catch (Exception)
            {
                //Don't catch anything here because of httpcontext
            }
        }
Beispiel #2
0
        private FileWrapper <T> GetFileWrapper <T>(File <T> file)
        {
            var result = Get <FileWrapper <T>, T>(file);

            result.FileExst                = FileUtility.GetFileExtension(file.Title);
            result.FileType                = FileUtility.GetFileTypeByExtention(result.FileExst);
            result.Version                 = file.Version;
            result.VersionGroup            = file.VersionGroup;
            result.ContentLength           = file.ContentLengthString;
            result.FileStatus              = file.FileStatus;
            result.PureContentLength       = file.ContentLength.NullIfDefault();
            result.Comment                 = file.Comment;
            result.Encrypted               = file.Encrypted.NullIfDefault();
            result.Locked                  = file.Locked.NullIfDefault();
            result.LockedBy                = file.LockedBy;
            result.CanWebRestrictedEditing = FileUtility.CanWebRestrictedEditing(file.Title);
            result.CanFillForms            = FileSecurity.CanFillForms(file);

            try
            {
                result.ViewUrl = CommonLinkUtility.GetFullAbsolutePath(file.DownloadUrl);

                result.WebUrl = CommonLinkUtility.GetFullAbsolutePath(FilesLinkUtility.GetFileWebPreviewUrl(FileUtility, file.Title, file.ID, file.Version));

                result.ThumbnailStatus = file.ThumbnailStatus;

                if (file.ThumbnailStatus == Thumbnail.Created)
                {
                    result.ThumbnailUrl = CommonLinkUtility.GetFullAbsolutePath(FilesLinkUtility.GetFileThumbnailUrl(file.ID, file.Version));
                }
            }
            catch (Exception)
            {
                //Don't catch anything here because of httpcontext
            }

            return(result);
        }