protected void AllCustomValidator_ServerValidate(object source, ServerValidateEventArgs args) { var result = User.ValidateMemberRegistration( FirstNameTextBox.Text, LastNameTextBox.Text, EmailTextBox.Text, UserName.Text, PasswordTextBox.Text, string.Format("{0}-{1}-{2}", YearDropDownList.SelectedValue, MonthDropDownList.SelectedValue, DayDropDownList.SelectedValue), GenderDropDownList.SelectedValue, TermsCheckBox.Checked, NewsCheckBox.Checked ); var errors = result.Where(x => !string.IsNullOrEmpty(x.Message)).Select(x => x.Message); var valid = errors.Count() == 0; args.IsValid = valid; HelperFunctions.FindControl <Label>(this, "ErrorLabel").Text = valid ? "" : string.Join("<br />\r\n", errors); HelperFunctions.FindControl <Panel>(this, "ErrorPanel").Style.Add("display", valid ? "none" : "block"); }
private User RegisterMember() { /* --- Create a new user --------- */ //Page.Validate("MemberRegistration"); if (!Page.IsValid) { return(null); } // Create ASP.NET User var password = PasswordTextBox.Text; PasswordTextBox.Text = string.IsNullOrEmpty(password) ? NewPassword() : password; MembershipCreateStatus status; MembershipUser member = SecurityClassesDataContext.Current.CreateUser(UserName.Text, password, EmailTextBox.Text, "Password Question", "Password Answer", true, out status); // If creation failed then exit. if (status != MembershipCreateStatus.Success) { return(null); } return(User.GetUser((Guid)member.ProviderUserKey)); }
protected void AllCustomValidator_ServerValidate(object source, ServerValidateEventArgs args) { var result = User.ValidateMemberRegistration( FirstNameTextBox.Text, LastNameTextBox.Text, EmailTextBox.Text, UserName.Text, PasswordTextBox.Text, string.Format("{0}-{1}-{2}", YearDropDownList.SelectedValue, MonthDropDownList.SelectedValue, DayDropDownList.SelectedValue), GenderDropDownList.SelectedValue, TermsCheckBox.Checked, NewsCheckBox.Checked, SecurityContext.Current.RequiredFields ); var errors = result.Where(x => !string.IsNullOrEmpty(x.Message)).Select(x => x.Message); var valid = errors.Count() == 0; args.IsValid = valid; HelperFunctions.FindControl <Label>(this, "ErrorLabel").Text = valid ? "" : string.Join("<br />\r\n", errors); HelperFunctions.FindControl <Panel>(this, "ErrorPanel").Style["display"] = valid ? "none" : "block"; var values = (UserFieldName[])Enum.GetValues(typeof(UserFieldName)); foreach (var item in values) { var id = string.Format("{0}Status", item); var div = HelperFunctions.FindControl <HtmlGenericControl>(this, id); if (div != null) { if (result.Any(x => x.Name == item)) { div.Attributes["class"] = "SWUI_Table_Result0Changed"; } else { if (SecurityContext.Current.RequiredFields.HasFlag(item)) { div.Attributes["class"] = "SWUI_Table_Result1"; } else { div.Attributes["class"] = ""; } } } } }
protected void SignUpLinkButton_Click(object sender, EventArgs e) { /* --- Register member --- */ User user = RegisterMember(); if (user == null) { return; } try { user.DateBirth = new DateTime( int.Parse(YearDropDownList.SelectedValue), int.Parse(MonthDropDownList.SelectedValue), int.Parse(DayDropDownList.SelectedValue)); user.FirstName = UserFirstName; user.LastName = UserLastName; user.Gender = (string)GenderDropDownList.SelectedValue; SecurityClassesDataContext.Current.SaveChanges(); // Add role to the user. System.Web.Security.Roles.AddUserToRole(user.UserName, "SocialUsers"); // LogIn user to website. FormsAuthentication.SetAuthCookie(user.UserName, false); if (CreatedUser != null) { CreatedUser(sender, new ProfileCreateEventArgs { User = user }); } } catch (Exception) { //if something goes wrong invalidate registration SecurityClassesDataContext.Current.DeleteUser(user.UserName, true); System.Web.Security.FormsAuthentication.SignOut(); Session.Abandon(); throw; } // Need to be outside the try catch or the redirect will sire an error if (!string.IsNullOrEmpty(RedirectUrl)) { string url = RedirectUrl; if (!string.IsNullOrEmpty(ReturnUrl)) { url += string.Format("?ReturnUrl={0}", HttpUtility.UrlEncode(ReturnUrl)); } Response.Redirect(url, true); } }
protected void SignUpLinkButton_Click(object sender, EventArgs e) { /* --- Register member --- */ User user = RegisterMember(); if (user == null) { return; } try { var fields = SecurityContext.Current.RequiredFields | SecurityContext.Current.OptionalFields; if (fields.HasFlag(UserFieldName.Birthday)) { user.DateBirth = new DateTime( int.Parse(YearDropDownList.SelectedValue), int.Parse(MonthDropDownList.SelectedValue), int.Parse(DayDropDownList.SelectedValue)); } user.FirstName = FirstNameTextBox.Text; user.LastName = LastNameTextBox.Text; user.Gender = (string)GenderDropDownList.SelectedValue; SecurityClassesDataContext.Current.SaveChanges(); var role = SecurityContext.Current.DefaultRole; if (!string.IsNullOrEmpty(role)) { if (!Roles.RoleExists(role)) { Roles.CreateRole(role); JocysCom.WebSites.Engine.Security.Check.UpdateRole(role, "Default Role."); } // Add role to the user. System.Web.Security.Roles.AddUserToRole(user.UserName, role); } // LogIn user to website. FormsAuthentication.SetAuthCookie(user.UserName, false); if (CreatedUser != null) { CreatedUser(sender, new ProfileCreateEventArgs { User = user }); } } catch (Exception ex) { //if something goes wrong invalidate registration SecurityClassesDataContext.Current.DeleteUser(user.UserName, true); System.Web.Security.FormsAuthentication.SignOut(); Session.Abandon(); HelperFunctions.FindControl <Label>(this, "ErrorLabel").Text = ex.Message; HelperFunctions.FindControl <Panel>(this, "ErrorPanel").Style["display"] = "block"; return; } // Need to be outside the try catch or the redirect will sire an error if (!string.IsNullOrEmpty(RedirectUrl)) { string url = RedirectUrl; if (!string.IsNullOrEmpty(ReturnUrl)) { url += string.Format("?ReturnUrl={0}", HttpUtility.UrlEncode(ReturnUrl)); } Response.Redirect(url, true); } }