public LibraryAsset GetLibraryAsset(HttpPostedFileBase file, string userfileName = null, string userDesc = null, long? folderId = null)
        {
            var appFileSize = Constants.GetConfigValue<int>(Constants.ApplicationConstants.FILE_SIZE) * (1024 * 1024);
            var isFile = file != null;

            if (isFile)
            {
                if ((isFile && file.ContentLength > 0 && file.ContentLength <= appFileSize && file.FileName.IsNotEmpty()))
                {
                    var libraryAsset = new LibraryAsset();
                    string fileName = "";
                    int contentLength = 0;
                    string contentType = "";
                    byte[] array = null;
                    if (isFile)
                    {
                        if (userfileName == null)
                        {
                            fileName = Path.GetFileName(file.FileName);
                        }
                        else
                        {
                            var trimdUserFileName = userfileName.Replace(" ", string.Empty);
                            fileName = Path.GetFileName(trimdUserFileName);
                        }

                        contentLength = file.ContentLength;
                        contentType = file.ContentType;
                        array = file.ToByteArray();
                    }

                    libraryAsset.AssetThumbnail = ImageExtensions.ResizeImage(ImageExtensions.ByteArrayToImage(array), new Size(40, 40));
                    libraryAsset.AssetName = fileName;
                    libraryAsset.AssetSize = contentLength;
                    libraryAsset.AssetType = contentType;
                    libraryAsset.CreatedDate = DateTime.Now;
                    libraryAsset.AssetExtension = Path.GetExtension(file.FileName);
                    libraryAsset.AssetDescription = userDesc;
                    if (folderId.HasValue)
                        libraryAsset.LibraryFolderId = folderId.Value;
                    libraryAsset.AssetPath = ConfigurationManager.AppSettings["AppAssetPath"];
                    libraryAsset.Active = true;
                    libraryAsset.LibraryAssetFiles = new List<LibraryAssetFile>()
                            {
                                new LibraryAssetFile()
                                {
                                    Asset = array,
                                    CreatedDate = DateTime.Now
                                }
                            };

                    return libraryAsset;
                }
            }
            return null;
        }
 public LibraryAsset AddDocLibraryAsset(LibraryAsset libraryAsset)
 {
     using (var uow = new UnitOfWork())
     {
         if (libraryAsset.LibraryAssetFiles.IsCollectionValid())
         {
             uow.GetRepository<LibraryAsset>().Items
                 .SelectMany(x => x.LibraryAssetFiles)
                 .Each(s => uow.GetRepository<LibraryAssetFile>().Items.ToList().Add(s));
         }
         uow.GetRepository<LibraryAsset>().Insert(libraryAsset);
         uow.SaveChanges();
         return libraryAsset;
     }
 }
 public void DeleteLibraryAsset(LibraryAsset libAsset)
 {
     using (var uow = new UnitOfWork())
     {
         var libAssetFile = uow.GetRepository<LibraryAssetFile>().Items.FirstOrDefault(x => x.LibraryAssetId == libAsset.Id);
         uow.GetRepository<LibraryAssetFile>().Delete(libAssetFile);
         uow.GetRepository<LibraryAsset>().Delete(libAsset);
         uow.SaveChanges();
     }
 }
 public LibraryAsset AddDocLibraryAsset(LibraryAsset libraryAsset)
 {
     var libAsst = _organizationRepository.AddDocLibraryAsset(libraryAsset);
     return libAsst;
 }
 public void DeleteLibraryAsset(LibraryAsset libAsset)
 {
     _organizationRepository.DeleteLibraryAsset(libAsset);
 }
        private void DeleteLibraryAssetFromDisk(LibraryAsset libAssets)
        {

            var fileName = "{0}.{1}".ToFormat(libAssets.AssetName, libAssets.AssetExtension);
            FileServiceProvider.DeleteFile(libAssets.AssetPath, fileName);
        }
 public void DeleteLibraryAsset(LibraryAsset libAsset)
 {
     _organizationBl.DeleteLibraryAsset(libAsset);
 }