예제 #1
0
        public IActionResult UpdateWidgetType(SlideShowWidget model)
        {
            if (ModelState.IsValid)
            {
                var existing = _widgetService.GetModel(model.Id);
                //if (string.IsNullOrEmpty(existing.SlideShowId))
                //{
                //    // The widget has not been created yet (or is being created in this request), so this data should
                //    // be ignored
                //    return Ok(existing);
                //}
                //else
                //{
                //    existing.SlideShow = _slideShowService.Get(existing.SlideShowId);
                //}

                //// Copy type properties to the existing widget
                //existing.SlideShow.Type = model.SlideShow.Type;
                //existing.SlideShow.FormHeight = model.SlideShow.FormHeight;
                //existing.SlideShow.FormWidth = model.SlideShow.FormWidth;

                _widgetService.UpdateModel(existing);    // Entity Framework isn't letting me attach a subclass

                return(Ok(existing));
            }

            return(BadRequest(ModelState));
        }
예제 #2
0
        public IActionResult UpdateWidgetTitle(SlideShowWidget model, string templateId = null)
        {
            if (string.IsNullOrEmpty(templateId))
            {
                templateId = null;
            }

            if (ModelState.IsValid)
            {
                var existing = _widgetService.GetModel(templateId ?? model.Id);

                if (existing != null)
                {
                    existing.Title           = model.Title;
                    existing.Description     = model.Description;
                    existing.Duration        = model.Duration;
                    existing.BackgroundColor = model.BackgroundColor;
                    existing.Transition      = model.Transition;
                    existing.Height          = model.Height;
                }
                //if (!string.IsNullOrEmpty(model.SlideShowId))
                //{
                //    existing.SlideShow = _slideShowService.Get(model.SlideShowId);
                //    existing.SlideShowId = existing.SlideShow?.Id;

                //    existing.SlideShow.Title = model.SlideShow?.Title ?? existing.SlideShow?.Title;
                //    existing.SlideShow.Description = model.SlideShow?.Description ?? existing.SlideShow?.Description;
                //}
                //else if (!string.IsNullOrEmpty(templateId))
                //{
                //    existing.SlideShow = _slideShowService.Get(templateId);
                //    existing.SlideShow.Id = existing.SlideShowId = KeyGen.NewGuid();
                //}
                //else if (!string.IsNullOrEmpty(existing.SlideShowId))
                //{
                //    existing.SlideShow = _slideShowService.Get(model.SlideShowId);
                //}
                //else
                //{
                //    existing.SlideShow = new Models.SlideShow();

                //    existing.SlideShowId = existing.SlideShow.Id = KeyGen.NewGuid();
                //    existing.SlideShow.Title = model.SlideShow.Title;
                //    existing.SlideShow.Description = model.SlideShow.Description;
                //}

                _widgetService.UpdateModel(existing);    // Entity Framework isn't letting me attach a subclass

                return(Ok(model));
            }

            return(BadRequest(ModelState));
        }
예제 #3
0
        public IActionResult UpdateWidgetDefaults(SlideShowWidget model)
        {
            if (ModelState.IsValid)
            {
                if (ModelState.IsValid)
                {
                    var existing = _widgetService.GetModel(model.Id);

                    // Copy type properties to the existing widget
                    //existing.DefaultProgressBarColor = model.DefaultProgressBarColor;
                    //existing.DefaultProgressBarHeight = model.DefaultProgressBarHeight;
                    //existing.DefaultProgressBarIsActive = model.DefaultProgressBarIsActive;
                    //existing.DefaultProgressBarOpacity = model.DefaultProgressBarOpacity;
                    //existing.DefaultProgressBarPosition = model.DefaultProgressBarPosition;
                    //existing.DefaultSlideShowBackgroundColor = model.DefaultSlideShowBackgroundColor;
                    //existing.DefaultSlideShowDottedOverlaySize = model.DefaultSlideShowDottedOverlaySize;
                    //existing.DefaultSlideShowDuration = model.DefaultSlideShowDuration;
                    //existing.DefaultSlideShowImageSourceSize = model.DefaultSlideShowImageSourceSize;
                    //existing.DefaultSlideShowImageUrl = model.DefaultSlideShowImageUrl;
                    //existing.DefaultSlideShowInitializationDelay = model.DefaultSlideShowInitializationDelay;
                    //existing.DefaultSlideShowIsLooped = model.DefaultSlideShowIsLooped;
                    //existing.DefaultSlideShowIsPausedOnHover = model.DefaultSlideShowIsPausedOnHover;
                    //existing.DefaultSlideShowIsRandomMode = model.DefaultSlideShowIsRandomMode;
                    //existing.DefaultSlideShowMaximumLoops = model.DefaultSlideShowMaximumLoops;
                    //existing.DefaultSlideShowPadding = model.DefaultSlideShowPadding;
                    //existing.DefaultSlideShowShadowType = model.DefaultSlideShowShadowType;
                    //existing.DefaultSlideShowTransitions = model.DefaultSlideShowTransitions;

                    _widgetService.UpdateModel(existing);    // Entity Framework isn't letting me attach a subclass

                    return(Ok(existing));
                }

                return(BadRequest(ModelState));
            }

            return(BadRequest(ModelState));
        }
예제 #4
0
 public async Task <IViewComponentResult> InvokeAsync(SlideShowWidget model)
 {
     return(await Task.Run(() => View(model)));
 }