Ejemplo n.º 1
0
        protected void btnRegisterUser_Click(object sender, EventArgs e)
        {
            try
            {

                if (!Page.IsValid)
                {
                    lblMessage.Text = "NO";
                }
                else
                {
                    if (txtAttending.Text.Equals(""))
                        txtAttending.Text = "0";

                    // Validate Data Entry
                    if (!chkGuest.Checked)
                    {
                        if (txtDonorID.Text.Length.Equals(0))
                            throw new Exception("Please enter a valid Donor ID!");
                    }

                    if (chkAttending.Checked && int.Parse(txtAttending.Text) < 1)
                        throw new Exception("Please enter the number of attendees!");

                    if (!chkAttending.Checked && int.Parse(txtAttending.Text) > 0)
                        throw new Exception("If not attending please remove the number of attendees!");

                    var eventList = new EventList(User.Identity.Name, int.Parse(ddlEvents.SelectedValue));
                    var donorEventList = new DonorEventList(User.Identity.Name);
                    DonorList donorList;

                    if (chkGuest.Checked)
                    {
                        donorList = new DonorList();
                        donorList.AddNewGuestToEvent(eventList.pk_Event);

                        donorEventList.fk_Event = eventList.pk_Event;
                        donorEventList.fk_DonorList = donorList.pk_DonorList;
                        donorEventList.AddNew();

                    }
                    else
                    {

                        var specialEventCodes = new[] { "jbond", "jsncc", "naacp", "splcj", "jbhrc", "bondj", "jhbms" };
                        var finderNumber = txtDonorID.Text.Trim();


                        if (specialEventCodes.Contains(finderNumber.ToLower()))
                        {
                            var guid = Guid.NewGuid();

                            var key = finderNumber + guid.ToString().Replace("-", "").Substring(0, 5).ToUpper();
                            var donor = new DonorList() { pk_DonorList = key.ToUpper(), IsValid = true, AccountType = "Guest", DonorType = "Guest" };
                            donor.Create();

                            var del = new DonorEventList("") { fk_Event = eventList.pk_Event, fk_DonorList = key };
                            del.Create();
                            finderNumber = key;
                        }

                        donorEventList.Load(eventList.pk_Event, finderNumber);

                        if (donorEventList.pk_DonorEventList <= 0)
                            throw new Exception("Donor ID is not registered with this Event!");

                        if (donorEventList.Response_Date > DateTime.Parse(BaseDate))
                            throw new Exception("Donor has already registered for this Event!");
                    }

                    donorList = new DonorList(donorEventList.fk_DonorList);

                    // Update Donor Information
                    if (UpdateDonorList(donorList))
                    {
                        donorEventList.UpdatedInfo = true;
                        donorEventList.UpdatedInfoDateTime = DateTime.Now;
                        donorEventList.UpdatedInfo_User = donorList.AccountName;
                    }

                    // Register User
                    donorEventList.Response_Date = DateTime.Now;
                    donorEventList.Response_Type = "SPLC Admin";

                    if (chkAttending.Checked)
                    {
                        donorEventList.Attending = true;
                        lblMessage.Text = "Donor is registered";
                    }
                    else
                    {
                        donorEventList.Attending = false;
                        lblMessage.Text = "Donor is not attending.";
                    }

                    // Register User
                    if (donorEventList.GetTicketCountForEvent() > eventList.Capacity && chkAttending.Checked)
                    {
                        // Add to Waiting List
                        donorEventList.Response_Date = DateTime.Now;
                        donorEventList.Response_Type = "SPLC Admin";

                        donorEventList.WaitingList_Date = DateTime.Now;
                        donorEventList.WaitingListOrder = donorEventList.GetNextWaitListNumber();
                        donorEventList.TicketsRequested = int.Parse(txtAttending.Text);
                        lblMessage.Text = "Donor was added to the Waiting List";
                    }
                    else
                    {

                        donorEventList.TicketsRequested = int.Parse(txtAttending.Text);
                        lblMessage.ForeColor = System.Drawing.Color.Green;
                    }

                    //                    DonorEL.Update();
                    donorEventList.SaveChanges();
                    txtDonorID.Text = "";
                    txtAttending.Text = "0";
                    chkAttending.Checked = false;

                    if (donorList.EmailAddress.Equals("")) return;

                    var donorEmail = new DonorEmail(User.Identity.ToString(), ConfigurationManager.AppSettings["EmailTemplatesURL"], donorList, donorEventList);
                    donorEmail.SendEmail();
                    ClearControl(Form);
                }

            }
            catch (Exception ex)
            {
                lblMessage.ForeColor = System.Drawing.Color.Red;
                lblMessage.Text = ex.Message; // "Donor ID is not registered with this Event!";
            }

        }
Ejemplo n.º 2
0
        protected void btnSubmit_Click(object sender, EventArgs e)
        {
            try
            {

                if (attendingRadio.SelectedValue.Equals("0") && (ddlNoGuests.SelectedValue.Equals("0")))
                    throw new Exception("Please select the number of tickets that you are requesting.");

                if (attendingRadio.SelectedValue.Equals("1") && (!ddlNoGuests.SelectedValue.Equals("0")))
                    throw new Exception("If you are not attending please select (0) for the number of Guests attending.");

                var donorEventList = (DonorEventList)Session["SPLC.Donor.RSVP.DEL"];
                var donorList = (DonorList)Session["SPLC.Donor.RSVP.DL"];

                //Special case for event without normal invitation distribution

                var finderNumber = donorList.pk_DonorList.ToLower();
                //var specialEventCodes = new[] { "jbond", "jsncc", "naacp", "splcj", "jbhrc", "bondj", "jhbms" };

                //if (specialEventCodes.Contains(finderNumber.Substring(0, 5)))
                //{
                //    donorList.KeyName = txtName.Text;
                //    donorList.AccountName = txtName.Text;
                //    donorList.AddressLine1 = txtMailingAddress.Text;
                //    donorList.AddressLine2 = txtAddress2.Text;
                //    donorList.City = txtCity.Text;
                //    donorList.State = ddlState.Text;
                //    donorList.PostCode = txtZipCode.Text;
                //    donorList.PhoneNumber = txtPhoneNumber.Text;
                //    donorList.EmailAddress = txtEmail.Text;
                //    donorList.Save();
                //}


                // Update Donor Information
                if (UpdateDonorList(donorList))
                {
                    donorEventList.UpdatedInfo = true;
                    donorEventList.UpdatedInfoDateTime = DateTime.Now;
                    donorEventList.UpdatedInfo_User = donorList.AccountName;
                }

                donorList.EmailAddress = txtEmail.Text;
                //DL.Update();

                if (donorEventList.pk_DonorEventList <= 0)
                    throw new Exception("Donor ID is not registered with this Event!");

                if (donorEventList.Response_Date > DateTime.Parse("1/1/2000"))
                    throw new Exception(@"It appears you have already registered for this event, please check 
                                            the information and try again or call 334-956-8200 for assistance.");

                var eventList = new EventList(User.Identity.Name, donorEventList.fk_Event);

                if (attendingRadio.SelectedValue.Equals("0"))
                {
                    donorEventList.Attending = true;
                    donorEventList.TicketsRequested = int.Parse(ddlNoGuests.SelectedValue);
                }
                else
                {
                    donorEventList.Attending = false;
                    donorEventList.TicketsRequested = 0;
                }

                donorEventList.DonorComments = txtComments.Text;
                donorEventList.Response_Date = DateTime.Now;
                donorEventList.Response_Type = "RSVP Web";

                if (donorEventList.GetTicketCountForEvent() > eventList.Capacity)
                {
                    // Add to Waiting List
                    donorEventList.WaitingList_Date = DateTime.Now;
                    donorEventList.WaitingListOrder = donorEventList.GetNextWaitListNumber();
                }


                //                donorEventList.Update();
                donorEventList.SaveChanges();

                Session["SPLC.Donor.RSVP.DEL"] = donorEventList;


                var donorEmail = new DonorEmail(User.Identity.ToString(), ConfigurationManager.AppSettings["EmailTemplatesURL"], donorList, donorEventList);
                donorEmail.SendEmail();

                var pkEvent = int.Parse(Request["eid"]);
                Response.Redirect("Confirmation.aspx?eid=" + pkEvent);

            }
            catch (Exception ex)
            {
                lblMessage.ForeColor = Color.Red;
                lblMessage.Text = ex.Message;
            }

        }