コード例 #1
0
        public void Can_Get_ImageGallery_Images()
        {
            // Arrange
            List <MediaFile> mediaFiles = new List <MediaFile>(new[] { new MediaFile {
                                                                           FolderName = "folder", Name = "image"
                                                                       } });

            _mediaServiceMock.Setup(mediaService => mediaService.GetMediaFolders(It.IsAny <string>())).Returns(
                TestUtils.GetMediaFolders(5));
            _mediaServiceMock.Setup(mediaService => mediaService.GetMediaFiles(It.IsAny <string>())).Returns(mediaFiles);

            List <ImageGalleryImageSettingsRecord> imageSettingsRecords = new List <ImageGalleryImageSettingsRecord>();

            imageSettingsRecords.Add(new ImageGalleryImageSettingsRecord()
            {
                Name = "image"
            });

            _repositoryMock.Setup(o => o.Get(It.IsAny <Expression <Func <ImageGallerySettingsRecord, bool> > >()))
            .Returns(new ImageGallerySettingsRecord {
                ThumbnailHeight = 100, ThumbnailWidth = 200, ImageSettings = imageSettingsRecords, KeepAspectRatio = true
            });

            _thumbnailServiceMock.Setup(thumbnailService => thumbnailService.GetThumbnail("folder\\image", 200, 100, true, false)).Verifiable();

            // Act
            Models.ImageGallery imageGallery = _imageGalleryService.GetImageGallery("gallery");

            // Assert
            Assert.IsNotNull(imageGallery);
            Assert.AreEqual(1, imageGallery.Images.Count());
            _thumbnailServiceMock.Verify();
        }
コード例 #2
0
        public void Can_Get_ImageGallery()
        {
            // Arrange
            _mediaServiceMock.Setup(mediaService => mediaService.GetMediaFolders(It.IsAny <string>())).Returns(
                TestUtils.GetMediaFolders(5));

            // Act
            Models.ImageGallery imageGallery = _imageGalleryService.GetImageGallery("1");

            // Assert
            Assert.IsNotNull(imageGallery);
            Assert.IsNotNullOrEmpty(imageGallery.Name);
            Assert.AreEqual("1", imageGallery.Name);
        }
コード例 #3
0
        public void EditProperties_Post_Should_Save_And_Return_To_Images()
        {
            // Arrange
            _imageGalleryServiceMock.Setup(o => o.UpdateImageGalleryProperties("gallery", 80, 100, false, false)).Verifiable();
            var imageGallery = new Models.ImageGallery
            {
                Name = "gallery", ThumbnailHeight = 80, ThumbnailWidth = 100
            };
            ImageGalleryEditPropertiesViewModel viewModel = new ImageGalleryEditPropertiesViewModel
            {
                ImageGallery = imageGallery
            };

            // Act
            var result = _adminController.EditProperties(viewModel, "gallery");

            // Assert
            _imageGalleryServiceMock.Verify();
            result.AssertActionRedirect().ToAction("Images");
        }
コード例 #4
0
        public void ReorderImages(string imageGalleryName, IEnumerable <string> images)
        {
            Models.ImageGallery imageGallery = GetImageGallery(imageGalleryName);
            int position = 0;

            foreach (string image in images)
            {
                ImageGalleryImage imageGalleryImage = imageGallery.Images.Single(o => o.Name == image);
                imageGalleryImage.Position = position++;
                UpdateImageProperties(imageGalleryName, imageGalleryImage.Name, imageGalleryImage.Title, imageGalleryImage.Caption,
                                      imageGalleryImage.Position);
            }

            foreach (ImageGalleryImage imageGalleryImage in imageGallery.Images.Where(o => !images.Contains(o.Name)))
            {
                imageGalleryImage.Position = position++;
                UpdateImageProperties(imageGalleryName, imageGalleryImage.Name, imageGalleryImage.Title, imageGalleryImage.Caption,
                                      imageGalleryImage.Position);
            }
        }
コード例 #5
0
        public HttpResponseMessage GetImages(string galleryName, int page = 1)
        {
            HttpResponseMessage response = new HttpResponseMessage();

            try
            {
                PagerParameters pagerParameters = new PagerParameters();
                pagerParameters.PageSize = _siteService.GetSiteSettings().PageSize;
                pagerParameters.Page     = page;
                Pager pager = new Pager(_siteService.GetSiteSettings(), pagerParameters);

                Models.ImageGallery imageGallery = _imageGalleryService.GetImageGalleryPaged(galleryName, pagerParameters);

                if (imageGallery == null)
                {
                    return(null);
                }

                PluginFactory pluginFactory = PluginFactory.GetFactory(Plugin.PrettyPhoto);

                RegisterStaticContent(pluginFactory.PluginResourceDescriptor);

                ImageGalleryViewModel viewModel = new ImageGalleryViewModel {
                    ImageGalleryPlugin = pluginFactory.Plugin
                };
                viewModel.ImageGalleryName = imageGallery.Name;
                viewModel.Images           = imageGallery.Images;
                viewModel.Pager            = pager;
                viewModel.TotalItemsCount  = imageGallery.TotalItemsCount;

                response.Content = Serialize(viewModel, response);
            }
            catch (Exception ex)
            {
                response.StatusCode = System.Net.HttpStatusCode.BadRequest;
                Logger.Error(string.Format("Error occurs when GetImages : {0}", ex.StackTrace));
            }

            return(response);
        }
コード例 #6
0
        protected override DriverResult Display(ImageGalleryPart part, string displayType, dynamic shapeHelper)
        {
            if (string.Equals(displayType, "SummaryAdmin", StringComparison.OrdinalIgnoreCase) &&
                string.Equals(displayType, "Summary", StringComparison.OrdinalIgnoreCase))
            {
                // Image gallery returns nothing if in Summary Admin
                return(null);
            }

            if (!part.Record.DisplayImageGallery.GetValueOrDefault() || string.IsNullOrWhiteSpace(part.Record.ImageGalleryName))
            {
                return(null);
            }

            Models.ImageGallery imageGallery = _imageGalleryService.GetImageGallery(part.ImageGalleryName);

            if (imageGallery == null)
            {
                return(null);
            }

            PluginFactory pluginFactory = PluginFactory.GetFactory(part.SelectedPlugin);

            RegisterStaticContent(pluginFactory.PluginResourceDescriptor);

            ImageGalleryViewModel viewModel = new ImageGalleryViewModel {
                ImageGalleryPlugin = pluginFactory.Plugin
            };

            viewModel.ImageGalleryName = imageGallery.Name;
            viewModel.Images           = imageGallery.Images;

            return(ContentShape("Parts_ImageGallery",
                                () => shapeHelper.DisplayTemplate(
                                    TemplateName: pluginFactory.Plugin.ImageGalleryTemplateName,//"Parts/ImageGallery",
                                    Model: viewModel,
                                    Prefix: Prefix)));
        }
コード例 #7
0
        protected override DriverResult Display(ImageGalleryPart part, string displayType, dynamic shapeHelper) {
            PluginFactory pluginFactory = PluginFactory.GetFactory(part.SelectedPlugin);
            Models.ImageGallery imageGallery = _imageGalleryService.GetImageGallery(part.ImageGalleryName);

            if (displayType == "SummaryAdmin") {
                // Image gallery returns nothing if in Summary Admin
                return null;
            }

            if (!part.DisplayImageGallery || string.IsNullOrWhiteSpace(part.ImageGalleryName)){
                return null;
            }

            RegisterStaticContent(pluginFactory.PluginResourceDescriptor);

            ImageGalleryViewModel viewModel = new ImageGalleryViewModel {ImageGalleryPlugin = pluginFactory.Plugin};
            viewModel.Images = imageGallery.Images;           

            return ContentShape("Parts_ImageGallery",
                                () => shapeHelper.DisplayTemplate(
                                    TemplateName: pluginFactory.Plugin.ImageGalleryTemplateName,//"Parts/ImageGallery",
                                    Model: viewModel,
                                    Prefix: Prefix));
        }
コード例 #8
0
        protected override DriverResult Display(ImageGalleryPart part, string displayType, dynamic shapeHelper)
        {
            if (string.Equals(displayType, "SummaryAdmin", StringComparison.OrdinalIgnoreCase) &&
                string.Equals(displayType, "Summary", StringComparison.OrdinalIgnoreCase))
            {
                // Image gallery returns nothing if in Summary Admin
                return(null);
            }

            if (!part.Record.DisplayImageGallery.GetValueOrDefault() || string.IsNullOrWhiteSpace(part.Record.ImageGalleryName))
            {
                return(null);
            }

            //TODO get image gallery by paging
            int page = HttpContext.Current.Request.QueryString["page"] == null ? 1 : Convert.ToInt32(HttpContext.Current.Request.QueryString["page"]);

            PagerParameters pagerParameters = new PagerParameters();

            pagerParameters.PageSize = _siteService.GetSiteSettings().PageSize;
            pagerParameters.Page     = page;
            Pager pager = new Pager(_siteService.GetSiteSettings(), pagerParameters);

            Models.ImageGallery imageGallery = _imageGalleryService.GetImageGalleryPaged(part.ImageGalleryName, pagerParameters);

            if (imageGallery == null)
            {
                return(null);
            }

            PluginFactory pluginFactory = PluginFactory.GetFactory(part.SelectedPlugin);

            RegisterStaticContent(pluginFactory.PluginResourceDescriptor);

            ImageGalleryViewModel viewModel = new ImageGalleryViewModel {
                ImageGalleryPlugin = pluginFactory.Plugin
            };

            viewModel.ImageGalleryName = imageGallery.Name;
            viewModel.Images           = imageGallery.Images;
            viewModel.Pager            = pager;
            viewModel.TotalItemsCount  = imageGallery.TotalItemsCount;

            // Construct a Pager shape
            var pagerShape = Shape.Pager(pager).TotalItemCount(viewModel.TotalItemsCount);

            viewModel.PagerShape = pagerShape;

            return(ContentShape("Parts_ImageGallery",
                                () => shapeHelper.DisplayTemplate(
                                    TemplateName: pluginFactory.Plugin.ImageGalleryTemplateName,//"Parts/ImageGallery",
                                    Model: viewModel,
                                    Prefix: Prefix)));

            //return Combined(
            //    ContentShape("Parts_ImageGallery",
            //                    () => shapeHelper.DisplayTemplate(
            //                        TemplateName: pluginFactory.Plugin.ImageGalleryTemplateName,//"Parts/ImageGallery",
            //                        Model: viewModel,
            //                        Prefix: Prefix)),
            //    ContentShape("Pager",
            //        () => shapeHelper.Pager(Pager: pager))
            //    );
        }