/// <summary> /// Handles the SaveClick event of the dlgField control. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="EventArgs"/> instance containing the event data.</param> protected void dlgField_SaveClick( object sender, EventArgs e ) { var formGuid = hfFormGuid.Value.AsGuid(); var attributeGuid = hfAttributeGuid.Value.AsGuid(); var form = FormState.FirstOrDefault( f => f.Guid == formGuid ); if ( form != null ) { var field = form.Fields.FirstOrDefault( a => a.Guid.Equals( attributeGuid ) ); if ( field == null ) { field = new AttributeFormField(); field.Order = form.Fields.Any() ? form.Fields.Max( a => a.Order ) + 1 : 0; field.Guid = attributeGuid; form.Fields.Add( field ); } field.PreText = ceAttributePreText.Text; field.PostText = ceAttributePostText.Text; field.AttributeId = ddlPersonAttributes.SelectedValueAsInt(); field.ShowCurrentValue = cbUsePersonCurrentValue.Checked; field.IsRequired = cbRequireInInitialEntry.Checked; } HideDialog(); BuildEditControls( true ); }
/// <summary> /// Shows the form field edit. /// </summary> /// <param name="formGuid">The form unique identifier.</param> /// <param name="formFieldGuid">The form field unique identifier.</param> private void ShowFormFieldEdit( Guid formGuid, Guid formFieldGuid ) { var form = FormState.FirstOrDefault( f => f.Guid == formGuid ); if ( form != null ) { var field = form.Fields.FirstOrDefault( a => a.Guid.Equals( formFieldGuid ) ); if ( field == null ) { field = new AttributeFormField(); field.Guid = formFieldGuid; field.ShowCurrentValue = true; field.IsRequired = false; } ceAttributePreText.Text = field.PreText; ceAttributePostText.Text = field.PostText; ddlPersonAttributes.Items.Clear(); var person = new Person(); person.LoadAttributes(); foreach ( var attr in person.Attributes .OrderBy( a => a.Value.Name ) .Select( a => a.Value ) ) { if ( attr.IsAuthorized( Authorization.VIEW, CurrentPerson ) ) { ddlPersonAttributes.Items.Add( new ListItem( attr.Name, attr.Id.ToString() ) ); } } ddlPersonAttributes.SetValue( field.AttributeId ); cbRequireInInitialEntry.Checked = field.IsRequired; cbUsePersonCurrentValue.Checked = field.ShowCurrentValue; hfFormGuid.Value = formGuid.ToString(); hfAttributeGuid.Value = formFieldGuid.ToString(); ShowDialog( "Attributes" ); } BuildEditControls( true ); }