Fix user_login field validation type

This commit is contained in:
champsupertramp
2016-07-11 21:49:52 +08:00
parent 762519bb89
commit 7c85f7c423
3 changed files with 25 additions and 8 deletions
+4 -4
View File
@@ -249,21 +249,21 @@
<div class="um-admin-half">
<?php if ( isset( $col1 ) ) { foreach( $col1 as $opt ) $metabox->field_input ( $opt ); } ?>
<?php if ( isset( $col1 ) ) { foreach( $col1 as $opt ) $metabox->field_input ( $opt, null, $metabox->edit_array ); } ?>
</div>
<div class="um-admin-half um-admin-right">
<?php if ( isset( $col2 ) ) { foreach( $col2 as $opt ) $metabox->field_input ( $opt ); } ?>
<?php if ( isset( $col2 ) ) { foreach( $col2 as $opt ) $metabox->field_input ( $opt, null, $metabox->edit_array ); } ?>
</div><div class="um-admin-clear"></div>
<?php if ( isset( $col3 ) ) { foreach( $col3 as $opt ) $metabox->field_input ( $opt ); } ?>
<?php if ( isset( $col3 ) ) { foreach( $col3 as $opt ) $metabox->field_input ( $opt, null, $metabox->edit_array ); } ?>
<div class="um-admin-clear"></div>
<?php if ( isset( $col_full ) ) {foreach( $col_full as $opt ) $metabox->field_input ( $opt ); } ?>
<?php if ( isset( $col_full ) ) {foreach( $col_full as $opt ) $metabox->field_input ( $opt, null, $metabox->edit_array ); } ?>
<?php do_action('um_admin_field_modal_footer', $arg2, $args, $metabox->in_edit, (isset( $metabox->edit_array ) ) ? $metabox->edit_array : '' ); ?>
+15
View File
@@ -115,4 +115,19 @@
return $errors;
}
/***
*** @Filter validation types on loop
****/
add_filter('um_builtin_validation_types_continue_loop', 'um_builtin_validation_types_continue_loop', 1, 4);
function um_builtin_validation_types_continue_loop( $break, $key, $form_id, $field_array ){
// show unique username validation only for user_login field
if( $field_array['metakey'] == 'user_login' && $key !== 'unique_username' ){
return false;
}
return $break;
}
+6 -4
View File
@@ -444,7 +444,7 @@ class UM_Admin_Metabox {
/***
*** @Show field input for edit
***/
function field_input ( $attribute, $form_id=null ) {
function field_input ( $attribute, $form_id=null, $field_args = array() ) {
global $ultimatemember;
@@ -582,9 +582,11 @@ class UM_Admin_Metabox {
<option value="" <?php selected( '', $this->edit_mode_value ); ?>></option>
<?php foreach( $ultimatemember->builtin->validation_types() as $key => $name ) { ?>
<option value="<?php echo $key; ?>" <?php selected( $key, $this->edit_mode_value ); ?>><?php echo $name; ?></option>
<?php
$continue = apply_filters("um_builtin_validation_types_continue_loop", true, $key, $form_id, $field_args );
if( $continue ){ ?>
<option value="<?php echo $key; ?>" <?php selected( $key, $this->edit_mode_value ); ?>><?php echo $name; ?></option>
<?php } ?>
<?php } ?>
</select>