Esempio n. 1
0
        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());
        }
Esempio n. 2
0
        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()));
        }
Esempio n. 3
0
        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);
        }