112 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			112 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <?php
 | |
| 
 | |
| /**
 | |
|  * Misc. helper functions
 | |
|  *
 | |
|  * @author Dzikri Aziz <kvcrvt@gmail.com>
 | |
|  */
 | |
| 
 | |
| 
 | |
| if ( ! function_exists( 'kucrut_get_array_value_deep' ) ) {
 | |
| 	/**
 | |
| 	 * Get value of a multidimensional array
 | |
| 	 *
 | |
| 	 * @since  0.1.0
 | |
| 	 * @param  array $array Haystack
 | |
| 	 * @param  array $keys  Needles
 | |
| 	 * @return mixed
 | |
| 	 */
 | |
| 	function kucrut_get_array_value_deep( array $array, array $keys ) {
 | |
| 		if ( empty( $array ) || empty( $keys ) ) {
 | |
| 			return $array;
 | |
| 		}
 | |
| 
 | |
| 		foreach ( $keys as $idx => $key ) {
 | |
| 			unset( $keys[ $idx ] );
 | |
| 
 | |
| 			if ( ! isset( $array[ $key ] ) ) {
 | |
| 				return null;
 | |
| 			}
 | |
| 
 | |
| 			if ( ! empty( $keys ) ) {
 | |
| 				$array = $array[ $key ];
 | |
| 			}
 | |
| 		}
 | |
| 
 | |
| 		if ( ! isset( $array[ $key ] ) ) {
 | |
| 			return null;
 | |
| 		}
 | |
| 
 | |
| 		return $array[ $key ];
 | |
| 	}
 | |
| }
 | |
| 
 | |
| 
 | |
| if ( ! function_exists( 'kucrut_validate' ) ) {
 | |
| 	/**
 | |
| 	 * Validate settings values
 | |
| 	 *
 | |
| 	 * @param  array $values Settings values
 | |
| 	 * @return array
 | |
| 	 */
 | |
| 	function kucrut_validate( $values, $sanitize_cb = 'wp_kses_data' ) {
 | |
| 		foreach ( $values as $key => $value ) {
 | |
| 			if ( is_array( $value ) ) {
 | |
| 				$values[ $key ] = kucrut_validate( $value );
 | |
| 			} else {
 | |
| 				$values[ $key ] = call_user_func_array(
 | |
| 					$sanitize_cb,
 | |
| 					array( $value )
 | |
| 				);
 | |
| 			}
 | |
| 		}
 | |
| 
 | |
| 		return $values;
 | |
| 	}
 | |
| }
 | |
| 
 | |
| 
 | |
| if ( ! function_exists( 'kucrut_get_image_sizes' ) ) {
 | |
| 	/**
 | |
| 	 * Get image sizes
 | |
| 	 *
 | |
| 	 * @since  0.9.0
 | |
| 	 * @access protected
 | |
| 	 * @return array
 | |
| 	 */
 | |
| 	function kucrut_get_image_sizes() {
 | |
| 		$_sizes = array(
 | |
| 			'thumbnail' => __( 'Thumbnail', 'menu-icons' ),
 | |
| 			'medium'    => __( 'Medium', 'menu-icons' ),
 | |
| 			'large'     => __( 'Large', 'menu-icons' ),
 | |
| 			'full'      => __( 'Full Size', 'menu-icons' ),
 | |
| 		);
 | |
| 
 | |
| 		$_sizes = apply_filters( 'image_size_names_choose', $_sizes );
 | |
| 
 | |
| 		$sizes = array();
 | |
| 		foreach ( $_sizes as $value => $label ) {
 | |
| 			$sizes[] = array(
 | |
| 				'value' => $value,
 | |
| 				'label' => $label,
 | |
| 			);
 | |
| 		}
 | |
| 
 | |
| 		return $sizes;
 | |
| 	}
 | |
| }
 | |
| 
 | |
| 
 | |
| if ( ! function_exists( 'kucrut_get_script_suffix' ) ) {
 | |
| 	/**
 | |
| 	 * Get script & style suffix
 | |
| 	 *
 | |
| 	 * When SCRIPT_DEBUG is defined true, this will return '.min'.
 | |
| 	 *
 | |
| 	 * @return string
 | |
| 	 */
 | |
| 	function kucrut_get_script_suffix() {
 | |
| 		return ( defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ) ? '' : '.min';
 | |
| 	}
 | |
| }
 |