Make WordPress Core

Ticket #37770: elseif-to-switch.diff

File elseif-to-switch.diff, 7.5 KB (added by georgestephanis, 8 years ago)
  • src/wp-includes/class-wp-customize-manager.php

     
    40764076         * @return string|WP_Error Background value or validation error.
    40774077         */
    40784078        public function _sanitize_background_setting( $value, $setting ) {
    4079                 if ( 'background_repeat' === $setting->id ) {
    4080                         if ( ! in_array( $value, array( 'repeat-x', 'repeat-y', 'repeat', 'no-repeat' ) ) ) {
    4081                                 return new WP_Error( 'invalid_value', __( 'Invalid value for background repeat.' ) );
    4082                         }
    4083                 } elseif ( 'background_attachment' === $setting->id ) {
    4084                         if ( ! in_array( $value, array( 'fixed', 'scroll' ) ) ) {
    4085                                 return new WP_Error( 'invalid_value', __( 'Invalid value for background attachment.' ) );
    4086                         }
    4087                 } elseif ( 'background_position_x' === $setting->id ) {
    4088                         if ( ! in_array( $value, array( 'left', 'center', 'right' ), true ) ) {
    4089                                 return new WP_Error( 'invalid_value', __( 'Invalid value for background position X.' ) );
    4090                         }
    4091                 } elseif ( 'background_position_y' === $setting->id ) {
    4092                         if ( ! in_array( $value, array( 'top', 'center', 'bottom' ), true ) ) {
    4093                                 return new WP_Error( 'invalid_value', __( 'Invalid value for background position Y.' ) );
    4094                         }
    4095                 } elseif ( 'background_size' === $setting->id ) {
    4096                         if ( ! in_array( $value, array( 'auto', 'contain', 'cover' ), true ) ) {
    4097                                 return new WP_Error( 'invalid_value', __( 'Invalid value for background size.' ) );
    4098                         }
    4099                 } elseif ( 'background_preset' === $setting->id ) {
    4100                         if ( ! in_array( $value, array( 'default', 'fill', 'fit', 'repeat', 'custom' ), true ) ) {
    4101                                 return new WP_Error( 'invalid_value', __( 'Invalid value for background size.' ) );
    4102                         }
    4103                 } elseif ( 'background_image' === $setting->id || 'background_image_thumb' === $setting->id ) {
    4104                         $value = empty( $value ) ? '' : esc_url_raw( $value );
    4105                 } else {
    4106                         return new WP_Error( 'unrecognized_setting', __( 'Unrecognized background setting.' ) );
     4079                switch( $setting->id ) {
     4080                        case 'background_repeat':
     4081                                if ( ! in_array( $value, array( 'repeat-x', 'repeat-y', 'repeat', 'no-repeat' ) ) ) {
     4082                                        return new WP_Error( 'invalid_value', __( 'Invalid value for background repeat.' ) );
     4083                                }
     4084                                break;
     4085                        case 'background_attachment':
     4086                                if ( ! in_array( $value, array( 'fixed', 'scroll' ) ) ) {
     4087                                        return new WP_Error( 'invalid_value', __( 'Invalid value for background attachment.' ) );
     4088                                }
     4089                                break;
     4090                        case  'background_position_x':
     4091                                if ( ! in_array( $value, array( 'left', 'center', 'right' ), true ) ) {
     4092                                        return new WP_Error( 'invalid_value', __( 'Invalid value for background position X.' ) );
     4093                                }
     4094                                break;
     4095                        case  'background_position_y':
     4096                                if ( ! in_array( $value, array( 'top', 'center', 'bottom' ), true ) ) {
     4097                                        return new WP_Error( 'invalid_value', __( 'Invalid value for background position Y.' ) );
     4098                                }
     4099                                break;
     4100                        case  'background_size':
     4101                                if ( ! in_array( $value, array( 'auto', 'contain', 'cover' ), true ) ) {
     4102                                        return new WP_Error( 'invalid_value', __( 'Invalid value for background size.' ) );
     4103                                }
     4104                                break;
     4105                        case  'background_preset':
     4106                                if ( ! in_array( $value, array( 'default', 'fill', 'fit', 'repeat', 'custom' ), true ) ) {
     4107                                        return new WP_Error( 'invalid_value', __( 'Invalid value for background size.' ) );
     4108                                }
     4109                                break;
     4110                        case 'background_image':
     4111                        case 'background_image_thumb':
     4112                                $value = empty( $value ) ? '' : esc_url_raw( $value );
     4113                                break;
     4114                        default:
     4115                                return new WP_Error( 'unrecognized_setting', __( 'Unrecognized background setting.' ) );
     4116                                break;
    41074117                }
    41084118                return $value;
    41094119        }