public IHttpActionResult GetGallery()
        {
            GalleryListModel    viewmodel = new GalleryListModel();
            EventDataController dataCtrl  = new EventDataController();

            var ev = dataCtrl.GetItems().OrderByDescending(x => x.Start);


            foreach (var _event in ev)
            {
                Int32 count;
                try
                {
                    count = GalleryDataController.Count(_event.ID);
                }
                catch (DirectoryNotFoundException)
                {
                    continue;
                }

                var eid   = _event.ID;
                var thumb = GalleryDataController.GetGalleryThumbnail(_event.ID)?.ImageUrl;
                if (thumb == null || count == 0)
                {
                    continue;
                }

                viewmodel.Data.Add(new GalleryViewModelListItem().FromModel(_event, count, thumb));
            }

            return(Ok(viewmodel));
        }
        public IHttpActionResult GetImages(int id)
        {
            GalleryViewModel    viewmodel = new GalleryViewModel();
            EventDataController dataCtrl  = new EventDataController();

            var ev    = dataCtrl.GetItem(id);
            var items = GalleryDataController.GetItems(id);

            viewmodel.FromModel(ev, items);

            return(Ok(viewmodel));
        }
        public static GalleryViewModel FromModel(this GalleryViewModel viewmodel, Event model, List <GalleryItem> images)
        {
            viewmodel.Data.ID         = model.ID;
            viewmodel.Data.ImageCount = images.Count;
            viewmodel.Data.Title      = $"{model.EventType.Name} Vol.{model.Volume}";
            viewmodel.Data.Thumbnail  = Properties.Settings.Default.imageAbsolutePath + GalleryDataController.GetGalleryThumbnail(model.ID).ImageUrl;

            viewmodel.Data.Images = images.ConvertAll(x =>
            {
                return(new GalleryViewModelImageItem().FromModel(x));
            });

            return(viewmodel);
        }