- change type for phones fields

This commit is contained in:
ashubawork
2022-06-29 13:49:10 +03:00
parent df4d0c3543
commit 6440499b17
3 changed files with 78 additions and 2 deletions
+18 -2
View File
@@ -245,6 +245,22 @@ if ( ! class_exists( 'um\core\Builtin' ) ) {
)
),
'tel' => array(
'name' => 'Tel Box',
'col1' => array('_title','_metakey','_help','_default','_min_chars','_visibility'),
'col2' => array('_label','_placeholder','_public','_roles','_validate','_custom_validate','_max_chars'),
'col3' => array('_required','_editable','_icon'),
'validate' => array(
'_title' => array(
'mode' => 'required',
'error' => __('You must provide a title','ultimate-member')
),
'_metakey' => array(
'mode' => 'unique',
),
)
),
'number' => array(
'name' => __('Number','ultimate-member'),
'col1' => array('_title','_metakey','_help','_default','_min','_visibility'),
@@ -1133,7 +1149,7 @@ if ( ! class_exists( 'um\core\Builtin' ) ) {
'phone_number' => array(
'title' => __('Phone Number','ultimate-member'),
'metakey' => 'phone_number',
'type' => 'text',
'type' => 'tel',
'label' => __('Phone Number','ultimate-member'),
'required' => 0,
'public' => 1,
@@ -1145,7 +1161,7 @@ if ( ! class_exists( 'um\core\Builtin' ) ) {
'mobile_number' => array(
'title' => __('Mobile Number','ultimate-member'),
'metakey' => 'mobile_number',
'type' => 'text',
'type' => 'tel',
'label' => __('Mobile Number','ultimate-member'),
'required' => 0,
'public' => 1,
+43
View File
@@ -1577,6 +1577,12 @@ if ( ! class_exists( 'um\core\Fields' ) ) {
break;
case 'tel':
$array['input'] = 'tel';
break;
case 'password':
$array['input'] = 'password';
@@ -2322,6 +2328,43 @@ if ( ! class_exists( 'um\core\Fields' ) ) {
$output .= '</div>';
break;
/* Tel */
case 'tel':
$output .= '<div ' . $this->get_atts( $key, $classes, $conditional, $data ) . '>';
if ( isset( $data['label'] ) ) {
$output .= $this->field_label( $label, $key, $data );
}
$output .= '<div class="um-field-area">';
if ( ! empty( $icon ) && isset( $this->field_icons ) && $this->field_icons == 'field' ) {
$output .= '<div class="um-field-icon"><i class="' . esc_attr( $icon ) . '"></i></div>';
}
$field_name = $key . UM()->form()->form_suffix;
$field_value = htmlspecialchars( $this->field_value( $key, $default, $data ) );
$output .= '<input ' . $disabled . ' autocomplete="' . esc_attr( $autocomplete ) . '" class="' . $this->get_class( $key, $data ) . '" type="' . esc_attr( $input ) . '" name="' . esc_attr( $field_name ) . '" id="' . esc_attr( $field_name ) . '" value="' . esc_attr( $field_value ) . '" placeholder="' . esc_attr( $placeholder ) . '" data-validate="' . esc_attr( $validate ) . '" data-key="' . esc_attr( $key ) . '" />
</div>';
if ( ! empty( $disabled ) ) {
$output .= $this->disabled_hidden_field( $field_name, $field_value );
}
if ( $this->is_error( $key ) ) {
$output .= $this->field_error( $this->show_error( $key ) );
}else if ( $this->is_notice( $key ) ) {
$output .= $this->field_notice( $this->show_notice( $key ) );
}
$output .= '</div>';
break;
/* Number */
case 'number':
+17
View File
@@ -99,6 +99,23 @@ function um_profile_field_filter_hook__vimeo_video( $value, $data ) {
add_filter( 'um_profile_field_filter_hook__vimeo_video', 'um_profile_field_filter_hook__vimeo_video', 99, 2 );
/**
* Outputs a phone link
*
* @param $value
* @param $data
*
* @return int|string
*/
function um_profile_field_filter_hook__phone( $value, $data ) {
$value = str_replace('+', '', $value);
$value = '<a href="tel:=' . esc_attr( $value ) . '" rel="nofollow" title="' . esc_attr( $data['title'] ) . '">' . esc_html( $value ) . '</a>';
return $value;
}
add_filter( 'um_profile_field_filter_hook__phone_number', 'um_profile_field_filter_hook__phone', 99, 2 );
add_filter( 'um_profile_field_filter_hook__mobile_number', 'um_profile_field_filter_hook__phone', 99, 2 );
/**
* Outputs a viber link
*