private void GridViewVideo_RightTapped(object sender, Windows.UI.Xaml.Input.RightTappedRoutedEventArgs e)
        {
            GridView gridView = (GridView)sender;

            VideoMenuFlyout.ShowAt(gridView, e.GetPosition(gridView));
            _lastRightClickedVideo = (MediaFileViewModel)((FrameworkElement)e.OriginalSource).DataContext;
        }
Esempio n. 2
0
        private PagedListViewModel <MediaFileViewModel> GetPagedFilesBy(SiteDb siteDb, string by, int PageSize, int PageNumber)
        {
            string baseurl = siteDb.WebSite.BaseUrl();
            // by = View, Page, Layout, TextContent, Style.
            byte consttype = ConstObjectType.GetByte(by);

            var images = siteDb.Images.ListUsedBy(consttype);

            int totalskip = 0;

            if (PageNumber > 1)
            {
                totalskip = (PageNumber - 1) * PageSize;
            }

            PagedListViewModel <MediaFileViewModel> Result = new PagedListViewModel <MediaFileViewModel>();

            Result.TotalCount = images.Count();
            Result.TotalPages = ApiHelper.GetPageCount(Result.TotalCount, PageSize);
            Result.PageSize   = PageSize;
            Result.PageNr     = PageNumber;


            List <MediaFileViewModel> list = new List <MediaFileViewModel>();

            foreach (var item in images.Skip(totalskip).Take(PageSize))
            {
                MediaFileViewModel model = new MediaFileViewModel();
                model.Id           = item.Id;
                model.Height       = item.Height;
                model.Width        = item.Width;
                model.Size         = item.Size;
                model.Name         = item.Name;
                model.LastModified = item.LastModified;
                model.Thumbnail    = ThumbnailService.GenerateThumbnailUrl(item.Id, 90, 0, siteDb.Id);
                model.Url          = ObjectService.GetObjectRelativeUrl(siteDb, item);
                model.IsImage      = true;
                model.PreviewUrl   = Lib.Helper.UrlHelper.Combine(baseurl, model.Url);

                var usedby = siteDb.Images.GetUsedBy(item.Id);

                if (usedby != null)
                {
                    model.References = usedby.GroupBy(it => it.ConstType).ToDictionary(
                        key =>
                    {
                        return(ConstTypeService.GetModelType(key.Key).Name);
                    }, value => value.Count());
                }

                list.Add(model);
            }

            Result.List = list;
            return(Result);
        }
        /// <summary>
        /// Fills the media file view model with entity data.
        /// </summary>
        /// <param name="model">The model.</param>
        /// <param name="media">The media.</param>
        protected void FillMediaFileViewModel(MediaFileViewModel model, MediaFile media)
        {
            FillMediaViewModel(model, media);

            model.PublicUrl     = FileService.GetDownloadFileUrl(MediaType.File, media.Id, media.PublicUrl);
            model.FileExtension = media.OriginalFileExtension;
            model.Size          = media.Size;
            model.IsProcessing  = media.IsUploaded == null;
            model.IsFailed      = media.IsUploaded == false;
        }
Esempio n. 4
0
        private MediaFileViewModel Convert(MediaFile file)
        {
            MediaFileViewModel model;
            bool isProcessing = !file.IsUploaded.HasValue;
            bool isFailed     = file.IsUploaded.HasValue && !file.IsUploaded.Value;

            if (file.Type == MediaType.File)
            {
                model = new MediaFileViewModel();

                if (cmsConfiguration.Security.AccessControlEnabled)
                {
                    SetIsReadOnly(model, ((IAccessSecuredObject)file).AccessRules);
                }
            }
            else if (file.Type == MediaType.Audio)
            {
                model = new MediaAudioViewModel();
            }
            else if (file.Type == MediaType.Video)
            {
                model = new MediaVideoViewModel();
            }
            else if (file.Type == MediaType.Image)
            {
                var imageFile = (MediaImage)file;
                model = new MediaImageViewModel
                {
                    ThumbnailUrl = imageFile.PublicThumbnailUrl,
                    Tooltip      = imageFile.Title
                };
                isProcessing = isProcessing || !imageFile.IsOriginalUploaded.HasValue || !imageFile.IsThumbnailUploaded.HasValue;
                isFailed     = isFailed ||
                               (imageFile.IsOriginalUploaded.HasValue && !imageFile.IsOriginalUploaded.Value) ||
                               (imageFile.IsThumbnailUploaded.HasValue && !imageFile.IsThumbnailUploaded.Value);
            }
            else
            {
                throw new CmsException(string.Format("A file type {0} is not supported.", file.Type));
            }

            model.Id            = file.Id;
            model.Name          = file.Title;
            model.Type          = file.Type;
            model.Version       = file.Version;
            model.ContentType   = MediaContentType.File;
            model.PublicUrl     = fileService.GetDownloadFileUrl(file.Type, file.Id, file.PublicUrl);
            model.FileExtension = file.OriginalFileExtension;
            model.IsProcessing  = isProcessing;
            model.IsFailed      = isFailed;

            return(model);
        }
        /// <summary>
        /// Fills the media file view model with entity data.
        /// </summary>
        /// <param name="model">The model.</param>
        /// <param name="media">The media.</param>
        protected void FillMediaFileViewModel(MediaFileViewModel model, MediaFile media)
        {
            FillMediaViewModel(model, media);

            model.PublicUrl     = FileService.GetDownloadFileUrl(MediaType.File, media.Id, FileUrlResolver.EnsureFullPathUrl(media.PublicUrl));
            model.FileExtension = media.OriginalFileExtension;
            model.Size          = media.Size;
            model.IsProcessing  = media.IsUploaded == null;
            model.IsFailed      = media.IsUploaded == false;

            if (Configuration.Security.AccessControlEnabled && !(media is IAccessControlDisabled))
            {
                SetIsReadOnly(model, ((IAccessSecuredObject)media).AccessRules);
            }
        }
Esempio n. 6
0
        public IViewComponentResult Invoke()
        {
            var mediaLibary = mediaFileRepository.GetByName(MEDIA_LIBRARY_NAME);

            if (mediaLibary == null)
            {
                return(Content(string.Empty));
            }

            var mediaFiles   = mediaFileRepository.GetMediaFiles(MEDIA_LIBRARY_NAME);
            var mediaGallery = new MediaGalleryViewModel(mediaLibary.LibraryDisplayName);

            mediaGallery.MediaFiles = mediaFiles.Select(file => MediaFileViewModel.GetViewModel(file, fileUrlRetriever));

            return(View("~/Components/ViewComponents/MediaGallery/Default.cshtml", mediaGallery));
        }
Esempio n. 7
0
        public ActionResult Gallery()
        {
            var mediaLibary = mediaFileRepository.GetByName(MEDIA_LIBRARY_NAME);

            if (mediaLibary == null)
            {
                throw new HttpException(404, "Media library not found.");
            }

            var mediaFiles   = mediaFileRepository.GetMediaFiles(MEDIA_LIBRARY_NAME);
            var mediaGallery = new MediaGalleryViewModel(mediaLibary.LibraryDisplayName);

            mediaGallery.MediaFiles = mediaFiles.Select(file => MediaFileViewModel.GetViewModel(file, fileUrlRetriever));

            return(PartialView("_Gallery", mediaGallery));
        }
Esempio n. 8
0
        private MediaFileViewModel Convert(MediaFile file)
        {
            MediaFileViewModel model;
            bool isProcessing = !file.IsUploaded.HasValue;
            bool isFailed     = file.IsUploaded.HasValue && !file.IsUploaded.Value;

            if (file.Type == MediaType.File)
            {
                model = new MediaFileViewModel();
            }
            else if (file.Type == MediaType.Audio)
            {
                model = new MediaAudioViewModel();
            }
            else if (file.Type == MediaType.Video)
            {
                model = new MediaVideoViewModel();
            }
            else if (file.Type == MediaType.Image)
            {
                var imageFile = (MediaImage)file;
                model = new MediaImageViewModel {
                    ThumbnailUrl = imageFile.PublicThumbnailUrl,
                    Tooltip      = imageFile.Title
                };
                isProcessing = isProcessing || !imageFile.IsOriginalUploaded.HasValue || !imageFile.IsThumbnailUploaded.HasValue;
                isFailed     = isFailed ||
                               (imageFile.IsOriginalUploaded.HasValue && !imageFile.IsOriginalUploaded.Value) ||
                               (imageFile.IsThumbnailUploaded.HasValue && !imageFile.IsThumbnailUploaded.Value);
            }
            else
            {
                throw new CmsException(string.Format("A file type {0} is not supported.", file.Type));
            }

            model.Id            = file.Id;
            model.Name          = file.Title;
            model.Type          = file.Type;
            model.Version       = file.Version;
            model.ContentType   = MediaContentType.File;
            model.PublicUrl     = file.PublicUrl;
            model.FileExtension = file.OriginalFileExtension;
            model.IsProcessing  = isProcessing;
            model.IsFailed      = isFailed;

            return(model);
        }
Esempio n. 9
0
        public virtual ActionResult AttachAddMediaFile(
            string operationNumber,
            MediaFileViewModel manageMediaViewModel,
            HttpPostedFileBase fileMedia)
        {
            var response = new SaveMediaFileResponse();

            SetViewBagRoles(operationNumber);

            if (!ViewBag.WriteRole)
            {
                return(Json(new { ErrorMessage = Localization.GetText(NO_WRITE_PERMISSION) }));
            }

            response = _mediaGalleryManageService
                       .SaveMediaFile(operationNumber, manageMediaViewModel, fileMedia);

            return(Json(response));
        }
Esempio n. 10
0
 public ActionResult Delete(MediaFileViewModel model)
 {
     try
     {
         if (storageService.DeleteFile(model.ID))
         {
             return(RedirectToAction("FileBrowser"));
         }
         else
         {
             TempData["Message"] = "Nie można usunąć pliku, ponieważ jest on używany w harmonogramach";
             return(RedirectToAction("Delete", new { id = model.ID }));
         }
     }
     catch
     {
         return(View(model));
     }
 }
Esempio n. 11
0
        private List <MediaFileViewModel> GetFilesBy(SiteDb siteDb, string by)
        {
            string baseurl = siteDb.WebSite.BaseUrl();
            // by = View, Page, Layout, TextContent, Style.
            byte consttype = ConstObjectType.GetByte(by);

            var images = siteDb.Images.ListUsedBy(consttype);

            List <MediaFileViewModel> Result = new List <MediaFileViewModel>();

            foreach (var item in images)
            {
                MediaFileViewModel model = new MediaFileViewModel();
                model.Id           = item.Id;
                model.Height       = item.Height;
                model.Width        = item.Width;
                model.Size         = item.Size;
                model.Name         = item.Name;
                model.LastModified = item.LastModified;
                model.Thumbnail    = ThumbnailService.GenerateThumbnailUrl(item.Id, 90, 0, siteDb.Id);
                model.Url          = ObjectService.GetObjectRelativeUrl(siteDb, item);
                model.IsImage      = true;
                model.PreviewUrl   = Lib.Helper.UrlHelper.Combine(baseurl, model.Url);

                var usedby = siteDb.Images.GetUsedBy(item.Id);

                if (usedby != null)
                {
                    model.References = usedby.GroupBy(it => it.ConstType).ToDictionary(
                        key =>
                    {
                        return(ConstTypeService.GetModelType(key.Key).Name);
                    }, value => value.Count());
                }

                Result.Add(model);
            }
            return(Result);
        }
Esempio n. 12
0
 public PlayMediaCommand(MediaFileViewModel mediaFileViewModel)
 {
     MediaFileViewModel = mediaFileViewModel;
 }
Esempio n. 13
0
 public PauseMediaCommand(MediaFileViewModel mediaFileViewModel)
 {
     MediaFileViewModel = mediaFileViewModel;
 }
Esempio n. 14
0
 public SaveFileCommand(MediaFileViewModel mediaFileViewModel)
 {
     this.mediaFileViewModel = mediaFileViewModel;
 }