private static int GetEndingPage(Pager pagerData, PagerSettings settings) { if (pagerData.TotalPages <= settings.NumberPagesToDisplay) { return(pagerData.TotalPages); } int range = PagerCalculator.GetRange(pagerData.CurrentPage, settings.NumberPagesToDisplay); int totalRanges = PagerCalculator.GetTotalRanges(pagerData.TotalPages, settings.NumberPagesToDisplay); if (range == totalRanges) { return(pagerData.TotalPages); } return(range * settings.NumberPagesToDisplay); }
private static int GetStartingPage(Pager pagerData, PagerSettings settings) { if (pagerData.CurrentPage <= settings.NumberPagesToDisplay) { return(1); } int num = PagerCalculator.GetRange(pagerData.CurrentPage, settings.NumberPagesToDisplay); int totalRanges = PagerCalculator.GetTotalRanges(pagerData.TotalPages, settings.NumberPagesToDisplay); if (num == totalRanges) { return(pagerData.TotalPages - settings.NumberPagesToDisplay + 1); } num--; return(num * settings.NumberPagesToDisplay + 1); }
public string Build(Pager pager, PagerSettings settings, Func<int, string> urlBuilder) { StringBuilder stringBuilder = new StringBuilder(); string text = string.Empty; string arg_13_0 = string.Empty; string text2 = string.Empty; string text3 = string.IsNullOrEmpty(settings.CssClass) ? string.Empty : (" class=\"" + settings.CssClass + "\""); if (pager.CanShowPrevious) { text2 = urlBuilder(pager.CurrentPage - 1); stringBuilder.Append(string.Concat(new string[] { "<a", text3, " href=\"", text2, "\">«</a>" })); } if (pager.CanShowFirst) { text2 = urlBuilder(1); stringBuilder.Append(string.Concat(new object[] { "<a", text3, " href=\"", text2, "\">", 1, "</a>" })); if (pager.CanShowPrevious) { stringBuilder.Append(" "); } } for (int i = pager.StartingPage; i <= pager.EndingPage; i++) { text = ((i == pager.CurrentPage) ? (" class=\"" + settings.CssCurrentPage + "\"") : text3); text2 = urlBuilder(i); text2 = ((i == pager.CurrentPage) ? string.Empty : (" href=\"" + text2 + "\"")); stringBuilder.Append(string.Concat(new object[] { "<a", text, text2, ">", i, "</a>" })); } if (pager.CanShowLast) { text2 = urlBuilder(pager.TotalPages); if (pager.CanShowNext) { stringBuilder.Append(" "); } stringBuilder.Append(string.Concat(new object[] { "<a", text3, " href=\"", text2, "\">", pager.TotalPages, "</a>" })); } if (pager.CanShowNext) { text2 = urlBuilder(pager.CurrentPage + 1); stringBuilder.Append(string.Concat(new string[] { "<a", text3, " href=\"", text2, "\">»</a>" })); } return stringBuilder.ToString(); }
public string Build(int pageIndex, int totalPages, PagerSettings settings, Func<int, string> urlBuilder) { Pager pager = Pager.Get(pageIndex, totalPages, settings); return this.Build(pager, pager.Settings, urlBuilder); }
public static Pager Get(int currentPage, int totalPages, PagerSettings settings) { return(new Pager(currentPage, totalPages, settings)); }
public string ToHtml(Func <int, string> urlBuilder, PagerSettings settings) { return(PagerBuilderWeb.Instance.Build(this, settings, urlBuilder)); }
public static void Calculate(Pager pagerData, PagerSettings pagerSettings) { Pager._instance.Calculate(pagerData, pagerSettings); }
public Pager(int currentPage, int totalPages, PagerSettings settings) { this._pagerSettings = settings; this.SetCurrentPage(currentPage, totalPages); }