Esempio n. 1
0
        private static MvcHtmlString Pager(int currentPageIndex, int pageSize, int maxShowPages, int totalPageCount, IDictionary <string, object> htmlAttributes, Func <string, int, int, string> getPageLink)
        {
            if (maxShowPages == 0)
            {
                return(MvcHtmlString.Empty);
            }

            var ul = new TagBuilder("ul");

            ul.MergeAttributes(htmlAttributes);

            var sb   = new StringBuilder();
            int seed = currentPageIndex - (currentPageIndex % maxShowPages);

            if (currentPageIndex > 0)
            {
                sb.Append(String.Format(CultureInfo.InvariantCulture, "<li title=\"{0}\">{1}</li>",
                                        GlobalResourceHelper.PreviousPageTitle(),
                                        getPageLink(GlobalResourceHelper.PreviousPage(), currentPageIndex - 1, pageSize)));
            }

            if (seed > 0)
            {
                sb.Append(String.Format(CultureInfo.InvariantCulture, "<li title=\"{0}\">{1}</li>",
                                        String.Format(CultureInfo.InvariantCulture, GlobalResourceHelper.PreviousNPagesTitle(), maxShowPages),
                                        getPageLink(GlobalResourceHelper.PreviousNPages(), seed - maxShowPages, pageSize)));
            }

            for (int i = seed; i < totalPageCount && i < seed + maxShowPages; i++)
            {
                var li = new TagBuilder("li");
                if (i == currentPageIndex)
                {
                    li.AddCssClass("active");
                }

                li.InnerHtml = getPageLink((i + 1).ToString(CultureInfo.InvariantCulture), i, pageSize);
                sb.Append(li.ToString());
            }

            if (seed + maxShowPages < totalPageCount)
            {
                sb.Append(String.Format(CultureInfo.InvariantCulture, "<li title=\"{0}\">{1}</li>",
                                        String.Format(CultureInfo.InvariantCulture, GlobalResourceHelper.NextNPagesTitle(), maxShowPages),
                                        getPageLink(GlobalResourceHelper.NextNPages(), seed + maxShowPages, pageSize)));
            }

            if (currentPageIndex + 1 < totalPageCount)
            {
                sb.Append(String.Format(CultureInfo.InvariantCulture, "<li title=\"{0}\">{1}</li>",
                                        GlobalResourceHelper.NextPageTitle(),
                                        getPageLink(GlobalResourceHelper.NextPage(), currentPageIndex + 1, pageSize)));
            }

            ul.InnerHtml = sb.ToString();
            return(MvcHtmlString.Create(ul.ToString(TagRenderMode.Normal)));
        }
Esempio n. 2
0
 public static MvcHtmlString NoRecordsFound(this HtmlHelper helper)
 {
     return(ShowMessage(helper, GlobalResourceHelper.ErrorNoRecordsFound(), "warning-message"));
 }