protected void SendMail(int bookingID, bool confirmed) { //get member who created the booking BookingHandler bookingHandler = new BookingHandler(); int memberID = bookingHandler.GetBookingOwner(bookingID); //the get members email MemberHandler memberHandler = new MemberHandler(); Member member = new Member(); member = memberHandler.GetMemberDetails(memberID); BusinessHandler businessHandler = null; Business business = null; //get business email and password string businessName, businessEmail, businessPassword, emailServer; int port; businessHandler = new BusinessHandler(); business = new Business(); business = businessHandler.GetBusinessDetails(); businessName = business.Name; businessEmail = business.Email; businessPassword = business.EmailPassword; emailServer = business.EmailServer; port = business.EmailPort; //send email MailMessage mail = new MailMessage(); SmtpClient smtpClient = new SmtpClient(emailServer); mail.From = new MailAddress(businessEmail); mail.To.Add(member.Email); if (confirmed) { mail.Subject = businessName + " Booking Confirmed"; mail.Body = "We are pleased to inform you, your booking at " + businessName + " has been confirmed. Please supply the following booking referance number when checking in: " + bookingID.ToString(); } else { mail.Subject = businessName + " Booking Declined"; mail.Body = "We are sad to inform you, your booking at " + businessName + " has been declined. If you have any queries please contact us for assistance."; } smtpClient.Port = port; smtpClient.Credentials = new NetworkCredential(businessEmail, businessPassword); smtpClient.EnableSsl = true; smtpClient.Send(mail); memberHandler.UpdateMemberPassword(member); /* lblProgress.CssClass = "label label-success"; lblProgress.Text = "An email was sent, check you email for your new password."; //delay redirect to alert user of page change lblRedirect.Text = "Redirecting to log in, in 5 seconds."; Response.Write("<script type=\"text/javascript\">setTimeout(function () { window.location.href = \"Login.aspx\"; }, 5000);</script>"); */ }
protected void btnResetPassword_Click(object sender, EventArgs e) { MemberHandler memberHandler = new MemberHandler(); Member member = null; BusinessHandler businessHandler = null; Business business = null; string destinationEmail = txtEmail.Text; //check email exists if (memberHandler.ValidateEmail(destinationEmail) == false) { //email doesn't exist in DB lblProgress.Text = "Invalid Email Address"; } else { //get business email and password string businessName, businessEmail, businessPassword, emailServer, newPassword; int port; businessHandler = new BusinessHandler(); business = new Business(); business = businessHandler.GetBusinessDetails(); businessName = business.Name; businessEmail = business.Email; businessPassword = business.EmailPassword; emailServer = business.EmailServer; port = business.EmailPort; //generate new password newPassword = Membership.GeneratePassword(7, 0); //update database member = new Member(); member.Email = destinationEmail; member.Password = newPassword; //send email try { MailMessage mail = new MailMessage(); SmtpClient smtpClient = new SmtpClient(emailServer); mail.From = new MailAddress(businessEmail); mail.To.Add(destinationEmail); mail.Subject = businessName + " Password Reset"; mail.Body = "Your password has been reset. Please use the following phrase as your new password when you log in: " + newPassword; //code to include an attatchment //System.Net.Mail.Attachment attachment; //attachment = new System.Net.Mail.Attachment("attatchment.jpg"); //mail.Attachments.Add(attachment); smtpClient.Port = port; smtpClient.Credentials = new NetworkCredential(businessEmail, businessPassword); smtpClient.EnableSsl = true; smtpClient.Send(mail); memberHandler.UpdateMemberPassword(member); lblProgress.CssClass = "label label-success"; lblProgress.Text = "An email was sent, check you email for your new password."; //delay redirect to alert user of page change lblRedirect.Text = "Redirecting to log in, in 5 seconds."; Response.Write("<script type=\"text/javascript\">setTimeout(function () { window.location.href = \"Login.aspx\"; }, 5000);</script>"); } catch (Exception ex) { lblProgress.Text = "Failed to send an email." + ex.ToString(); } } }