*' : '' ); if ( array_key_exists( $field['id'], $field_check_errors ) ) $error_mark = ''; $output = ' '; $output .= ''; if( !empty( $item_description ) ) $output .= ''.$item_description.''; }else{ $item_title = ( ( $field['required'] == 'Yes' ) ? $item_title .' ('. __( 'required', 'profile-builder' ) .')' : $item_title ); $output = '
'; $output .= '
    '; $output .= '
  • '; foreach( $checkbox_values as $key => $value ) { if ( $value !== "" ) { $output .= '
  • ' . ((!isset($checkbox_labels[$key]) || !$checkbox_labels[$key]) ? trim($checkbox_values[$key]) : trim($checkbox_labels[$key])) . '
  • '; } } $output .= '
'.$item_description.'
'; } return apply_filters( 'wppb_'.$form_location.'_checkbox_custom_field_'.$field['id'], $output, $form_location, $field, $user_id, $field_check_errors, $request_data, $input_value ); } } add_filter( 'wppb_output_form_field_checkbox', 'wppb_checkbox_handler', 10, 6 ); add_filter( 'wppb_admin_output_form_field_checkbox', 'wppb_checkbox_handler', 10, 6 ); /* handle field save */ function wppb_save_checkbox_value( $field, $user_id, $request_data, $form_location ){ if( $field['field'] == 'Checkbox' ){ if( isset( $request_data[ wppb_handle_meta_name( $field['meta-name'] ) ] ) ) { $checkbox_values = wppb_process_checkbox_value($field, $request_data); update_user_meta($user_id, $field['meta-name'], $checkbox_values); } } } add_action( 'wppb_save_form_field', 'wppb_save_checkbox_value', 10, 4 ); add_action( 'wppb_backend_save_form_field', 'wppb_save_checkbox_value', 10, 4 ); function wppb_process_checkbox_value( $field, $request_data ){ $checkbox_values = ''; if( isset( $request_data[ wppb_handle_meta_name( $field['meta-name'] ) ] ) && is_array( $request_data[ wppb_handle_meta_name( $field['meta-name'] ) ] ) ) $checkbox_values = implode( ',', $request_data[ wppb_handle_meta_name( $field['meta-name'] ) ] ); return trim( $checkbox_values, ',' ); } function wppb_add_checkbox_for_user_signup( $field_value, $field, $request_data ){ return wppb_process_checkbox_value( $field, $request_data ); } add_filter( 'wppb_add_to_user_signup_form_field_checkbox', 'wppb_add_checkbox_for_user_signup', 10, 3 ); /* handle field validation */ function wppb_check_checkbox_value( $message, $field, $request_data, $form_location ){ if( $field['field'] == 'Checkbox' ){ $checked_values = ''; if( isset( $request_data[ wppb_handle_meta_name( $field['meta-name'] ) ] ) && is_array( $request_data[ wppb_handle_meta_name( $field['meta-name'] ) ] ) ) $checked_values = implode( ',', $request_data[ wppb_handle_meta_name( $field['meta-name'] ) ] ); if ( ( $field['required'] == 'Yes' ) && empty( $checked_values ) ){ return wppb_required_field_error($field["field-title"]); } } return $message; } add_filter( 'wppb_check_form_field_checkbox', 'wppb_check_checkbox_value', 10, 4 );