예제 #1
0
        /// <summary>
        /// Determs if the summary text/html is valid. A valid summary is any text containing atleast one letter.
        /// </summary>
        /// <param name="summary"></param>
        /// <returns></returns>
        public static bool IsValidSummaryForDocumentListVisualization(String summary)
        {
            String trimmedSummary = (summary == null ? String.Empty : summary).Trim();
            String taglessSummary = ApisStringHelper.StripTags(trimmedSummary);

            bool isValidSummary = taglessSummary != null;

            isValidSummary &= !String.IsNullOrEmpty(taglessSummary.Trim());
            isValidSummary &= taglessSummary.Any(Char.IsLetter);

            return(isValidSummary);
        }
예제 #2
0
        private string DocLinks2Html(IReadOnlyCollection <LinksToHtmlModel> linksToHtmls, string title, String subTitle, int limit, string baseUrl, bool addHtmlHeader)
        {
            var sb = new StringBuilder();

            if (addHtmlHeader)
            {
                var tagFreeTitle = ApisStringHelper.StripTags(title.Replace("<br/>", " "));

                sb.Append("<html><head><title>" + tagFreeTitle + "</title>");
                sb.Append("<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />");
                sb.Append("<link rel=\"stylesheet\" type=\"text/css\" href=\"" + baseUrl + "/Content/Styles/docapi.css\"></link>");
                sb.Append("</head><body>");
            }

            var eurocasesLogoUrl = "http://eurocases.eu";
            var apisLogoUrl      = "http://apis.bg";

            var headerContent = $@"
                <table>
                    <tr>
                        <td width='20%'>
                            <div id='DivLogo'><a target='_blank' href='{eurocasesLogoUrl}'><img src='{baseUrl + "/Content/Images/logo.svg'"} /></a></div>
                            <div id='DivLogoApis'><a target='_blank' href='{apisLogoUrl}'><img src='{baseUrl + "/Content/Images/logo_apis.jpg'"} /></a></div>
                        </td>
                    </tr>
                    <tr><td></td></tr>
                    <tr><td><div id='DivHeader'><p>{title}</p></div></td></tr>
                    <tr><td><div id='DivHeader'><p>{subTitle}</p></div></td></tr>
                </table>
               ";

            sb.Append($"<div id='DivTopTop'></div>");
            sb.Append(headerContent);

            //sb.Append("<div id=\"DivTopTop\"></div>");
            //sb.Append("<div id=\"DivLogo\"><img src=\"" + baseUrl + "/Content/Images/logo.svg\"  alt=\"\"/></div>");
            //sb.Append("<div> </div>");

            // sb.Append("<div id=\"DivHeader\"><p>" + title + "</p></div>");
            sb.Append("<div id=\"Content\">");

            var hasTwoTables = linksToHtmls.HasAtleastItems(2);

            foreach (var linksToHtml in linksToHtmls)
            {
                var links       = linksToHtml.Links;
                var totalCount  = linksToHtml.TotalCount;
                var allLinksUrl = linksToHtml.AllLinksUrl;
                // var limit = linksToHtml.Limit;
                var sourceName = linksToHtml.SourceName;


                var classToAppend = "DivSingleContent";
                if (hasTwoTables)
                {
                    classToAppend = "DivMultiContent";
                }

                sb.Append($"<div class='DivLinksTableWrapper {classToAppend}'>");
                if (!String.IsNullOrEmpty(sourceName))
                {
                    sb.Append($"<div class='DivSource'>{sourceName}</div>");
                }

                var countContent = totalCount.ToString() + " " + Resources.Resources.UI_DocumentsFound;
                if (!String.IsNullOrEmpty(allLinksUrl))
                {
                    countContent = $"{countContent}<a class='AnchorAllLinks' target='_blank' href='{allLinksUrl}'> ({Resources.Resources.UI_All}) </a>";
                }

                sb.Append($"<div class=\"DivNumber\"><p>{countContent}</p></div>");


                sb.Append("<table cellpadding='10'>");

                sb.Append("<tr><td class=\"TdHeader\"></td><td class=\"TdHeader\">" + Resources.Resources.UI_Title + "</td>");

                sb.Append("</tr>");

                int rowNumber = 0;
                foreach (DocumentLink l in links)
                {
                    rowNumber++;

                    var imageName = String.Empty;
                    if (l.IsCase())
                    {
                        imageName = "icon-cases-big.png";
                    }
                    else if (l.IsLegislation())
                    {
                        imageName = "icon-law-big.png";
                    }
                    else
                    {
                        imageName = "icon-law-other-big.png";
                    }

                    sb.Append("<tr>");
                    sb.Append("<td class=\"TdImage\"><img src=\"" + baseUrl + "/Content/Images/" + imageName + "\" alt=\"\"/></td>");
                    sb.Append("<td><a href=\"" + l.GetUrl() + "\" target=\"_blank\">" + l.Title + "</a></td>");
                }
                sb.Append("</table>");
                sb.Append("</div>");
            }
            sb.Append("</div>");

            sb.Append("<div class=\"DivNumber\"><p>" + Resources.Resources.UI_ListFirstDocsDesc.Replace("{limit}", limit.ToString()) + "</p></div>");

            if (addHtmlHeader)
            {
                sb.Append("</body></html>");
            }

            return(sb.ToString());
        }