Beispiel #1
0
        public ActionResult Save(HtmlContentCreateOrEditViewModel model)
        {
            if (ModelState.IsValid)
            {
                HtmlContent htmlContent;
                if (model.Id.HasValue)
                {
                    htmlContent = _htmlContentsBL.GetById(model.Id.Value);
                }
                else
                {
                    htmlContent = new HtmlContent();
                }

                htmlContent.Code = model.Code;
                htmlContent.Text = model.Text;
                _htmlContentsBL.Update(htmlContent);

                model.Id = htmlContent.Id;
            }

            return(RedirectToAction("Index", new
            {
                htmlContentCode = model.Code
            }));
        }
Beispiel #2
0
        public ActionResult Edit(HtmlContentCode htmlContentCode)
        {
            HtmlContentCreateOrEditViewModel model;

            HtmlContent htmlContent = _htmlContentsBL.GetByCode(htmlContentCode);

            if (htmlContent != null)
            {
                model = new HtmlContentCreateOrEditViewModel
                {
                    Text = htmlContent.Text,
                    Code = htmlContent.Code,
                    Id   = htmlContent.Id == 0 ? (int?)null : htmlContent.Id
                };
            }
            else
            {
                model = new HtmlContentCreateOrEditViewModel
                {
                    Code = htmlContentCode
                };
            }

            return(View(model));
        }
Beispiel #3
0
        protected void BtnStopCreate_Click(object sender, EventArgs e)
        {
            string nodeValue = XmlManage.Instance("Config/CreateCollectionWork.config", XmlType.File).GetNodeValue("CollectionWork/WorkId");

            if (base.Application[nodeValue] != null)
            {
                CollectionProgress progress = base.Application[nodeValue] as CollectionProgress;
                progress.CreateThread.Abort();
                base.Application.Remove(nodeValue);
                if (DataConverter.CBoolean(this.HdnIsCreateHtml.Value))
                {
                    string nodeIds = "";
                    string str3    = BasePage.RequestString("ItemIds");
                    if (!string.IsNullOrEmpty(str3))
                    {
                        if (str3.Contains(","))
                        {
                            foreach (string str4 in str3.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries))
                            {
                                nodeIds = GetNodeIs(nodeIds, str4);
                            }
                        }
                        else
                        {
                            nodeIds = GetNodeIs(nodeIds, str3);
                        }
                    }
                    HtmlContent content = new HtmlContent();
                    content.CreateMethod = CreateContentType.CreateByNotCreate;
                    content.NodeIdArray  = nodeIds;
                    content.CommonCreateHtml();
                }
            }
        }
Beispiel #4
0
        private void ShowVsDraft()
        {
            HtmlContent html = repository.Fetch(moduleId);

            if (html == null)
            {
                return;
            }

            ContentWorkflow draftContent = ContentWorkflow.GetWorkInProgress(html.ModuleGuid);

            if (draftContent.Guid != workflowGuid)
            {
                return;
            }

            litCurrentHeading.Text = string.Format(Resource.CurrentDraftHeadingFormat,
                                                   DateTimeHelper.GetTimeZoneAdjustedDateTimeString(draftContent.RecentActionOn, timeOffset));

            litCurrentVersion.Text = draftContent.ContentText;

            litHistoryHead.Text = string.Format(Resource.CurrentVersionHeadingFormat,
                                                DateTimeHelper.GetTimeZoneAdjustedDateTimeString(html.LastModUtc, timeOffset));

            litHistoryVersion.Text = html.Body;

            //string onClick = "top.window.LoadHistoryInEditor('" + historyGuid.ToString() + "');  return false;";
            //btnRestore.Attributes.Add("onclick", onClick);
            btnRestore.Visible = false;
        }
Beispiel #5
0
        public sealed override void DoStuff()
        {
            HttpRequestContentExtractor hqExtractor = new HttpRequestContentExtractor(HttpMethod.GET, null);

            if (!(hqExtractor.Goto(this.Url, this.Referer, this.DefaultEncodingName)))
            {
                return;
            }
            var         classnames = MainContainerClassName.Split(new char[] { '|' });
            HtmlContent htmldesc   = null;

            foreach (string classname in classnames)
            {
                htmldesc = hqExtractor.GetContent(classname);
                if (htmldesc != null)
                {
                    break;
                }
            }
            if (htmldesc == null)
            {
                logger.Error("class=" + MainContainerClassName + " div not found");
            }
            var htmldoc = htmldesc.GetHtmlDocumentObject();

            if (htmldoc != null)
            {
                var divSet = htmldoc.DocumentNode.SelectNodes("//li[@class='" + ListItemContainerClassname + "']");
                foreach (HtmlNode node in divSet)
                {
                    HandleListItem(node);
                }
            }
        }
Beispiel #6
0
        ///
        /// Gives a browser window page.
        ///
        public static void GivePage(this ActionContext ac, int status, Action <HtmlContent> main, bool? @public = null, int maxage = 60)
        {
            HtmlContent h = new HtmlContent(true, 32 * 1024);

            h.Add("<!DOCTYPE html>");
            h.Add("<html>");

            h.Add("<head>");
            h.Add("<title>粗粮达人</title>");
            h.Add("<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">");
            h.Add("<link rel=\"stylesheet\" href=\"//cdn.bootcss.com/croppie/2.4.1/croppie.min.css\">");
            h.Add("<link rel=\"stylesheet\" href=\"//cdn.bootcss.com/font-awesome/4.7.0/css/font-awesome.min.css\">");
            h.Add("<link rel=\"stylesheet\" href=\"/app.min.css\">");
            h.Add("</head>");

            h.Add("<body>");

            main(h);

            // zurb foundation
            h.Add("<script src=\"//cdn.bootcss.com/jquery/3.2.1/jquery.min.js\"></script>");
            h.Add("<script src=\"//cdn.bootcss.com/foundation/6.3.1/js/foundation.min.js\"></script>");
            h.Add("<script src=\"//cdn.bootcss.com/croppie/2.4.1/croppie.min.js\"></script>");
            h.Add("<script src=\"/app.min.js\"></script>");
            h.Add("<script>");
            h.Add("$(document).foundation();");
            h.Add("</script>");
            h.Add("</body>");
            h.Add("</html>");

            ac.Give(status, h, @public, maxage);
        }
Beispiel #7
0
        public override TagHelperOutput Render()
        {
            if (this._keyValuePair.Count == 0)
            {
                this.SetDefaultOptions();
            }

            string options = this._isContainsEmpty ? "<option></option>" : default;

            options = this._keyValuePair.Aggregate(options, (current, item) => current + $"<option value='{item.Key}'>{item.Value}</option>");

            TagHelperAttributeList labelAttributes = new TagHelperAttributeList
            {
                { "data-toggle", "tooltip" },
                { "data-placement", "top" },
                { "title", this.Tooltip },
            };

            TagHelperAttributeList inputAttributes = new TagHelperAttributeList
            {
                { "class", "form-control" },
                { "style", "width:204.16px" },
                { "name", this.InputName },
            };

            var label    = HtmlContent.TagHelper("label", labelAttributes, this.LabelText);
            var select   = HtmlContent.TagHelper("select", inputAttributes, options);
            var divGroup = HtmlContent.TagHelper("div", new TagHelperAttribute("class", "form-group"), label, select);

            return(HtmlContent.TagHelper("div", new TagHelperAttribute("class", this.ContainerClass), divGroup));
        }
Beispiel #8
0
        protected void Describe(HtmlContent h)
        {
            for (int i = 0; i < actions?.Count; i++)
            {
                var a = actions.ValueAt(i);
                if (a.Tags != null)
                {
                    h.ARTICLE_("uk-card uk-card-primary");
                    h.HEADER_("uk-card-header").TT(a.Pathing)._HEADER();
                    h.MAIN_("uk-card-body");
                    for (int k = 0; k < a.Tags.Length; k++)
                    {
                        var c = a.Tags[k];
                        c.Describe(h);
                    }

                    h._MAIN();
                    h._ARTICLE();
                }
            }

            varwork?.Describe(h);

            for (int i = 0; i < works?.Count; i++)
            {
                var w = works.EntryAt(i).Value;
                w.Describe(h);
            }
        }
        protected void lbSaveAs_Click(object sender, EventArgs e)
        {
            var hc = new HtmlContent();

            hc.BlockId        = rtbBlockId.Text.AsIntegerOrNull() ?? BlockId;
            hc.EntityValue    = rtbContextParameter.Text + (string.IsNullOrWhiteSpace(rtbContextName.Text) ? "" : ("&ContextName=" + rtbContextName.Text));
            hc.Version        = rtbVersion.Text.AsInteger();
            hc.StartDateTime  = dtpStartTime.SelectedDateTime;
            hc.ExpireDateTime = dtpExpire.SelectedDateTime;
            hc.IsApproved     = rcbApproved.Checked;
            if (hc.IsApproved)
            {
                hc.ApprovedDateTime = DateTime.Now;
            }
            if (htmlEditor.Visible)
            {
                hc.Content = htmlEditor.Text;
            }
            else
            {
                hc.Content = ceHtml.Text;
            }

            var rockContext = new RockContext();
            var hcServ      = new HtmlContentService(rockContext);

            hcServ.Add(hc);
            rockContext.SaveChanges();

            pnlList.Visible = true;
            pnlEdit.Visible = false;
            BindGrid();
        }
        public bool Remove(HtmlContent c)
        {
            if (c == null)
            {
                throw new ArgumentNullException();
            }

            if (!contents.Contains(c))
            {
                if (c.Container == this)
                {
                    throw new ApplicationException();
                }

                return(false);
            }

            bool removed = contents.Remove(c);

            if (removed)
            {
                c.Container = null;
            }

            return(removed);
        }
Beispiel #11
0
        void btnPublishDraft_Click(object sender, EventArgs e)
        {
            SaveHtml(true); // save the draft first

            //SiteUser currentUser = SiteUtils.GetCurrentSiteUser();
            if (currentUser == null)
            {
                return;
            }

            HtmlContent html = repository.Fetch(moduleId);

            if (html != null)
            {
                html.ContentChanged += new ContentChangedEventHandler(html_ContentChanged);
                html.PublishDraft(siteSettings.SiteGuid, currentUser.UserGuid);
            }

            if (hdnReturnUrl.Value.Length > 0)
            {
                WebUtils.SetupRedirect(this, hdnReturnUrl.Value);
                return;
            }

            WebUtils.SetupRedirect(this, SiteUtils.GetCurrentPageUrl());
        }
Beispiel #12
0
        public TagHelperOutput Render(TModel entity)
        {
            string id    = new Identifier().Value;
            string name  = this._expression.GetPropertyName();
            string value = default;

            if (entity != null)
            {
                value = this._modelExpression.Compile()(entity).ToString();
            }

            TagHelperAttributeList attributes = new TagHelperAttributeList
            {
                { "class", "form-control" },
                { "type", this.type },
                { "name", name },
                { "value", value },
                { "id", id },
            };

            var label = HtmlContent.TagHelper("label", new TagHelperAttributeList {
                { "for", id },
            }, this._label + ":");
            var input = HtmlContent.TagHelper("input", attributes);

            return(HtmlContent.TagHelper("div", new TagHelperAttributeList {
                { "class", "form-group" },
            }, label, input));
        }
Beispiel #13
0
        /// <summary>
        /// Render a label
        /// </summary>
        /// <param name="label"></param>
        /// <param name="parent"></param>
        /// <param name="context"></param>
        /// <param name="documentPart"></param>
        /// <param name="formatProvider"></param>
        /// <returns></returns>
        public static OpenXmlElement Render(this HtmlContent label, OpenXmlElement parent, ContextModel context, OpenXmlPart documentPart, IFormatProvider formatProvider)
        {
            context.ReplaceItem(label, formatProvider);

            AlternativeFormatImportPart formatImportPart;

            if (documentPart is MainDocumentPart)
            {
                formatImportPart = (documentPart as MainDocumentPart).AddAlternativeFormatImportPart(AlternativeFormatImportPartType.Xhtml);
            }
            else if (documentPart is HeaderPart)
            {
                formatImportPart = (documentPart as HeaderPart).AddAlternativeFormatImportPart(AlternativeFormatImportPartType.Xhtml);
            }
            else if (documentPart is FooterPart)
            {
                formatImportPart = (documentPart as FooterPart).AddAlternativeFormatImportPart(AlternativeFormatImportPartType.Xhtml);
            }
            else
            {
                return(null);
            }

            return(SetHtmlContent(label, parent, documentPart, formatImportPart));
        }
        public void SaveHtmlContent(HtmlContentInfo htmlContentInfo)
        {
            HtmlContent htmlContent = null;

            // Get content if exists
            htmlContent = _dbContext.HtmlContent.SingleOrDefault(h => h.ModuleId == htmlContentInfo.ModuleId);

            if (htmlContent == null)
            {
                htmlContent = new HtmlContent();
            }

            htmlContent.ModuleId  = htmlContentInfo.ModuleId;
            htmlContent.Content   = htmlContentInfo.Content;
            htmlContent.CreatedAt = htmlContentInfo.CreatedAt;
            htmlContent.CreatedBy = htmlContentInfo.CreatedBy;
            htmlContent.UpdatedAt = htmlContentInfo.UpdatedAt;
            htmlContent.UpdatedBy = htmlContentInfo.UpdatedBy;

            if (htmlContent.ContentId == 0)
            {
                _dbContext.HtmlContent.Add(htmlContent);
            }

            _dbContext.SaveChanges();
        }
Beispiel #15
0
        private void ShowVsHistory()
        {
            HtmlContent    html    = repository.Fetch(moduleId);
            ContentHistory history = new ContentHistory(historyGuid);

            if (history.ContentGuid != html.ModuleGuid)
            {
                return;
            }

            litCurrentHeading.Text = string.Format(Resource.CurrentVersionHeadingFormat,
                                                   DateTimeHelper.Format(html.LastModUtc, timeZone, "g", timeOffset));

            if ((HtmlConfiguration.UseHtmlDiff) && (highlightDiff))
            {
                HtmlDiff diffHelper = new HtmlDiff(history.ContentText, html.Body);
                litCurrentVersion.Text = diffHelper.Build();
            }
            else
            {
                litCurrentVersion.Text = html.Body;
            }

            litHistoryHead.Text = string.Format(Resource.VersionAsOfHeadingFormat,
                                                DateTimeHelper.Format(history.CreatedUtc, timeZone, "g", timeOffset));



            litHistoryVersion.Text = history.ContentText;

            string onClick = "top.window.LoadHistoryInEditor('" + historyGuid.ToString() + "');  return false;";

            btnRestore.Attributes.Add("onclick", onClick);
        }
Beispiel #16
0
        private async Task <IEnumerable <StopLocation> > ParseResponse(HttpResponseMessage response, string latitude, string longitude)
        {
            var result = await response.Content.ReadAsStringAsync();

            var splitResult = result.Split(new[] { "#___#" }, StringSplitOptions.RemoveEmptyEntries);
            var csvResult   = splitResult[1].Split('*');
            var htmlResult  = splitResult[0];

            if (splitResult[0] == "Erro")
            {
                //return new { data = splitResult[2] };
                return(null);
            }

            var htmlToJson = await htmlResult.ToJsonAutoMode();

            var responseHtmlParse = await htmlToJson.Content.ReadAsStringAsync();


            SearchStop searchStopList = new SearchStop();
            IEnumerable <StopLocation> stopLocationList;
            IEnumerable <NextBus>      nextBusList;

            try
            {
                HtmlContent parseHtmlResult = Newtonsoft.Json.JsonConvert.DeserializeObject <HtmlContent>(responseHtmlParse.Replace("@", "").Replace("class", "classe").Replace("#text", "text"));
                var         stopList        = parseHtmlResult.div.div;
                nextBusList      = _mapper.Map <IEnumerable <NextBus> >(stopList);
                stopLocationList = _mapper.Map <IEnumerable <StopLocation> >(csvResult);
            }
            catch (Exception ex)
            {
                HtmlContentUnique parseHtmlResult = Newtonsoft.Json.JsonConvert.DeserializeObject <HtmlContentUnique>(responseHtmlParse.Replace("@", "").Replace("class", "classe").Replace("#text", "text"));


                var stopList     = parseHtmlResult.div.div;
                var nextBus      = _mapper.Map <NextBus>(stopList);
                var stopLocation = _mapper.Map <StopLocation>(csvResult[0]);
                stopLocationList = new List <StopLocation> {
                    stopLocation
                };
                nextBusList = new List <NextBus> {
                    nextBus
                };
            }


            List <StopLocation> resultList = new List <StopLocation>();

            foreach (var stop in stopLocationList)
            {
                stop.NextBuses = nextBusList.Where(x => x.Code.Contains(stop.StopCode));

                resultList.Add(stop);
            }

            resultList = resultList.OrderBy(x => GetDistanceBetweenPoints(Convert.ToDouble(x.Latitude), Convert.ToDouble(x.Longitude), Convert.ToDouble(latitude), Convert.ToDouble(longitude))).ToList();

            return(resultList);
        }
 public void ContentService_SaveNewContent_ReturnsContent()
 {
     HtmlContent content = new HtmlContent();
     content.ContentData = "a";
     HtmlContent content2 = this._ContentService.Save(content);
     Assert.AreEqual("a", content2.ContentData);
 }
Beispiel #18
0
        protected internal virtual void Describe(HtmlContent h)
        {
            h.T("<li>");
            h.T("<code>").TT(Name).T("</code>");

            if (IsPublic)
            {
                h.T("PUBLIC");
            }
            else
            {
                var roles = Roles;
                for (var k = 0; k < roles.Count; k++)
                {
                    if (k > 0)
                    {
                        h.T(", ");
                    }

                    var role = roles[k];
                    h.T(role);
                }
            }

            h.T("</li>");
        }
Beispiel #19
0
        public static IEnumerable <IHtmlMarkup> Parse(this IHtmlSeperator seperator, string content)
        {
            var c = new HtmlContent(content);

            c.JumpLast();
            return(seperator.Parse(c));
        }
        private void Update()
        {
            DataTable dataTableFromRepeater = this.GetDataTableFromRepeater();
            int       generalId             = BasePage.RequestInt32("GeneralID");

            this.SavePresentExp(dataTableFromRepeater, false);
            if (ContentManage.Update(generalId, ContentManage.GetNewContentData(dataTableFromRepeater)))
            {
                ModelInfo modelInfoById = ModelManager.GetModelInfoById(this.m_ModelId);
                this.AddPermissionAndCharge(dataTableFromRepeater, modelInfoById.EnableCharge);
                if (modelInfoById.EnableSignIn)
                {
                    this.UpdateSignin(generalId, dataTableFromRepeater);
                }
                if (((SignInType)Enum.Parse(typeof(SignInType), this.DrpSigninType.SelectedValue)) != SignInType.EnableSignInPrivate)
                {
                    HtmlContent.CreateHtml(dataTableFromRepeater);
                }
                this.UpdateKeywordsToTable(generalId, dataTableFromRepeater);
                if (modelInfoById.EnbaleVote)
                {
                    this.Vote.Add(generalId);
                }
                SiteCache.Remove("CK_Page_Category_" + this.m_NodeId.ToString());
                BasePage.ResponseRedirect(AdminPage.AppendSecurityCode("ContentShowSuccess.aspx?Action=Modify&GeneralID=" + generalId.ToString() + "&NodeID=" + this.m_NodeId.ToString() + "&ModelID=" + this.m_ModelId.ToString() + "&ContentFieldName=" + this.m_ContentFieldName));
            }
            else
            {
                AdminPage.WriteErrMsg("修改失败!");
            }
        }
Beispiel #21
0
        public void invalid_attributes_value()
        {
            var testCode = new HtmlContent(TestUtility.GetFile("invalidCh_attribute.txt"));

            Assert.IsTrue(Seperator.CanParse(testCode));
            var result = Seperator.Parse(testCode).ToArray();
        }
Beispiel #22
0
 public void OnHtmlContentCreated(HtmlContent htmlContent)
 {
     if (HtmlContentCreated != null)
     {
         HtmlContentCreated(new SingleItemEventArgs <HtmlContent>(htmlContent));
     }
 }
Beispiel #23
0
        public static List <HtmlContent> GetHtmlContent(string txt)
        {
            txt = txt.Replace("<div", "<p").Replace("</div>", "</p>");
            var list = new List <HtmlContent>();

            var regEx = new Regex(
                @"(\<p.*?\>)(?<text>.*?)(\<\/p\>|$)",
                RegexOptions.IgnoreCase | RegexOptions.Singleline);

            foreach (Match match in regEx.Matches(txt))
            {
                var item = match.Groups["text"].Value.Trim();
                if (item.Contains("<img"))
                {
                    var paragraph = new Paragraph();
                    var regImg    = new Regex(
                        @"<img\b[^<>]*?\bsrc[\s\t\r\n]*=[\s\t\r\n]*[""']?[\s\t\r\n]*(?<imgUrl>[^\s\t\r\n""'<>]*)[^<>]*?/?[\s\t\r\n]*>",
                        RegexOptions.IgnoreCase);
                    foreach (Match matchImg in regImg.Matches(item))
                    {
                        list.Add(HtmlContent.Create(matchImg.Groups["imgUrl"].Value.Trim(), null));
                    }
                }
                else if (item.Contains("<span"))
                {
                    list.Add(HtmlContent.Create(null, NoHTML(item)));
                }
                else
                {
                    list.Add(HtmlContent.Create(null, NoHTML(item)));
                }
            }

            return(list);
        }
        private void Add()
        {
            DataTable newContentData = ContentManage.GetNewContentData(this.GetDataTableFromRepeater());

            if (ContentManage.Add(this.m_ModelId, newContentData))
            {
                ModelInfo modelInfoById = ModelManager.GetModelInfoById(this.m_ModelId);
                if (modelInfoById.EnableSignIn)
                {
                    this.AddSignin(newContentData);
                }
                this.AddPermissionAndCharge(newContentData, modelInfoById.EnableCharge);
                this.SavePresentExp(newContentData, true);
                if (((SignInType)Enum.Parse(typeof(SignInType), this.DrpSigninType.SelectedValue)) != SignInType.EnableSignInPrivate)
                {
                    HtmlContent.CreateHtml(newContentData);
                }
                this.AddKeywordsToTable(newContentData);
                int generalId = GetGeneralId(newContentData);
                if (modelInfoById.EnbaleVote)
                {
                    this.Vote.Add(generalId);
                }
                SiteCache.Remove("CK_Page_Category_" + this.m_NodeId.ToString());
                BasePage.ResponseRedirect(AdminPage.AppendSecurityCode("ContentShowSuccess.aspx?Action=Add&GeneralID=" + generalId.ToString() + "&NodeID=" + this.m_NodeId.ToString() + "&ModelID=" + this.m_ModelId.ToString() + "&ContentFieldName=" + this.m_ContentFieldName));
            }
        }
Beispiel #25
0
        public static bool CanParse(this IHtmlSeperator seperator, string content)
        {
            var c = new HtmlContent(content);

            c.JumpLast();
            return(seperator.CanParse(c));
        }
        public TagHelperOutput Render(TModel model)
        {
            string listId   = new Identifier().Value;
            string property = this._expression.GetPropertyName();

            var div = HtmlContent.TagHelper("div", new TagHelperAttributeList {
                { "class", "form-group" },
            });
            var label = HtmlContent.TagHelper("label");

            label.Content.SetContent(this._labelText);
            var input = HtmlContent.TagHelper("input", new TagHelperAttributeList {
                { "class", "form-control" },
                { "id", this._id.Value },
                { "name", property },
                { "list", listId },
            });

            label.PostElement.AppendHtml(input);
            label.PostElement.AppendHtml(HtmlContent.TagHelper("select"));
            div.PostElement.AppendHtmlLine(this._script);
            div.PostElement.AppendHtml(HtmlContent.TagHelper("datalist", new TagHelperAttributeList {
                { "id", listId },
            }));

            return(div);
        }
Beispiel #27
0
        /// <summary>
        /// 渲染.
        /// </summary>
        /// <returns>A string.</returns>
        public virtual string Render()
        {
            using (CoreContext context = new CoreContext())
            {
                string html = context.Configuration.FirstOrDefault(o => o.Key == this.FileName)?.Value.Replace("{{head}}", this.HtmlHead());
                html = html.Replace("{{sidebarMenu}}", SidebarNavigation.SidebarMenu());
                html = html.Replace("{{content-header}}", this.ContentHeader());
                html = html.Replace("{{Footer}}", this.Footer());
                html = html.Replace("{{tobHeader}}", SiteConfiguration.TopHeader);

                var filter = this.SearchFilterConfiguration();
                if (filter != null)
                {
                    html = html.Replace("{{grid-search-filter}}", HtmlContent.ToString(filter.GenerateSearchFilter()));
                    html = html.Replace("{{button-group}}", HtmlContent.ToString(filter.GenerateButton()));
                    html = html.Replace("{{Pager}}", this.Pager());
                }

                var grid = this.GridConfiguration();
                if (grid != null)
                {
                    string table = grid.GenerateGridColumn();
                    html = html.Replace("{{Table}}", table);
                }

                return(html + $"<script>{this.RenderJavaScript()}</script>");
            }
        }
        /// <summary>
        /// Executes the specified request.
        /// </summary>
        /// <param name="pageContentId">The page content id.</param>
        /// <returns></returns>
        public PageContentViewModel Execute(Guid pageContentId)
        {
            var pageContentForEdit = ContentService.GetPageContentForEdit(pageContentId);

            if (pageContentForEdit == null)
            {
                throw new EntityNotFoundException(typeof(PageContent), pageContentId);
            }

            PageContent pageContent = pageContentForEdit.Item1;
            HtmlContent content     = (HtmlContent)pageContentForEdit.Item2;

            return(new PageContentViewModel
            {
                Id = pageContent.Id,
                PageId = pageContent.Page.Id,
                RegionId = pageContent.Region.Id,
                ContentId = pageContent.Content.Id,
                ContentName = content.Name,
                LiveFrom = content.ActivationDate,
                LiveTo = content.ExpirationDate,
                PageContent = content.Html,
                Version = pageContent.Version,
                ContentVersion = pageContent.Content.Version,
                CustomCss = content.CustomCss,
                CustomJs = content.CustomJs,
                EanbledCustomJs = content.UseCustomJs,
                EnabledCustomCss = content.UseCustomCss,
                EditInSourceMode = content.EditInSourceMode,
                CurrentStatus = content.Status,
                HasPublishedContent = content.Original != null
            });
        }
        protected void EgvContents_RowCommand(object sender, CommandEventArgs e)
        {
            int    num         = DataConverter.CLng(e.CommandArgument.ToString());
            string commandName = e.CommandName;

            if (commandName != null)
            {
                if (!(commandName == "CreateHtml"))
                {
                    if (!(commandName == "DeleteHtml"))
                    {
                        return;
                    }
                }
                else
                {
                    HtmlContent content = new HtmlContent();
                    content.CreateMethod          = CreateContentType.CreateByGeneralId;
                    content.NodeIdArray           = string.Empty;
                    content.ContentGeneralIdArray = e.CommandArgument.ToString();
                    content.CommonCreateHtml();
                    BasePage.ResponseRedirect("CreateHtmlProgress.aspx?workId=" + content.CreateId);
                    return;
                }
                this.DeleteHtml(num.ToString());
                this.EgvContents.DataBind();
            }
        }
Beispiel #30
0
        public void ConstructWithHtml()
        {
            Page page = new Page(sectionPath, pageTitle, "hello world");

            OutlineObject outline      = null;
            int           cPageObjects = 0;

            foreach (PageObject pageObject in page)
            {
                outline = (OutlineObject)pageObject;
                cPageObjects++;
            }

            Assert.AreEqual(1, cPageObjects);

            HtmlContent content  = null;
            int         cContent = 0;

            foreach (OutlineContent outlineContent in outline)
            {
                content = (HtmlContent)outlineContent;
                cContent++;
            }

            Assert.AreEqual(1, cPageObjects);

            Assert.AreEqual(content.HtmlData, "hello world");
        }
        public HtmlContent Save(HtmlContent item)
        {
            item.ModifiedDate = DateTime.Now;
            item.Save();

            return _contentRepository.Save(item);
        }
Beispiel #32
0
        public void Serialization()
        {
            Page page = new Page(sectionPath);

            string      htmlString  = "<html><body><p>hello world</p></body></html>";
            HtmlContent htmlContent = new HtmlContent(htmlString);

            OutlineObject outlineObject = new OutlineObject();

            outlineObject.AddContent(htmlContent);

            page.AddObject(outlineObject);

            IFormatter formatter  = new BinaryFormatter();
            Stream     serialized = new MemoryStream();

            formatter.Serialize(serialized, page);

            serialized.Seek(0, SeekOrigin.Begin);
            Page deserialized = (Page)formatter.Deserialize(serialized);

            serialized.Close();

            Assert.AreEqual(page, deserialized);
            Assert.AreEqual(page.ToString(), deserialized.ToString());
        }
        /// <summary>
        /// Saves an item to the database.
        /// </summary>
        /// <param name="item">Item to save.</param>
        public HtmlContent Save(HtmlContent item)
        {
            #region Bulk Test...

            //File.AppendAllText("WhenItStarted.txt", DateTime.Now.ToString());

            //for (int i = 2; i <= 1000; i++)
            //{
            //    HtmlContent newItem = new HtmlContent();

            //    newItem.Name = item.Name + " " + i;
            //    newItem.ModifiedBy = item.ModifiedBy;//TODO: should be loged in user
            //    newItem.ModifiedDate = DateTime.Now;
            //    newItem.ExpireDate = item.ExpireDate;
            //    newItem.ActiveDate = new DateTime(1900, 1, 1);
            //    newItem.ContentData = item.ContentData;
            //    newItem.CreatedBy = item.CreatedBy;//TODO: should be loged in user
            //    newItem.CreatedDate = item.CreatedDate;

            //    newItem.Id = i;

            //    HtmlContent w = Get().Where(x => x.Id == newItem.Id).SingleOrDefault();

            //    if (w != null)
            //    {
            //        Delete(w);
            //    }
            //    else
            //    {
            //        int maxId = (Get().Count() > 0) ? Get().Max(x => x.Id) : 0;
            //        newItem.Id = maxId + 1;
            //    }

            //    Db4O.Container.Store(newItem);
            //}

            //File.AppendAllText("WhenItStarted.txt", DateTime.Now.ToString());

            #endregion

            HtmlContent w = Get().Where(x => x.Id == item.Id).SingleOrDefault();

            if (w != null)
            {
                Delete(w);
            }
            else
            {
                int maxId = (Get().Count() > 0) ? Get().Max(x => x.Id) : 0;
                item.Id = maxId + 1;
            }

            Db4O.Container.Store(item);

            return item;
        }
            public void ShouldExportAsJson()
            {
                var html = new HtmlContent
                    {
                        Content = "Foo"
                    };

                var result = html.ToJson();
                const string key = "\"Content\": \"Foo\"";
                Assert.Greater( result.IndexOf( key ), -1, string.Format( "'{0}' was not found in '{1}'.", key, result ) );
            }
Beispiel #35
0
        public void ExportJson()
        {
            var html = new HtmlContent
            {
                Content = "Foo"
            };

            var result = html.ToJson();
            const string key = "\"Content\": \"Foo\"";
            Assert.NotEqual( result.IndexOf( key ), -1 );
        }
Beispiel #36
0
        public void Clone()
        {
            var obj = new HtmlContent
            {
                EntityValue = "Some Value",
                IsApproved = true
            };

            var json = obj.ToJson();
            var htmlContent = HtmlContent.FromJson( json );
            Assert.Equal( obj.EntityValue, htmlContent.EntityValue );
            Assert.Equal( obj.IsApproved, htmlContent.IsApproved );
        }
            public void ShouldCopyPropertiesToEntity()
            {
                var obj = new HtmlContent
                    {
                        EntityValue = "Some Value",
                        IsApproved = true
                    };

                var json = obj.ToJson();
                var htmlContent = HtmlContent.FromJson( json );
                Assert.AreEqual( obj.EntityValue, htmlContent.EntityValue );
                Assert.AreEqual( obj.IsApproved, htmlContent.IsApproved );
            }
        /// <summary>
        /// Deletes an item from the database.
        /// </summary>
        /// <param name="item">Item to delete.</param>
        public bool Delete(HtmlContent item)
        {
            bool deleteSuccess = false;

            try
            {
                Db4O.Container.Delete(item);

                deleteSuccess = true;
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }

            return deleteSuccess;
        }
 public void ShouldCopyEntity()
 {
     var html = new HtmlContent { Content = "Foo" };
     var result = html.Clone( false );
     Assert.AreEqual( result.Content, html.Content );
 }
Beispiel #40
0
 public void ShallowClone()
 {
     var html = new HtmlContent { Content = "Foo" };
     var result = html.Clone( false );
     Assert.Equal( result.Content, html.Content );
 }
Beispiel #41
0
 public void ToJson()
 {
     var html = new HtmlContent { Content = "Foo" };
     var result = html.ToJson();
     Assert.NotEmpty( result );
 }
        /// <summary>
        /// Saves an item to the database.
        /// </summary>
        /// <param name="item">Item to save.</param>
        public HtmlContent Save(HtmlContent item)
        {
            HtmlContent w = Get().Where(x => x.Id == item.Id).SingleOrDefault();

            if (w != null)
            {
                Delete(w);
            }
            else
            {
                int maxId = (Get().Count() > 0) ? Get().Max(x => x.Id) : 0;
                item.Id = maxId + 1;
            }

            Db4O.Container.Store(item);

            return item;
        }
 /// <summary>
 /// Create a new HtmlContent object.
 /// </summary>
 /// <param name="id">Initial value of Id.</param>
 /// <param name="createdDate">Initial value of CreatedDate.</param>
 /// <param name="createdBy">Initial value of CreatedBy.</param>
 /// <param name="name">Initial value of Name.</param>
 /// <param name="expireDate">Initial value of ExpireDate.</param>
 /// <param name="activeDate">Initial value of ActiveDate.</param>
 public static HtmlContent CreateHtmlContent(int id, global::System.DateTime createdDate, string createdBy, string name, global::System.DateTime expireDate, global::System.DateTime activeDate)
 {
     HtmlContent htmlContent = new HtmlContent();
     htmlContent.Id = id;
     htmlContent.CreatedDate = createdDate;
     htmlContent.CreatedBy = createdBy;
     htmlContent.Name = name;
     htmlContent.ExpireDate = expireDate;
     htmlContent.ActiveDate = activeDate;
     return htmlContent;
 }
 public bool Delete(HtmlContent item)
 {
     return _contentRepository.Delete(item);
 }
 /// <summary>
 /// There are no comments for HtmlContent in the schema.
 /// </summary>
 public void AddToHtmlContent(HtmlContent htmlContent)
 {
     base.AddObject("HtmlContent", htmlContent);
 }
 private void InitHeader(HtmlContent content)
 {
     Page.Header.Title = MetaDataHelper.CreateContentPageTitle(content.HtmlContentEnum != HtmlContentEnum.Intro ? content.Name : "Home");
     Page.Header.Controls.Add(PageHelper.CreateDescriptionMetatag(content.Content));
     Page.Header.Controls.Add(PageHelper.CreateKeywordsMetatag(content.Name));
 }
Beispiel #47
0
 public void ShouldNotBeEmpty()
 {
     var html = new HtmlContent() { Content = "Foo" };
     var result = html.ExportJson();
     Assert.IsNotEmpty( result );
 }
 // Constructor
 public HtmlContentViewModel(HtmlContent htmlContent, IApplicationService appService)
 {
     HtmlContent = htmlContent;
     Applications = new SelectList(
         appService.Get().Select(x => x.Name).AsEnumerable(),
         1 /*this.HtmlContent.ApplicationId*/
     );
 }
 private void OnAfterDataSourceBound(HtmlContent content)
 {
     Dispatcher.BeginInvoke(() => { SaveButton.IsEnabled = content != null; });
     if (content != null)
         DataSource.BeginEdit();
 }
        //
        // GET: /HtmlContent/Create
        public ActionResult Create()
        {
            var item = new HtmlContent();

            return View(new HtmlContentViewModel(item, _applicationService));
        }
Beispiel #51
0
 public void ShouldCopyEntity()
 {
     var html = new HtmlContent() { Content = "Foo" };
     dynamic result = html.ExportObject();
     Assert.AreEqual( result.Content, html.Content );
 }
 protected bool Validate(HtmlContent item)
 {
     if (item.Name.Trim().Length == 0)
         ModelState.AddModelError("Name", "Name name is required.");
     //if (contactToCreate.LastName.Trim().Length == 0)
     //    ModelState.AddModelError("LastName", "Last name is required.");
     //if (contactToCreate.Phone.Length > 0 && !Regex.IsMatch(contactToCreate.Phone, @"((\(\d{3}\) ?)|(\d{3}-))?\d{3}-\d{4}"))
     //    ModelState.AddModelError("Phone", "Invalid phone number.");
     //if (contactToCreate.Email.Length > 0 && !Regex.IsMatch(contactToCreate.Email, @"^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$"))
     //    ModelState.AddModelError("Email", "Invalid email address.");
     return ModelState.IsValid;
 }