示例#1
0
        /// <summary>
        /// Executes the specified request.
        /// </summary>
        /// <param name="request">The request.</param>
        /// <returns></returns>
        public override SaveWidgetResponse Execute(SaveWidgetCommandRequest <EditHtmlContentWidgetViewModel> request)
        {
            HtmlContentWidget widget;
            HtmlContentWidget originalWiget;

            WidgetService.SaveHtmlContentWidget(request.Content, request.ChildContentOptionValues, out widget, out originalWiget);

            var response = new SaveWidgetResponse
            {
                Id                     = widget.Id,
                OriginalId             = originalWiget.Id,
                WidgetName             = widget.Name,
                CategoryName           = widget.Category != null ? widget.Category.Name : null,
                Version                = widget.Version,
                OriginalVersion        = originalWiget.Version,
                WidgetType             = WidgetType.HtmlContent.ToString(),
                IsPublished            = originalWiget.Status == ContentStatus.Published,
                HasDraft               = originalWiget.Status == ContentStatus.Draft || originalWiget.History != null && originalWiget.History.Any(f => f.Status == ContentStatus.Draft),
                DesirableStatus        = request.Content.DesirableStatus,
                PreviewOnPageContentId = request.Content.PreviewOnPageContentId
            };

            if (request.Content.IncludeChildRegions)
            {
                response.Regions = WidgetService.GetWidgetChildRegionViewModels(widget);
            }

            return(response);
        }
示例#2
0
        /// <summary>
        /// Executes the specified request.
        /// </summary>
        /// <param name="request">The request.</param>
        /// <returns></returns>
        public override SaveWidgetResponse Execute(SaveWidgetCommandRequest <EditServerControlWidgetViewModel> request)
        {
            var widget = WidgetService.SaveServerControlWidget(request.Content);

            return(new SaveWidgetResponse
            {
                Id = widget.Id,
                OriginalId = widget.Id,
                WidgetName = widget.Name,
                Version = widget.Version,
                OriginalVersion = widget.Version,
                WidgetType = WidgetType.ServerControl.ToString(),
                IsPublished = widget.Status == ContentStatus.Published,
                HasDraft = widget.Status == ContentStatus.Draft || widget.History != null && widget.History.Any(f => f.Status == ContentStatus.Draft),
                DesirableStatus = request.Content.DesirableStatus,
                PreviewOnPageContentId = request.Content.PreviewOnPageContentId
            });
        }
 /// <summary>
 /// Executes the specified request.
 /// </summary>
 /// <param name="request">The widget to save.</param>
 public abstract SaveWidgetResponse Execute(SaveWidgetCommandRequest <TWidget> request);