PluginProbe
User Profile Builder – Beautiful User Registration Forms, User Profiles & User Role Editor / 3.9.9
User Profile Builder – Beautiful User Registration Forms, User Profiles & User Role Editor v3.9.9
4.0.3 4.0.2 4.0.1 4.0.0 3.16.6 3.16.5 3.16.4 3.16.3 3.16.2 3.16.1 3.16.0 3.15.9 3.9.9 3.9.5 3.9.6 3.9.7 3.9.8 1.1.7 1.1.8 1.1.9 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 All 341 releases
profile-builder / front-end / default-fields / textarea / textarea.php

textarea.php in User Profile Builder – Beautiful User Registration Forms, User Profiles & User Role Editor 3.9.9, at front-end/default-fields/textarea/textarea.php

78 lines 4.5 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /* handle field output */
3 function wppb_textarea_handler( $output, $form_location, $field, $user_id, $field_check_errors, $request_data ){
4 if ( $field['field'] == 'Textarea' ){
5 $item_title = apply_filters( 'wppb_'.$form_location.'_textarea_custom_field_'.$field['id'].'_item_title', wppb_icl_t( 'plugin profile-builder-pro', 'custom_field_'.$field['id'].'_title_translation', $field['field-title'], true ) );
6 $item_description = wppb_icl_t( 'plugin profile-builder-pro', 'custom_field_'.$field['id'].'_description_translation', $field['description'], true );
7
8 $extra_attr = apply_filters( 'wppb_extra_attribute', '', $field, $form_location );
9
10 if( $form_location != 'register' )
11 $input_value = ( ( wppb_user_meta_exists ( $user_id, $field['meta-name'] ) != null ) ? get_user_meta( $user_id, $field['meta-name'], true ) : $field['default-content'] );
12 else
13 $input_value = ( isset( $field['default-content'] ) ? trim( $field['default-content'] ) : '' );
14
15 $input_value = ( isset( $request_data[wppb_handle_meta_name( $field['meta-name'] )] ) ? trim( $request_data[wppb_handle_meta_name( $field['meta-name'] )] ) : $input_value );
16
17 if ( $form_location != 'back_end' ){
18 $error_mark = ( ( $field['required'] == 'Yes' ) ? '<span class="wppb-required" title="'.wppb_required_field_error($field["field-title"]).'">*</span>' : '' );
19
20 if ( array_key_exists( $field['id'], $field_check_errors ) )
21 $error_mark = '<img src="'.WPPB_PLUGIN_URL.'assets/images/pencil_delete.png" title="'.wppb_required_field_error($field["field-title"]).'"/>';
22
23 $output = '
24 <label for="'.$field['meta-name'].'">'.$item_title.$error_mark.'</label>
25 <textarea rows="'.$field['row-count'].'" name="'.$field['meta-name'].'" maxlength="'. apply_filters( 'wppb_maximum_character_length', '', $field ) .'" class="custom_field_textarea '. apply_filters( 'wppb_fields_extra_css_class', '', $field ) .'" id="'.$field['meta-name'].'" wrap="virtual" '. $extra_attr .'>'. esc_textarea( wp_unslash( $input_value ) ) .'</textarea>';
26 if( !empty( $item_description ) )
27 $output .= '<span class="wppb-description-delimiter">'.$item_description.'</span>';
28
29 }else{
30 $item_title = ( ( $field['required'] == 'Yes' ) ? $item_title .' <span class="description">('. __( 'required', 'profile-builder' ) .')</span>' : $item_title );
31 $output = '
32 <table class="form-table">
33 <tr>
34 <th><label for="'.$field['meta-name'].'">'.$item_title.'</label></th>
35 <td>
36 <textarea rows="'.$field['row-count'].'" name="'.$field['meta-name'].'" maxlength="'. apply_filters( 'wppb_maximum_character_length', '', $field ) .'" class="custom_field_textarea" id="'.$field['meta-name'].'" wrap="virtual" '. $extra_attr .'>'. esc_textarea( $input_value ) .'</textarea>
37 <span class="description">'.$item_description.'</span>
38 </td>
39 </tr>
40 </table>';
41 }
42
43 $filter_types = array( $field['meta-name'], $field['id'] );
44 foreach( $filter_types as $filter_type ){
45 $output = apply_filters( 'wppb_'.$form_location.'_textarea_custom_field_'.$filter_type, $output, $form_location, $field, $user_id, $field_check_errors, $request_data, $input_value );
46 }
47
48 return $output;
49 }
50 }
51 add_filter( 'wppb_output_form_field_textarea', 'wppb_textarea_handler', 10, 6 );
52 add_filter( 'wppb_admin_output_form_field_textarea', 'wppb_textarea_handler', 10, 6 );
53
54
55 /* handle field save */
56 function wppb_save_textarea_value( $field, $user_id, $request_data, $form_location ){
57 if( $field['field'] == 'Textarea' ){
58 if ( isset( $request_data[wppb_handle_meta_name( $field['meta-name'] )] ) )
59 update_user_meta( $user_id, $field['meta-name'], $request_data[wppb_handle_meta_name( $field['meta-name'] )] );
60 }
61 }
62 add_action( 'wppb_save_form_field', 'wppb_save_textarea_value', 10, 4 );
63 add_action( 'wppb_backend_save_form_field', 'wppb_save_textarea_value', 10, 4 );
64
65
66 /* handle field validation */
67 function wppb_check_textarea_value( $message, $field, $request_data, $form_location ){
68 if( $field['field'] == 'Textarea' ){
69 if( $field['required'] == 'Yes' ){
70 if ( ( isset( $request_data[wppb_handle_meta_name( $field['meta-name'] )] ) && ( trim( $request_data[wppb_handle_meta_name( $field['meta-name'] )] ) == '' ) ) || !isset( $request_data[wppb_handle_meta_name( $field['meta-name'] )] ) ){
71 return wppb_required_field_error($field["field-title"]);
72 }
73 }
74 }
75
76 return $message;
77 }
78 add_filter( 'wppb_check_form_field_textarea', 'wppb_check_textarea_value', 10, 4 );