Guest User

Untitled

a guest
Apr 15th, 2011
961
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.61 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Web;
  5. using System.Web.UI;
  6. using System.Web.UI.WebControls;
  7. using System.Data;
  8. using System.Data.SqlClient;
  9. using Klas.Business.Controllers;
  10. using Klas.Business.Interfaces;
  11. using Ninject;
  12. using Klas.Toolbox;
  13. using Klas.DataAccess;
  14. using Ninject.Web;
  15. using Klas.DataAccess.Interfaces;
  16.  
  17. namespace ToolBox.Modules.WebsiteStatistics
  18. {
  19. /// <summary>
  20. /// The code behind for the vendor brief management page.
  21. /// </summary>
  22. public partial class ManageVendorBriefs : PageBase
  23. {
  24. #region -= PROPERTIES =-
  25.  
  26. /// <summary>
  27. /// Vendor brief manager requires an instance of IVendorBriefController.
  28. /// </summary>
  29. [Inject]
  30. public IVendorBriefController VendorBriefController
  31. {
  32. get { return _vendorBriefController; }
  33. set { _vendorBriefController = value; }
  34. }
  35.  
  36. /// <summary>
  37. /// The private instance of vendor brief controller to be used within the class.
  38. /// </summary>
  39. private IVendorBriefController _vendorBriefController;
  40.  
  41. #endregion
  42.  
  43. #region -= EVENTS =-
  44.  
  45. /// <summary>
  46. /// Load vendor brief filters and populate vendor brief grid.
  47. /// </summary>
  48. protected void Page_Load(object sender, EventArgs e)
  49. {
  50. Master.CurrentModule = KLASToolbox.Enum.ToolboxModules.Web_Stats;
  51. MessageDisplay.Visible = false;
  52. if (!this.IsPostBack)
  53. {
  54. ddlStatus.DataSource = _vendorBriefController.GetFilters();
  55. ddlStatus.DataBind();
  56. populateVendorBriefs();
  57. if (Session["TempData"] != null)
  58. {
  59. MessageDisplay.Visible = true;
  60. MessageDisplay.InnerText = Session["TempData"].ToString();
  61. Session["TempData"] = null;
  62. string javaScript = "<script type=\"text/javascript\">$(function () { $('#ctl00_BodyRight_MessageDisplay').effect('highlight', {}, 3000).slideUp(); });</script>";
  63. ClientScript.RegisterStartupScript(this.GetType(), "FadeOutMessage", javaScript);
  64. }
  65. }
  66. }
  67.  
  68. /// <summary>
  69. /// Repopulate the vendor brief grid everytime a filter is selected.
  70. /// </summary>
  71. protected void ddlVendorBriefs_SelectedIndexChanged(object sender, EventArgs e)
  72. {
  73. populateVendorBriefs();
  74. }
  75.  
  76. /// <summary>
  77. /// Fill form with data to be edited when the user selects a vendor brief.
  78. /// </summary>
  79. protected void gvVendorBriefs_SelectedIndexChanged(object sender, EventArgs e)
  80. {
  81. AddEditVendorBrief.Title = "Edit Vendor Brief";
  82. btnSubmit.Text = "Edit Vendor Brief";
  83. btnCancel.Visible = true;
  84. cbxDeleteVendorBrief.Visible = true;
  85.  
  86. int vendorBriefID = Convert.ToInt32(gvVendorBriefs.SelectedRow.Cells[1].Text);
  87. VendorBrief vendorBrief = _vendorBriefController.GetVendorBrief(vendorBriefID);
  88. cbxActive.Checked = vendorBrief.IsActive;
  89. tbxTitle.Text = vendorBrief.Title;
  90. tbxLinkText.Text = vendorBrief.LinkText;
  91. lblURL.Text = "http://www.KLASresearch.com/briefs/" + vendorBrief.VendorBriefID.ToString();
  92. }
  93.  
  94. /// <summary>
  95. /// Disabled form fields if the entity is about to be deleted as denoted by the check box being checked.
  96. /// </summary>
  97. protected void cbxDeleteVendorBrief_CheckedChanged(object sender, EventArgs e)
  98. {
  99. if (cbxDeleteVendorBrief.Checked)
  100. {
  101. tbxTitle.Enabled = false;
  102. tbxLinkText.Enabled = false;
  103. cbxActive.Enabled = false;
  104. fuVendorBrief.Enabled = false;
  105. btnSubmit.Text = "Delete Vendor Brief";
  106. }
  107. else
  108. {
  109. tbxTitle.Enabled = true;
  110. tbxLinkText.Enabled = true;
  111. cbxActive.Enabled = true;
  112. fuVendorBrief.Enabled = true;
  113. btnSubmit.Text = "Edit Vendor Brief";
  114. }
  115. }
  116.  
  117. /// <summary>
  118. /// Cancel editing mode and return to new entity mode. (i.e. reload the page)
  119. /// </summary>
  120. protected void btnCancel_Click(object sender, EventArgs e)
  121. {
  122. Response.Redirect(Request.Url.AbsoluteUri);
  123. }
  124.  
  125. /// <summary>
  126. /// Custom validtor for vendor brief file upload control.
  127. /// </summary>
  128. protected void cvVendorBriefFile_ServerValidate(object source, ServerValidateEventArgs args)
  129. {
  130. CustomValidator fileUploadValidator = (CustomValidator)source;
  131. FileUpload vendorBriefFileUpload = (FileUpload)fileUploadValidator.Parent.FindControl(fileUploadValidator.ControlToValidate);
  132. args.IsValid = vendorBriefFileUpload.HasFile && vendorBriefFileUpload.FileName.ToLower().EndsWith(".pdf");
  133. }
  134.  
  135. /// <summary>
  136. /// Check status of form and determine if the entity is to be added, edited, or deleted and call the appropriate method on the controller.
  137. /// </summary>
  138. protected void btnSubmit_Click(object sender, EventArgs e)
  139. {
  140. if (gvVendorBriefs.SelectedRow == null)
  141. {
  142. #region -= ADD VENDOR BRIEF =-
  143. if (IsValid)
  144. {
  145. try
  146. {
  147. VendorBrief vendorBrief = new VendorBrief
  148. {
  149. IsActive = cbxActive.Checked,
  150. DisplayOrder = 0,
  151. Title = tbxTitle.Text,
  152. LinkText = tbxLinkText.Text
  153. };
  154. _vendorBriefController.AddVendorBrief(vendorBrief);
  155. fuVendorBrief.SaveAs(Server.MapPath("~/Content/PDF/VendorBriefs/" + vendorBrief.VendorBriefID.ToString() + ".pdf"));
  156. Session["TempData"] = "Vendor Brief Added Successfully";
  157. }
  158. catch (Exception ex)
  159. {
  160. Session["TempData"] = ex.Message;
  161. }
  162. Response.Redirect(Request.Url.AbsoluteUri);
  163. }
  164. #endregion
  165. }
  166. else
  167. {
  168. int vendorBriefID = Convert.ToInt32(gvVendorBriefs.SelectedRow.Cells[1].Text);
  169. VendorBrief vendorBrief = _vendorBriefController.GetVendorBrief(vendorBriefID);
  170. if (!cbxDeleteVendorBrief.Checked)
  171. {
  172. #region -= UPDATE VENDOR BRIEF =-
  173. if (IsValid)
  174. {
  175. try
  176. {
  177. vendorBrief.IsActive = cbxActive.Checked;
  178. vendorBrief.DisplayOrder = 0;
  179. vendorBrief.Title = tbxTitle.Text;
  180. vendorBrief.LinkText = tbxLinkText.Text;
  181. _vendorBriefController.EditVendorBrief(vendorBrief);
  182. Session["TempData"] = "Vendor Brief Updated Successfully";
  183. }
  184. catch (Exception ex)
  185. {
  186. Session["TempData"] = ex.Message;
  187. }
  188. Response.Redirect(Request.Url.AbsoluteUri);
  189. }
  190. #endregion
  191. }
  192. else
  193. {
  194. #region -= DELETE VENDOR BRIEF =-
  195. try
  196. {
  197. _vendorBriefController.DeleteVendorBrief(vendorBrief);
  198. Session["TempData"] = "Vendor Brief Deleted Successfully";
  199. }
  200. catch (Exception ex)
  201. {
  202. Session["TempData"] = ex.Message;
  203. }
  204. Response.Redirect(Request.Url.AbsoluteUri);
  205. #endregion
  206. }
  207. }
  208. }
  209.  
  210. #endregion
  211.  
  212. #region -= METHODS =-
  213.  
  214. /// <summary>
  215. /// Bind grid view to dynamic data source, results determined by controller.
  216. /// </summary>
  217. private void populateVendorBriefs()
  218. {
  219. gvVendorBriefs.SelectedIndex = -1;
  220. gvVendorBriefs.AutoGenerateSelectButton = true;
  221. gvVendorBriefs.DataSource = VendorBriefController.GetVendorBriefList(ddlStatus.SelectedValue);
  222. gvVendorBriefs.DataBind();
  223. }
  224.  
  225. #endregion
  226. }
  227. }
Advertisement
Add Comment
Please, Sign In to add comment