Example #1
0
        public object SaveEditContent(PageAddress pageAddress, ContentItemsInput contentItemsInput)
        {
            //TODO: (erikpo) Check permissions

            pageService.EditPageContent(pageAddress, contentItemsInput);

            //todo: (nheskew) get this all set up to edit a single content item and link back down to that content. probably needs a success message too
            return(Redirect(Url.Page(pageService.GetPage(pageAddress))));
        }
Example #2
0
        public object GlobalSaveEdit(ContentItemsInput contentItemsInput)
        {
            //TODO: (erikpo) Check permissions

            /*ModelResult<IEnumerable<ContentItem>> results = */ contentItemService.EditContentItems(contentItemsInput.ContentItems);

            //if (!results.IsValid)
            //{
            //    ModelState.AddModelErrors(results.ValidationState);

            //    return GlobalEdit(contentInput, currentUser);
            //}

            return(GlobalEdit(contentItemsInput.ContentItems)); //Redirect(Url.AppPath(Url.Page(results.Item)));
        }
Example #3
0
        public void EditPageContent(Page page, ContentItemsInput contentItemsInput)
        {
            //TODO: (erikpo) Validate input

            using (TransactionScope transaction = new TransactionScope())
            {
                //TODO: (erikpo) Follow other editing patterns in Oxite and add plugin and module events

                foreach (ContentItemInput input in contentItemsInput.ContentItems)
                {
                    repository.Save(input.ToContentItem(context.User.Cast <User>(), context.Site.ID, page.ID));
                }

                transaction.Complete();
            }
        }
Example #4
0
        public void OnActionExecuted(ActionExecutedContext filterContext)
        {
            OxiteViewModel model = filterContext.Controller.ViewData.Model as OxiteViewModel;

            if (model == null)
            {
                return;
            }

            ContentItemsInput contentItemsInput = filterContext.HttpContext.Request.GetContentItemsInput();

            model.AddModelItem(
                contentItemsInput != null
                    ? filterContext.HttpContext.Request.GetContentItemsInput()
                    : new ContentItemsInput(
                    model.GetModelItem <ContentItemViewModel>().ContentItems.Where(ci => ci.Page != null).Select(ci => new ContentItemInput(ci.Name, ci.DisplayName, ci.Body, ci.Published))
                    )
                );
        }
 public static IEnumerable <ContentItemInput> GetContentItems(this ContentItemsInput contentItemsInput)
 {
     return(contentItemsInput != null
         ? contentItemsInput.ContentItems
         : null);
 }