public string GetHtml(IConnectionHandler connectionHandler, Content content, string culture, bool hascontainer = true, Container DefaultContrainer = null) { if (content == null) { return(string.Empty); } var st = new StringBuilder(); if (!string.IsNullOrEmpty(content.UserScript)) { st.Append("<script type=\"text/javascript\">" + content.UserScript + "</script>"); } var contentContent = new ContentContentBO().Get(connectionHandler, content.Id, culture) ?? new ContentContent { Id = content.Id, Abstract = content.Abstract, Description = content.Description, Text = content.Text, Subject = content.Subject, Title = content.Title, }; var contentContainer = content.Container; if (DefaultContrainer != null) { contentContainer = DefaultContrainer; } if (contentContainer == null || !hascontainer) { st.Append(contentContent.Text); } else { if (contentContainer.Html == null) { st.Append(contentContent.Text); } else { var htmltext = contentContainer.Html; var html = htmltext.Replace("{Body}", contentContent.Text); st.Append(html.Replace("{title}", contentContent.Title)); } } //اگر محتوای تگ خالی است خالی برگرداند تا تگ خالی در صفحه نمایش ندهد return(contentContent.Text.Length < 10 ? null : st.ToString()); }
public IEnumerable <Content> Search(IConnectionHandler connectionHandler, string qry) { var predicateBuilder = new PredicateBuilder <Content>(); var b = new ContentContentBO().Select(connectionHandler, x => x.Id, x => x.Abstract.Contains(qry) || x.Text.Contains(qry) || x.Title.Contains(qry) || x.Subject.Contains(qry)); if (b.Any()) { predicateBuilder.And(x => x.PageName.Contains(qry) || x.Link.Contains(qry) || x.Id.In(b)); } else { predicateBuilder.And(x => x.PageName.Contains(qry) || x.Link.Contains(qry)); } return(this.Where(connectionHandler, predicateBuilder.GetExpression())); }
public List <Partials> GetContentPartials(IConnectionHandler connectionHandler, List <Content> contents, string culture) { var contentContentBo = new ContentContentBO(); var contentBo = new ContentBO(); var partialModels = new List <Partials>(); var ContentContents = new List <ContentContent>(); if (contents.Any()) { ContentContents = contentContentBo.Where(connectionHandler, x => x.Id.In(contents.Select(i => i.Id)) && x.LanguageId == culture); } foreach (var content in contents) { var contentContent = ContentContents.FirstOrDefault(x => x.Id == content.Id) ?? new ContentContent { Id = content.Id, Abstract = content.Abstract, Description = content.Description, Text = content.Text, Subject = content.Subject, Title = content.Title, }; var partialModel = new Partials { StringId = content.Id.ToString(), Title = content.Title, Type = Enums.PartialTypes.ContentManager, Html = contentBo.GetHtml(content, contentContent) }; partialModels.Add(partialModel); } return(partialModels); }