private void AddPropertyToForm(ref DnnFormEditor RegistrationForm, ProfilePropertyDefinition property) { var controller = new ListController(); ListEntryInfo imageType = controller.GetListEntryInfo("DataType", "Image"); if (property.DataType != imageType.EntryID) { DnnFormEditControlItem formItem = new DnnFormEditControlItem { ID = property.PropertyName, ResourceKey = String.Format("ProfileProperties_{0}", property.PropertyName), LocalResourceFile = "~/DesktopModules/Admin/Security/App_LocalResources/Profile.ascx.resx", ValidationMessageSuffix = ".Validation", ControlType = EditorInfo.GetEditor(property.DataType), DataMember = "Profile", DataField = property.PropertyName, Visible = property.Visible, Required = property.Required }; //To check if the property has a default value if (!String.IsNullOrEmpty(property.DefaultValue)) { formItem.Value = property.DefaultValue; } if (!String.IsNullOrEmpty(property.ValidationExpression)) { formItem.ValidationExpression = property.ValidationExpression; } RegistrationForm.Items.Add(formItem); } }
private void AddPasswordStrengthFieldToForm(ref DnnFormEditor RegistrationForm, string dataField, string dataMember, bool required) { DnnFormItemBase formItem; if (Host.EnableStrengthMeter) { formItem = new DnnFormPasswordItem { TextBoxCssClass = DnnMembershipUtilities.PasswordStrengthTextBoxCssClass, ContainerCssClass = "password-strength-container" }; } else { formItem = new DnnFormTextBoxItem { TextMode = TextBoxMode.Password, TextBoxCssClass = DnnMembershipUtilities.PasswordStrengthTextBoxCssClass, }; } formItem.ID = dataField; formItem.DataField = dataField; formItem.DataMember = dataMember; formItem.Visible = true; formItem.Required = required; RegistrationForm.Items.Add(formItem); }
private void AddPasswordConfirmFieldToForm(ref DnnFormEditor RegistrationForm, string dataField, string dataMember, bool required) { var formItem = new DnnFormTextBoxItem { ID = dataField, DataField = dataField, DataMember = dataMember, Visible = true, Required = required, TextMode = TextBoxMode.Password, TextBoxCssClass = DnnMembershipUtilities.ConfirmPasswordTextBoxCssClass, }; RegistrationForm.Items.Add(formItem); }
private void AddFieldToForm(ref DnnFormEditor RegistrationForm, string dataField, string dataMember, bool required, string regexValidator, TextBoxMode textMode) { var formItem = new DnnFormTextBoxItem { ID = dataField, DataField = dataField, DataMember = dataMember, Visible = true, Required = required, TextMode = textMode }; if (!String.IsNullOrEmpty(regexValidator)) { formItem.ValidationExpression = regexValidator; } RegistrationForm.Items.Add(formItem); }
/// <summary> /// /// </summary> /// <param name="RegistrationForm"></param> /// <param name="User"></param> public void InitialiseUserFormEditor(ref DnnFormEditor RegistrationForm, UserInfo User) { if (RegistrationFormType == 0) { //UserName if (!UseEmailAsUserName) { AddFieldToForm(ref RegistrationForm, "Username", String.Empty, true, String.IsNullOrEmpty(UserNameValidator) ? ExcludeTerms : UserNameValidator, TextBoxMode.SingleLine); } //Password if (!RandomPassword) { AddPasswordStrengthFieldToForm(ref RegistrationForm, "Password", "Membership", true); if (RequirePasswordConfirm) { AddPasswordConfirmFieldToForm(ref RegistrationForm, "PasswordConfirm", "Membership", true); } } //Password Q&A if (MembershipProviderConfig.RequiresQuestionAndAnswer) { AddFieldToForm(ref RegistrationForm, "PasswordQuestion", "Membership", true, String.Empty, TextBoxMode.SingleLine); AddFieldToForm(ref RegistrationForm, "PasswordAnswer", "Membership", true, String.Empty, TextBoxMode.SingleLine); } //DisplayName if (String.IsNullOrEmpty(DisplayNameFormat)) { AddFieldToForm(ref RegistrationForm, "DisplayName", String.Empty, true, String.Empty, TextBoxMode.SingleLine); } else { AddFieldToForm(ref RegistrationForm, "FirstName", String.Empty, true, String.Empty, TextBoxMode.SingleLine); AddFieldToForm(ref RegistrationForm, "LastName", String.Empty, true, String.Empty, TextBoxMode.SingleLine); } //Email AddFieldToForm(ref RegistrationForm, "Email", String.Empty, true, EmailValidator, TextBoxMode.SingleLine); if (RequireValidProfile) { foreach (ProfilePropertyDefinition property in User.Profile.ProfileProperties) { if (property.Required) { AddPropertyToForm(ref RegistrationForm, property); } } } } else { var fields = RegistrationFields.Split(',').ToList(); //append question/answer field when RequiresQuestionAndAnswer is enabled in config. if (MembershipProviderConfig.RequiresQuestionAndAnswer) { if (!fields.Contains("PasswordQuestion")) { fields.Add("PasswordQuestion"); } if (!fields.Contains("PasswordAnswer")) { fields.Add("PasswordAnswer"); } } foreach (string field in fields) { var trimmedField = field.Trim(); switch (trimmedField) { case "Username": AddFieldToForm(ref RegistrationForm, "Username", String.Empty, true, String.IsNullOrEmpty(UserNameValidator) ? ExcludeTerms : UserNameValidator, TextBoxMode.SingleLine); break; case "Email": AddFieldToForm(ref RegistrationForm, "Email", String.Empty, true, EmailValidator, TextBoxMode.SingleLine); break; case "Password": AddPasswordStrengthFieldToForm(ref RegistrationForm, trimmedField, "Membership", true); break; case "PasswordConfirm": AddPasswordConfirmFieldToForm(ref RegistrationForm, trimmedField, "Membership", true); break; case "PasswordQuestion": case "PasswordAnswer": AddFieldToForm(ref RegistrationForm, trimmedField, "Membership", true, String.Empty, TextBoxMode.SingleLine); break; case "DisplayName": AddFieldToForm(ref RegistrationForm, trimmedField, String.Empty, true, ExcludeTerms, TextBoxMode.SingleLine); break; default: ProfilePropertyDefinition property = User.Profile.GetProperty(trimmedField); if (property != null) { AddPropertyToForm(ref RegistrationForm, property); } break; } } } }