using System; using System.Data; using System.Configuration; using System.Collections; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using ButterfieldGardens.Web; public partial class admin_index : System.Web.UI.Page { public long iEventId = -1; protected void Page_Load(object sender, EventArgs e) { if (Session["USERID"] == null) { Response.Redirect("/admin/"); } if (!Request.QueryString.Get("e").Equals(null)) { iEventId = Convert.ToInt32(Request.QueryString.Get("e").ToString()); if (!IsPostBack) { LoadEvent(); } } else { DisableForm(); } Navigation objNav = new Navigation(); header.InnerHtml = objNav.GetAdminHeader(); adminNav.InnerHtml = objNav.GetAdminSubNavMenu("events"); footer.InnerHtml = objNav.GetFooter(false, false); Page.MaintainScrollPositionOnPostBack = true; } public void LoadEvent() { cEventsDAO objEventsDAO = new cEventsDAO(); cEvent objEvent = objEventsDAO.GetEvent(iEventId); txtEventTitle.Text = objEvent.EventTitle; txtEventDescription.Text = objEvent.EventDescription; txtLocation.Text = objEvent.EventLocation; txtEventDate.Text = objEvent.StartDateTime.ToShortDateString(); txtStartHour.Text = DateTime.Parse(objEvent.StartDateTime.ToString("G")).ToString("hh"); txtStartMinute.Text = DateTime.Parse(objEvent.StartDateTime.ToString("G")).ToString("mm"); txtEndHour.Text = DateTime.Parse(objEvent.EndDateTime.ToString("G")).ToString("hh"); txtEndMinute.Text = DateTime.Parse(objEvent.EndDateTime.ToString("G")).ToString("mm"); //if it is not active then set to NO otherwise Yes is selected by default if (objEvent.IsActive.Equals(false)) { ddActive.Items[1].Selected = true; } //if time is am or pm then set the start and end date time am/pm if (DateTime.Parse(objEvent.StartDateTime.ToString("G")).ToString("tt").Equals("PM")) { ddStartAMPM.Items[1].Selected = true; } if (DateTime.Parse(objEvent.EndDateTime.ToString("G")).ToString("tt").Equals("PM")) { ddEndAMPM.Items[1].Selected = true; } objEventsDAO.Dispose(); objEvent.Dispose(); } protected void SaveEvent(object sender, EventArgs e) { try { ValidateUserInput(); EditEvent(); Response.Redirect("/admin/manage-events.aspx"); } catch (Exception ex) { DisplayErrorMessage(ex); } } public void ValidateUserInput() { Boolean isValid = true; if (txtEventTitle.Text.Equals("")) { isValid = false; } if (txtEventDescription.Text.Equals("")) { isValid = false; } if (txtLocation.Text.Equals("")) { isValid = false; } if (txtEventDate.Text.Equals("")) { isValid = false; } if (txtStartHour.Text.Equals("")) { isValid = false; } if (txtStartMinute.Text.Equals("")) { isValid = false; } if (txtEndHour.Text.Equals("")) { isValid = false; } if (txtEndMinute.Text.Equals("")) { isValid = false; } if (isValid.Equals(false)) { throw (new Exception("All fields are required for this form. Please try again.")); } } public void EditEvent() { cEventsDAO objEventDAO = new cEventsDAO(); cEvent objEvent = new cEvent(); objEvent.EventId = iEventId; objEvent.EventTitle = txtEventTitle.Text; objEvent.EventDescription = txtEventDescription.Text; objEvent.EventLocation = txtLocation.Text; objEvent.IsActive = Convert.ToBoolean(ddActive.SelectedValue); objEvent.StartDateTime = Convert.ToDateTime(txtEventDate.Text + " " + txtStartHour.Text + ":" + txtStartMinute.Text + " " + ddStartAMPM.SelectedValue); objEvent.EndDateTime = Convert.ToDateTime(txtEventDate.Text + " " + txtEndHour.Text + ":" + txtEndMinute.Text + " " + ddEndAMPM.SelectedValue); objEventDAO.UpdateEvent(objEvent); } public void DisplayErrorMessage(Exception exError) { Literal lit = new Literal(); lit.Text = exError.Message; lblNotify.Controls.Add(lit); lblNotify.CssClass = "error"; lblNotify.Visible = true; } public void DisableForm() { eventEditForm.Disabled = true; } }