PageRenderTime 33ms CodeModel.GetById 7ms RepoModel.GetById 0ms app.codeStats 0ms

/Web/Admin/SalesItemReport.aspx.cs

#
C# | 144 lines | 103 code | 30 blank | 11 comment | 10 complexity | 5e45da4901397c0db59749b6e7656d0c MD5 | raw file
Possible License(s): LGPL-2.1, Apache-2.0, BSD-3-Clause, CPL-1.0, CC-BY-SA-3.0, GPL-2.0
  1. // Author: Joe Audette
  2. // Created: 2009-02-11
  3. // Last Modified: 2011-05-25
  4. //
  5. // The use and distribution terms for this software are covered by the
  6. // Common Public License 1.0 (http://opensource.org/licenses/cpl.php)
  7. // which can be found in the file CPL.TXT at the root of this distribution.
  8. // By using this software in any fashion, you are agreeing to be bound by
  9. // the terms of this license.
  10. //
  11. // You must not remove this notice, or any other, from this software.
  12. using System;
  13. using System.Data;
  14. using System.Drawing;
  15. using System.Globalization;
  16. using System.Web.UI;
  17. using mojoPortal.Web.Framework;
  18. using mojoPortal.Business;
  19. using mojoPortal.Business.WebHelpers;
  20. using Resources;
  21. namespace mojoPortal.Web.AdminUI
  22. {
  23. public partial class SalesItemReportPage : NonCmsBasePage
  24. {
  25. protected CultureInfo currencyCulture = CultureInfo.CurrentCulture;
  26. private bool isSiteEditor = false;
  27. private bool isCommerceReportViewer = false;
  28. private Guid moduleGuid = Guid.Empty;
  29. private Module module = null;
  30. private int pageNumber = 1;
  31. private int pageSize = 15;
  32. private int totalPages = 0;
  33. protected void Page_Load(object sender, EventArgs e)
  34. {
  35. if (SiteUtils.SslIsAvailable()) { SiteUtils.ForceSsl(); }
  36. LoadSettings();
  37. if (
  38. (!WebUser.IsAdmin)
  39. && (!isSiteEditor)
  40. && (!isCommerceReportViewer)
  41. )
  42. {
  43. WebUtils.SetupRedirect(this, SiteRoot + "/AccessDenied.aspx");
  44. return;
  45. }
  46. PopulateLabels();
  47. PopulateControls();
  48. }
  49. private void PopulateControls()
  50. {
  51. if (module == null) { return; }
  52. Title = SiteUtils.FormatPageTitle(siteSettings, module.ModuleTitle + " - " + Resource.CommerceReportItemSales);
  53. heading.Text = module.ModuleTitle + " - " + Resource.CommerceReportItemSales;
  54. lnkModuleReport.Text = module.ModuleTitle;
  55. lnkModuleReport.NavigateUrl = SiteRoot + "/Admin/SalesByModule.aspx?m=" + moduleGuid.ToString();
  56. using (IDataReader reader = CommerceReport.GetItemsPageByModule(
  57. moduleGuid,
  58. pageNumber,
  59. pageSize,
  60. out totalPages))
  61. {
  62. string pageUrl = SiteRoot + "/Admin/SalesItemReport.aspx"
  63. + "?m=" + moduleGuid.ToString()
  64. + "&pagenumber={0}";
  65. pgrItems.PageURLFormat = pageUrl;
  66. pgrItems.ShowFirstLast = true;
  67. pgrItems.CurrentIndex = pageNumber;
  68. pgrItems.PageSize = pageSize;
  69. pgrItems.PageCount = totalPages;
  70. pgrItems.Visible = (totalPages > 1);
  71. grdItems.DataSource = reader;
  72. grdItems.PageIndex = pageNumber;
  73. grdItems.PageSize = pageSize;
  74. grdItems.DataBind();
  75. }
  76. }
  77. private void PopulateLabels()
  78. {
  79. lnkAdminMenu.Text = Resource.AdminMenuLink;
  80. lnkAdminMenu.NavigateUrl = SiteRoot + "/Admin/AdminMenu.aspx";
  81. lnkCommerceReports.Text = Resource.CommerceReportsLink;
  82. lnkCommerceReports.NavigateUrl = SiteRoot + "/Admin/SalesSummary.aspx";
  83. lnkThisPage.Text = Resource.CommerceReportItemSales;
  84. lnkThisPage.NavigateUrl = SiteRoot + Request.RawUrl;
  85. grdItems.Columns[0].HeaderText = Resource.CommerceReportItemHeading;
  86. grdItems.Columns[1].HeaderText = Resource.RevenueSummaryUnitsSold;
  87. grdItems.Columns[2].HeaderText = Resource.RevenueSummaryRevenue;
  88. }
  89. private void LoadSettings()
  90. {
  91. isSiteEditor = SiteUtils.UserIsSiteEditor();
  92. isCommerceReportViewer = WebUser.IsInRoles(siteSettings.CommerceReportViewRoles);
  93. pageNumber = WebUtils.ParseInt32FromQueryString("pagenumber", pageNumber);
  94. currencyCulture = ResourceHelper.GetCurrencyCulture(siteSettings.GetCurrency().Code);
  95. moduleGuid = WebUtils.ParseGuidFromQueryString("m", moduleGuid);
  96. if (moduleGuid != Guid.Empty)
  97. {
  98. module = new Module(moduleGuid);
  99. if (module.SiteGuid != siteSettings.SiteGuid) { module = null; }
  100. }
  101. AddClassToBody("administration");
  102. AddClassToBody("commercereports");
  103. }
  104. #region OnInit
  105. override protected void OnInit(EventArgs e)
  106. {
  107. base.OnInit(e);
  108. this.Load += new EventHandler(this.Page_Load);
  109. SuppressPageMenu();
  110. SuppressMenuSelection();
  111. }
  112. #endregion
  113. }
  114. }