REST API: Support the (min|max)Length JSON Schema keywords.
Props sorenbronsted. Fixes #48820. Built from https://develop.svn.wordpress.org/trunk@47627 git-svn-id: http://core.svn.wordpress.org/trunk@47402 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
parent
e55ca10ddc
commit
352cb55cca
|
@ -1337,9 +1337,35 @@ function rest_validate_value_from_schema( $value, $args, $param = '' ) {
|
||||||
return new WP_Error( 'rest_invalid_param', sprintf( __( '%1$s is not of type %2$s.' ), $param, 'boolean' ) );
|
return new WP_Error( 'rest_invalid_param', sprintf( __( '%1$s is not of type %2$s.' ), $param, 'boolean' ) );
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( 'string' === $args['type'] && ! is_string( $value ) ) {
|
if ( 'string' === $args['type'] ) {
|
||||||
/* translators: 1: Parameter, 2: Type name. */
|
if ( ! is_string( $value ) ) {
|
||||||
return new WP_Error( 'rest_invalid_param', sprintf( __( '%1$s is not of type %2$s.' ), $param, 'string' ) );
|
/* translators: 1: Parameter, 2: Type name. */
|
||||||
|
return new WP_Error( 'rest_invalid_param', sprintf( __( '%1$s is not of type %2$s.' ), $param, 'string' ) );
|
||||||
|
}
|
||||||
|
|
||||||
|
if ( isset( $args['minLength'] ) && mb_strlen( $value ) < $args['minLength'] ) {
|
||||||
|
return new WP_Error(
|
||||||
|
'rest_invalid_param',
|
||||||
|
sprintf(
|
||||||
|
/* translators: 1: Parameter, 2: Number of characters. */
|
||||||
|
_n( '%1$s must be at least %2$s character long.', '%1$s must be at least %2$s characters long.', $args['minLength'] ),
|
||||||
|
$param,
|
||||||
|
number_format_i18n( $args['minLength'] )
|
||||||
|
)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
if ( isset( $args['maxLength'] ) && mb_strlen( $value ) > $args['maxLength'] ) {
|
||||||
|
return new WP_Error(
|
||||||
|
'rest_invalid_param',
|
||||||
|
sprintf(
|
||||||
|
/* translators: 1: Parameter, 2: Number of characters. */
|
||||||
|
_n( '%1$s must be at most %2$s character long.', '%1$s must be at most %2$s characters long.', $args['maxLength'] ),
|
||||||
|
$param,
|
||||||
|
number_format_i18n( $args['maxLength'] )
|
||||||
|
)
|
||||||
|
);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( isset( $args['format'] ) ) {
|
if ( isset( $args['format'] ) ) {
|
||||||
|
|
|
@ -13,7 +13,7 @@
|
||||||
*
|
*
|
||||||
* @global string $wp_version
|
* @global string $wp_version
|
||||||
*/
|
*/
|
||||||
$wp_version = '5.5-alpha-47626';
|
$wp_version = '5.5-alpha-47627';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.
|
* Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.
|
||||||
|
|
Loading…
Reference in New Issue