Exemple #1
0
        public virtual ActionResult UpdateHtml(string positionId, string pageName, string value, bool?_draft_)
        {
            var data = new JsonResultData(ModelState);

            data.RunWithTry((resultData) =>
            {
                Page page = (PageHelper.Parse(Site.Current, pageName)).AsActual();

                if (page != null)
                {
                    bool isDraft = _draft_.HasValue && _draft_.Value == true;
                    if (isDraft)
                    {
                        page = PageProvider.GetDraft(page);
                    }
                    var position = page.PagePositions.Where(it => it.PagePositionId.EqualsOrNullEmpty(positionId, StringComparison.OrdinalIgnoreCase)).FirstOrDefault();
                    if (position != null && position is HtmlPosition)
                    {
                        ((HtmlPosition)position).Html = value;
                    }
                    if (isDraft)
                    {
                        PageProvider.SaveAsDraft(page);
                    }
                    else
                    {
                        CMS.Sites.Services.ServiceFactory.PageManager.Update(Site.Current, page, page);
                    }
                }
            });
            return(Json(data));
        }
Exemple #2
0
 public virtual void Publish(Page page, bool publishSchedule, bool publishDraft, bool period, DateTime publishDate, DateTime offlineDate, string userName)
 {
     if (!publishSchedule)
     {
         page = page.AsActual();
         if (publishDraft)
         {
             page = PageProvider.GetDraft(page);
             PageProvider.RemoveDraft(page);
         }
         page.Published = true;
         page.UserName  = userName;
         PageProvider.Update(page, page);
         VersionManager.LogVersion(page);
     }
     else
     {
         PagePublishingQueueItem publishingItem = new PagePublishingQueueItem()
         {
             Site             = page.Site,
             PageName         = page.FullName,
             PublishDraft     = publishDraft,
             CreationUtcDate  = DateTime.UtcNow,
             UtcDateToPublish = publishDate.ToUniversalTime(),
             Period           = period,
             UtcDateToOffline = offlineDate.ToUniversalTime(),
             UserName         = userName
         };
         PagePublishingProvider.Add(publishingItem);
     }
 }
Exemple #3
0
        public virtual ActionResult Draft(string uuid)
        {
            #region

            if (!string.IsNullOrWhiteSpace(Site.Repository))
            {
                GenerateFolderListDicViewData();
            }

            #endregion
            var o     = Get(uuid);
            var draft = PageProvider.GetDraft(o);
            if (draft == null)
            {
                return(RedirectToAction("Index", Request.RequestContext.AllRouteValues()));
            }
            return(View(draft));
        }