<?php
/**
 * Customizer settings: buttons
 *
 * @package Multi
 */

if ( ! defined( 'ABSPATH' ) ) {
	die;
}

/**
 * Customizer settings for buttons
 */
class Multimagazine_Customize_Buttons {

	/**
	 * Registers the section and fires the extension hook.
	 *
	 * @param WP_Customize_Manager $wp_customize Customizer manager instance.
	 */
	public static function register_section( $wp_customize ) {
		$wp_customize->add_panel(
			'multi_buttons',
			array(
				'title'    => __( 'Buttons', 'multimagazine' ),
				'priority' => 37,
			)
		);

		$wp_customize->add_section(
			'multi_buttons_basic',
			array(
				'title' => __( 'Basic settings', 'multimagazine' ),
				'panel' => 'multi_buttons',
			)
		);
		do_action( 'multimagazine_customize_multi_buttons_basic', $wp_customize );

		$wp_customize->add_section(
			'multi_buttons_secondary',
			array(
				'title' => __( 'Secondary buttons', 'multimagazine' ),
				'panel' => 'multi_buttons',
			)
		);
		do_action( 'multimagazine_customize_multi_buttons_secondary', $wp_customize );
	}

	/* Basic section */

	/**
	 * Registers the button border radius setting.
	 */
	public static function register_button_border_radius() {
		multimagazine_register_range_setting( 'multi_buttons_basic', 'multi_button_border_radius', __( 'Buttons border radius', 'multimagazine' ), MULTIMAGAZINE_BUTTON_BORDER_RADIUS, 0, 100, __( 'Number of pixels', 'multimagazine' ), 1, 'postMessage' );
	}

	/**
	 * Registers the buttons size setting.
	 */
	public static function register_buttons_size() {
		global $multimagazine_customize;
		$multimagazine_customize->select_setting(
			'multi_buttons_size',
			'multi_buttons_basic',
			array(
				'small'    => __( 'Small', 'multimagazine' ),
				'normal'   => __( 'Normal (default)', 'multimagazine' ),
				'large'    => __( 'Large', 'multimagazine' ),
				'x-large'  => __( 'X-Large', 'multimagazine' ),
				'xx-large' => __( 'XX-Large', 'multimagazine' ),
			),
			__( 'Buttons size', 'multimagazine' )
		);
	}

	/**
	 * Registers the button animation setting.
	 */
	public static function register_button_animation() {
		global $multimagazine_customize;
		$multimagazine_customize->select_setting(
			'multi_button_animation',
			'multi_buttons_basic',
			array(
				'fade'          => __( 'Fade (default)', 'multimagazine' ),
				'grow-l'        => __( 'Grow from left', 'multimagazine' ),
				'grow-l2'       => __( 'Grow from left 2', 'multimagazine' ),
				'grow-r'        => __( 'Grow from right', 'multimagazine' ),
				'grow-r2'       => __( 'Grow from right 2', 'multimagazine' ),
				'grow-lr'       => __( 'Grow from left and right', 'multimagazine' ),
				'grow-m'        => __( 'Grow from middle', 'multimagazine' ),
				'grow-m-circle' => __( 'Grow from middle circle', 'multimagazine' ),
				'grow-c-circle' => __( 'Grow from cursor circle', 'multimagazine' ),
				'grow-top'      => __( 'Grow from top', 'multimagazine' ),
				'grow-bottom'   => __( 'Grow from bottom', 'multimagazine' ),
			),
			__( 'Mouse over animation', 'multimagazine' )
		);
	}

	/**
	 * Registers the button lift setting.
	 */
	public static function register_button_lift() {
		multimagazine_register_range_setting( 'multi_buttons_basic', 'multi_button_lift', __( 'Lift on hover', 'multimagazine' ), MULTIMAGAZINE_BUTTON_LIFT, 0, 30, __( 'Number of pixels', 'multimagazine' ), 1, 'postMessage' );
	}

	/**
	 * Registers the buttons type setting.
	 */
	public static function register_buttons_type() {
		global $multimagazine_customize;
		$multimagazine_customize->select_setting(
			'multi_buttons_type',
			'multi_buttons_basic',
			array(
				'flat'     => __( 'Flat (default)', 'multimagazine' ),
				'vista'    => __( 'Vista', 'multimagazine' ),
				'gradient' => __( 'Gradient', 'multimagazine' ),
			),
			__( 'Buttons type', 'multimagazine' )
		);
	}

	/**
	 * Adds the button padding heading.
	 */
	public static function register_button_padding_heading() {
		multimagazine_add_heading( 'multi_button_padding_title', 'multi_buttons_basic', __( 'Padding', 'multimagazine' ) );
	}

	/**
	 * Registers the button padding top setting.
	 */
	public static function register_button_padding_top() {
		global $multimagazine_customize;
		$multimagazine_customize->text_setting( 'multi_button_padding_top', 'multi_buttons_basic', __( 'Top padding', 'multimagazine' ), __( 'Any css-compatible padding value', 'multimagazine' ) );
	}

	/**
	 * Registers the button padding right setting.
	 */
	public static function register_button_padding_right() {
		global $multimagazine_customize;
		$multimagazine_customize->text_setting( 'multi_button_padding_right', 'multi_buttons_basic', __( 'Right padding', 'multimagazine' ), __( 'Any css-compatible padding value', 'multimagazine' ) );
	}

	/**
	 * Registers the button padding bottom setting.
	 */
	public static function register_button_padding_bottom() {
		global $multimagazine_customize;
		$multimagazine_customize->text_setting( 'multi_button_padding_bottom', 'multi_buttons_basic', __( 'Bottom padding', 'multimagazine' ), __( 'Any css-compatible padding value', 'multimagazine' ) );
	}

	/**
	 * Registers the button padding left setting.
	 */
	public static function register_button_padding_left() {
		global $multimagazine_customize;
		$multimagazine_customize->text_setting( 'multi_button_padding_left', 'multi_buttons_basic', __( 'Left padding', 'multimagazine' ), __( 'Any css-compatible padding value', 'multimagazine' ) );
	}

	/**
	 * Adds the button colors heading.
	 */
	public static function register_button_colors_heading() {
		multimagazine_add_heading( 'multi_button_colors_title', 'multi_buttons_basic', __( 'Background', 'multimagazine' ) );
	}

	/**
	 * Registers the button color setting.
	 */
	public static function register_button_color() {
		global $multimagazine_customize;
		$multimagazine_customize->color_setting( 'multi_button_color', 'multi_buttons_basic', __( 'Button background color', 'multimagazine' ), '', 'postMessage' );
	}

	/**
	 * Registers the button color hover setting.
	 */
	public static function register_button_color_hover() {
		global $multimagazine_customize;
		$multimagazine_customize->color_setting( 'multi_button_color_hover', 'multi_buttons_basic', __( 'Button background hover color', 'multimagazine' ), '', 'postMessage' );
	}

	/**
	 * Registers the button color2 setting.
	 */
	public static function register_button_color2() {
		global $multimagazine_customize;
		$multimagazine_customize->color_setting( 'multi_button_color2', 'multi_buttons_basic', __( 'Button gradient color', 'multimagazine' ), '', 'postMessage' );
	}

	/**
	 * Registers the button color2 hover setting.
	 */
	public static function register_button_color2_hover() {
		global $multimagazine_customize;
		$multimagazine_customize->color_setting( 'multi_button_color2_hover', 'multi_buttons_basic', __( 'Button gradient color on hover', 'multimagazine' ), '', 'postMessage' );
	}

	/**
	 * Registers the button gradient direction setting.
	 */
	public static function register_button_gradient_direction() {
		global $multimagazine_customize;
		$multimagazine_customize->select_setting(
			'multi_button_gradient_direction',
			'multi_buttons_basic',
			array(
				'to bottom'       => __( 'to bottom', 'multimagazine' ),
				'to top'          => __( 'to top', 'multimagazine' ),
				'to right'        => __( 'to right', 'multimagazine' ),
				'to left'         => __( 'to left', 'multimagazine' ),
				'to top right'    => __( 'to top right', 'multimagazine' ),
				'to top left'     => __( 'to top left', 'multimagazine' ),
				'to bottom right' => __( 'to bottom right', 'multimagazine' ),
				'to bottom left'  => __( 'to bottom left', 'multimagazine' ),
			),
			__( 'Buttons gradient direction', 'multimagazine' ),
			'',
			'postMessage'
		);
	}

	/**
	 * Registers the button gradient hover direction setting.
	 */
	public static function register_button_gradient_hover_direction() {
		global $multimagazine_customize;
		$multimagazine_customize->select_setting(
			'multi_button_gradient_hover_direction',
			'multi_buttons_basic',
			array(
				'to bottom'       => __( 'to bottom', 'multimagazine' ),
				'to top'          => __( 'to top', 'multimagazine' ),
				'to right'        => __( 'to right', 'multimagazine' ),
				'to left'         => __( 'to left', 'multimagazine' ),
				'to top right'    => __( 'to top right', 'multimagazine' ),
				'to top left'     => __( 'to top left', 'multimagazine' ),
				'to bottom right' => __( 'to bottom right', 'multimagazine' ),
				'to bottom left'  => __( 'to bottom left', 'multimagazine' ),
			),
			__( 'Buttons gradient direction on hover', 'multimagazine' ),
			'',
			'postMessage'
		);
	}

	/**
	 * Adds the button border heading.
	 */
	public static function register_button_border_heading() {
		multimagazine_add_heading( 'multi_border_width_title', 'multi_buttons_basic', __( 'Border', 'multimagazine' ) );
	}

	/**
	 * Registers the button border top width setting.
	 */
	public static function register_button_border_top_width() {
		multimagazine_register_range_setting( 'multi_buttons_basic', 'multi_button_border_top_width', __( 'Top border width', 'multimagazine' ), MULTIMAGAZINE_BUTTON_BORDER_TOP_WIDTH, 0, 10, __( 'Number of pixels', 'multimagazine' ), 1, 'postMessage' );
	}

	/**
	 * Registers the button border right width setting.
	 */
	public static function register_button_border_right_width() {
		multimagazine_register_range_setting( 'multi_buttons_basic', 'multi_button_border_right_width', __( 'Right border width', 'multimagazine' ), MULTIMAGAZINE_BUTTON_BORDER_RIGHT_WIDTH, 0, 10, __( 'Number of pixels', 'multimagazine' ), 1, 'postMessage' );
	}

	/**
	 * Registers the button border bottom width setting.
	 */
	public static function register_button_border_bottom_width() {
		multimagazine_register_range_setting( 'multi_buttons_basic', 'multi_button_border_bottom_width', __( 'Bottom border width', 'multimagazine' ), MULTIMAGAZINE_BUTTON_BORDER_BOTTOM_WIDTH, 0, 10, __( 'Number of pixels', 'multimagazine' ), 1, 'postMessage' );
	}

	/**
	 * Registers the button border left width setting.
	 */
	public static function register_button_border_left_width() {
		multimagazine_register_range_setting( 'multi_buttons_basic', 'multi_button_border_left_width', __( 'Left border width', 'multimagazine' ), MULTIMAGAZINE_BUTTON_BORDER_LEFT_WIDTH, 0, 10, __( 'Number of pixels', 'multimagazine' ), 1, 'postMessage' );
	}

	/**
	 * Registers the button border color setting.
	 */
	public static function register_button_border_color() {
		global $multimagazine_customize;
		$multimagazine_customize->color_setting( 'multi_button_border_color', 'multi_buttons_basic', __( 'Buttons border color', 'multimagazine' ), '', 'postMessage' );
	}

	/**
	 * Registers the button border hover color setting.
	 */
	public static function register_button_border_hover_color() {
		global $multimagazine_customize;
		$multimagazine_customize->color_setting( 'multi_button_border_hover_color', 'multi_buttons_basic', __( 'Buttons border color on hover', 'multimagazine' ), '', 'postMessage' );
	}

	/**
	 * Adds the button text heading.
	 */
	public static function register_button_text_heading() {
		multimagazine_add_heading( 'multi_button_text_title', 'multi_buttons_basic', __( 'Text settings', 'multimagazine' ) );
	}

	/**
	 * Registers the button text color setting.
	 */
	public static function register_button_text_color() {
		global $multimagazine_customize;
		$multimagazine_customize->color_setting( 'multi_button_text_color', 'multi_buttons_basic', __( 'Buttons text color', 'multimagazine' ), '', 'postMessage' );
	}

	/**
	 * Registers the button text hover color setting.
	 */
	public static function register_button_text_hover_color() {
		global $multimagazine_customize;
		$multimagazine_customize->color_setting( 'multi_button_text_hover_color', 'multi_buttons_basic', __( 'Buttons text color on hover', 'multimagazine' ), '', 'postMessage' );
	}

	/**
	 * Registers the button text transform setting.
	 */
	public static function register_button_text_transform() {
		global $multimagazine_customize;
		$multimagazine_customize->select_setting(
			'multi_button_text_transform',
			'multi_buttons_basic',
			array(
				'uppercase'  => __( 'Uppercase', 'multimagazine' ),
				'lowercase'  => __( 'Lowercase', 'multimagazine' ),
				'capitalize' => __( 'Capitalize', 'multimagazine' ),
				'none'       => __( 'None', 'multimagazine' ),
			),
			__( 'Button text transform', 'multimagazine' ),
			'',
			'postMessage'
		);
	}

	/**
	 * Adds the button shadow heading.
	 */
	public static function register_button_shadow_heading() {
		multimagazine_add_heading( 'multi_buttons_shadow_title', 'multi_buttons_basic', __( 'Shadow', 'multimagazine' ) );
	}

	/**
	 * Registers the button shadow color setting.
	 */
	public static function register_button_shadow_color() {
		global $multimagazine_customize;
		$multimagazine_customize->color_alpha_setting( 'multi_button_shadow_color', 'multi_buttons_basic', __( 'Shadow color', 'multimagazine' ), __( 'No shadow if this field is empty', 'multimagazine' ) );
	}

	/**
	 * Registers the button shadow blur setting.
	 */
	public static function register_button_shadow_blur() {
		multimagazine_register_range_setting( 'multi_buttons_basic', 'multi_button_shadow_blur', __( 'Shadow blur', 'multimagazine' ), MULTIMAGAZINE_BUTTON_SHADOW_BLUR, 0, 100, __( 'Number of pixels', 'multimagazine' ), 1, 'postMessage' );
	}

	/**
	 * Registers the button shadow x offset setting.
	 */
	public static function register_button_shadow_x_offset() {
		multimagazine_register_range_setting( 'multi_buttons_basic', 'multi_button_shadow_x_offset', __( 'Shadow horizontal offset', 'multimagazine' ), MULTIMAGAZINE_BUTTON_SHADOW_X_OFFSET, 0, 100, __( 'Number of pixels', 'multimagazine' ), 1, 'postMessage' );
	}

	/**
	 * Registers the button shadow y offset setting.
	 */
	public static function register_button_shadow_y_offset() {
		multimagazine_register_range_setting( 'multi_buttons_basic', 'multi_button_shadow_y_offset', __( 'Shadow vertical offset', 'multimagazine' ), MULTIMAGAZINE_BUTTON_SHADOW_Y_OFFSET, 0, 100, __( 'Number of pixels', 'multimagazine' ), 1, 'postMessage' );
	}

	/**
	 * Adds the button shadow hover heading.
	 */
	public static function register_button_shadow_hover_heading() {
		multimagazine_add_heading( 'multi_buttons_shadow_hover_title', 'multi_buttons_basic', __( 'Mouse over shadow', 'multimagazine' ) );
	}

	/**
	 * Registers the button shadow color hover setting.
	 */
	public static function register_button_shadow_color_hover() {
		global $multimagazine_customize;
		$multimagazine_customize->color_alpha_setting( 'multi_button_shadow_color_hover', 'multi_buttons_basic', __( 'Shadow color', 'multimagazine' ), __( 'No shadow if this field is empty', 'multimagazine' ) );
	}

	/**
	 * Registers the button shadow blur hover setting.
	 */
	public static function register_button_shadow_blur_hover() {
		multimagazine_register_range_setting( 'multi_buttons_basic', 'multi_button_shadow_blur_hover', __( 'Shadow blur', 'multimagazine' ), MULTIMAGAZINE_BUTTON_SHADOW_BLUR_HOVER, 0, 100, __( 'Number of pixels', 'multimagazine' ), 1, 'postMessage' );
	}

	/**
	 * Registers the button shadow x offset hover setting.
	 */
	public static function register_button_shadow_x_offset_hover() {
		multimagazine_register_range_setting( 'multi_buttons_basic', 'multi_button_shadow_x_offset_hover', __( 'Shadow horizontal offset', 'multimagazine' ), MULTIMAGAZINE_BUTTON_SHADOW_X_OFFSET_HOVER, 0, 100, __( 'Number of pixels', 'multimagazine' ), 1, 'postMessage' );
	}

	/**
	 * Registers the button shadow y offset hover setting.
	 */
	public static function register_button_shadow_y_offset_hover() {
		multimagazine_register_range_setting( 'multi_buttons_basic', 'multi_button_shadow_y_offset_hover', __( 'Shadow vertical offset', 'multimagazine' ), MULTIMAGAZINE_BUTTON_SHADOW_Y_OFFSET_HOVER, 0, 100, __( 'Number of pixels', 'multimagazine' ), 1, 'postMessage' );
	}

	/* Secondary section */

	/**
	 * Adds the sec button colors heading.
	 */
	public static function register_sec_button_colors_heading() {
		multimagazine_add_heading( 'multi_buttons_secondary_color_title', 'multi_buttons_secondary', __( 'Background', 'multimagazine' ) );
	}

	/**
	 * Registers the sec button color setting.
	 */
	public static function register_sec_button_color() {
		global $multimagazine_customize;
		$multimagazine_customize->color_setting( 'multi_sec_button_color', 'multi_buttons_secondary', __( 'Secondary button background color', 'multimagazine' ), '', 'postMessage' );
	}

	/**
	 * Registers the sec button color hover setting.
	 */
	public static function register_sec_button_color_hover() {
		global $multimagazine_customize;
		$multimagazine_customize->color_setting( 'multi_sec_button_color_hover', 'multi_buttons_secondary', __( 'Secondary button background hover color', 'multimagazine' ), '', 'postMessage' );
	}

	/**
	 * Registers the sec button color2 setting.
	 */
	public static function register_sec_button_color2() {
		global $multimagazine_customize;
		$multimagazine_customize->color_setting( 'multi_sec_button_color2', 'multi_buttons_secondary', __( 'Secondary button gradient color', 'multimagazine' ), '', 'postMessage' );
	}

	/**
	 * Registers the sec button color2 hover setting.
	 */
	public static function register_sec_button_color2_hover() {
		global $multimagazine_customize;
		$multimagazine_customize->color_setting( 'multi_sec_button_color2_hover', 'multi_buttons_secondary', __( 'Secondary button gradient color on hover', 'multimagazine' ), '', 'postMessage' );
	}

	/**
	 * Adds the sec button border heading.
	 */
	public static function register_sec_button_border_heading() {
		multimagazine_add_heading( 'multi_buttons_secondary_border_title', 'multi_buttons_secondary', __( 'Border', 'multimagazine' ) );
	}

	/**
	 * Registers the sec button border color setting.
	 */
	public static function register_sec_button_border_color() {
		global $multimagazine_customize;
		$multimagazine_customize->color_setting( 'multi_sec_button_border_color', 'multi_buttons_secondary', __( 'Secondary button border color', 'multimagazine' ), '', 'postMessage' );
	}

	/**
	 * Registers the sec button border color hover setting.
	 */
	public static function register_sec_button_border_color_hover() {
		global $multimagazine_customize;
		$multimagazine_customize->color_setting( 'multi_sec_button_border_color_hover', 'multi_buttons_secondary', __( 'Secondary button border color on hover', 'multimagazine' ), '', 'postMessage' );
	}

	/**
	 * Registers the sec button border top width setting.
	 */
	public static function register_sec_button_border_top_width() {
		multimagazine_register_range_setting( 'multi_buttons_secondary', 'multi_sec_button_border_top_width', __( 'Top border width', 'multimagazine' ), MULTIMAGAZINE_SEC_BUTTON_BORDER_TOP_WIDTH, 0, 10, __( 'Number of pixels', 'multimagazine' ), 1, 'postMessage' );
	}

	/**
	 * Registers the sec button border right width setting.
	 */
	public static function register_sec_button_border_right_width() {
		multimagazine_register_range_setting( 'multi_buttons_secondary', 'multi_sec_button_border_right_width', __( 'Right border width', 'multimagazine' ), MULTIMAGAZINE_SEC_BUTTON_BORDER_RIGHT_WIDTH, 0, 10, __( 'Number of pixels', 'multimagazine' ), 1, 'postMessage' );
	}

	/**
	 * Registers the sec button border bottom width setting.
	 */
	public static function register_sec_button_border_bottom_width() {
		multimagazine_register_range_setting( 'multi_buttons_secondary', 'multi_sec_button_border_bottom_width', __( 'Bottom border width', 'multimagazine' ), MULTIMAGAZINE_SEC_BUTTON_BORDER_BOTTOM_WIDTH, 0, 10, __( 'Number of pixels', 'multimagazine' ), 1, 'postMessage' );
	}

	/**
	 * Registers the sec button border left width setting.
	 */
	public static function register_sec_button_border_left_width() {
		multimagazine_register_range_setting( 'multi_buttons_secondary', 'multi_sec_button_border_left_width', __( 'Left border width', 'multimagazine' ), MULTIMAGAZINE_SEC_BUTTON_BORDER_LEFT_WIDTH, 0, 10, __( 'Number of pixels', 'multimagazine' ), 1, 'postMessage' );
	}

	/**
	 * Adds the sec button text heading.
	 */
	public static function register_sec_button_text_heading() {
		multimagazine_add_heading( 'multi_buttons_secondary_text_title', 'multi_buttons_secondary', __( 'Text', 'multimagazine' ) );
	}

	/**
	 * Registers the sec button text color setting.
	 */
	public static function register_sec_button_text_color() {
		global $multimagazine_customize;
		$multimagazine_customize->color_setting( 'multi_sec_button_text_color', 'multi_buttons_secondary', __( 'Text color', 'multimagazine' ), '', 'postMessage' );
	}

	/**
	 * Registers the sec button text color hover setting.
	 */
	public static function register_sec_button_text_color_hover() {
		global $multimagazine_customize;
		$multimagazine_customize->color_setting( 'multi_sec_button_text_color_hover', 'multi_buttons_secondary', __( 'Text color on hover', 'multimagazine' ), '', 'postMessage' );
	}
}

add_action( 'customize_register', array( 'Multimagazine_Customize_Buttons', 'register_section' ) );
add_action( 'multimagazine_customize_multi_buttons_basic', array( 'Multimagazine_Customize_Buttons', 'register_button_border_radius' ), 10 );
add_action( 'multimagazine_customize_multi_buttons_basic', array( 'Multimagazine_Customize_Buttons', 'register_buttons_size' ), 15 );
add_action( 'multimagazine_customize_multi_buttons_basic', array( 'Multimagazine_Customize_Buttons', 'register_button_animation' ), 20 );
add_action( 'multimagazine_customize_multi_buttons_basic', array( 'Multimagazine_Customize_Buttons', 'register_button_lift' ), 25 );
add_action( 'multimagazine_customize_multi_buttons_basic', array( 'Multimagazine_Customize_Buttons', 'register_buttons_type' ), 30 );
add_action( 'multimagazine_customize_multi_buttons_basic', array( 'Multimagazine_Customize_Buttons', 'register_button_padding_heading' ), 35 );
add_action( 'multimagazine_customize_multi_buttons_basic', array( 'Multimagazine_Customize_Buttons', 'register_button_padding_top' ), 40 );
add_action( 'multimagazine_customize_multi_buttons_basic', array( 'Multimagazine_Customize_Buttons', 'register_button_padding_right' ), 45 );
add_action( 'multimagazine_customize_multi_buttons_basic', array( 'Multimagazine_Customize_Buttons', 'register_button_padding_bottom' ), 50 );
add_action( 'multimagazine_customize_multi_buttons_basic', array( 'Multimagazine_Customize_Buttons', 'register_button_padding_left' ), 55 );
add_action( 'multimagazine_customize_multi_buttons_basic', array( 'Multimagazine_Customize_Buttons', 'register_button_colors_heading' ), 60 );
add_action( 'multimagazine_customize_multi_buttons_basic', array( 'Multimagazine_Customize_Buttons', 'register_button_color' ), 65 );
add_action( 'multimagazine_customize_multi_buttons_basic', array( 'Multimagazine_Customize_Buttons', 'register_button_color_hover' ), 70 );
add_action( 'multimagazine_customize_multi_buttons_basic', array( 'Multimagazine_Customize_Buttons', 'register_button_color2' ), 75 );
add_action( 'multimagazine_customize_multi_buttons_basic', array( 'Multimagazine_Customize_Buttons', 'register_button_color2_hover' ), 80 );
add_action( 'multimagazine_customize_multi_buttons_basic', array( 'Multimagazine_Customize_Buttons', 'register_button_gradient_direction' ), 85 );
add_action( 'multimagazine_customize_multi_buttons_basic', array( 'Multimagazine_Customize_Buttons', 'register_button_gradient_hover_direction' ), 90 );
add_action( 'multimagazine_customize_multi_buttons_basic', array( 'Multimagazine_Customize_Buttons', 'register_button_border_heading' ), 95 );
add_action( 'multimagazine_customize_multi_buttons_basic', array( 'Multimagazine_Customize_Buttons', 'register_button_border_top_width' ), 100 );
add_action( 'multimagazine_customize_multi_buttons_basic', array( 'Multimagazine_Customize_Buttons', 'register_button_border_right_width' ), 105 );
add_action( 'multimagazine_customize_multi_buttons_basic', array( 'Multimagazine_Customize_Buttons', 'register_button_border_bottom_width' ), 110 );
add_action( 'multimagazine_customize_multi_buttons_basic', array( 'Multimagazine_Customize_Buttons', 'register_button_border_left_width' ), 115 );
add_action( 'multimagazine_customize_multi_buttons_basic', array( 'Multimagazine_Customize_Buttons', 'register_button_border_color' ), 120 );
add_action( 'multimagazine_customize_multi_buttons_basic', array( 'Multimagazine_Customize_Buttons', 'register_button_border_hover_color' ), 125 );
add_action( 'multimagazine_customize_multi_buttons_basic', array( 'Multimagazine_Customize_Buttons', 'register_button_text_heading' ), 130 );
add_action( 'multimagazine_customize_multi_buttons_basic', array( 'Multimagazine_Customize_Buttons', 'register_button_text_color' ), 135 );
add_action( 'multimagazine_customize_multi_buttons_basic', array( 'Multimagazine_Customize_Buttons', 'register_button_text_hover_color' ), 140 );
add_action( 'multimagazine_customize_multi_buttons_basic', array( 'Multimagazine_Customize_Buttons', 'register_button_text_transform' ), 145 );
add_action( 'multimagazine_customize_multi_buttons_basic', array( 'Multimagazine_Customize_Buttons', 'register_button_shadow_heading' ), 150 );
add_action( 'multimagazine_customize_multi_buttons_basic', array( 'Multimagazine_Customize_Buttons', 'register_button_shadow_color' ), 155 );
add_action( 'multimagazine_customize_multi_buttons_basic', array( 'Multimagazine_Customize_Buttons', 'register_button_shadow_blur' ), 160 );
add_action( 'multimagazine_customize_multi_buttons_basic', array( 'Multimagazine_Customize_Buttons', 'register_button_shadow_x_offset' ), 165 );
add_action( 'multimagazine_customize_multi_buttons_basic', array( 'Multimagazine_Customize_Buttons', 'register_button_shadow_y_offset' ), 170 );
add_action( 'multimagazine_customize_multi_buttons_basic', array( 'Multimagazine_Customize_Buttons', 'register_button_shadow_hover_heading' ), 175 );
add_action( 'multimagazine_customize_multi_buttons_basic', array( 'Multimagazine_Customize_Buttons', 'register_button_shadow_color_hover' ), 180 );
add_action( 'multimagazine_customize_multi_buttons_basic', array( 'Multimagazine_Customize_Buttons', 'register_button_shadow_blur_hover' ), 185 );
add_action( 'multimagazine_customize_multi_buttons_basic', array( 'Multimagazine_Customize_Buttons', 'register_button_shadow_x_offset_hover' ), 190 );
add_action( 'multimagazine_customize_multi_buttons_basic', array( 'Multimagazine_Customize_Buttons', 'register_button_shadow_y_offset_hover' ), 195 );
add_action( 'multimagazine_customize_multi_buttons_secondary', array( 'Multimagazine_Customize_Buttons', 'register_sec_button_colors_heading' ), 10 );
add_action( 'multimagazine_customize_multi_buttons_secondary', array( 'Multimagazine_Customize_Buttons', 'register_sec_button_color' ), 15 );
add_action( 'multimagazine_customize_multi_buttons_secondary', array( 'Multimagazine_Customize_Buttons', 'register_sec_button_color_hover' ), 20 );
add_action( 'multimagazine_customize_multi_buttons_secondary', array( 'Multimagazine_Customize_Buttons', 'register_sec_button_color2' ), 25 );
add_action( 'multimagazine_customize_multi_buttons_secondary', array( 'Multimagazine_Customize_Buttons', 'register_sec_button_color2_hover' ), 30 );
add_action( 'multimagazine_customize_multi_buttons_secondary', array( 'Multimagazine_Customize_Buttons', 'register_sec_button_border_heading' ), 35 );
add_action( 'multimagazine_customize_multi_buttons_secondary', array( 'Multimagazine_Customize_Buttons', 'register_sec_button_border_color' ), 40 );
add_action( 'multimagazine_customize_multi_buttons_secondary', array( 'Multimagazine_Customize_Buttons', 'register_sec_button_border_color_hover' ), 45 );
add_action( 'multimagazine_customize_multi_buttons_secondary', array( 'Multimagazine_Customize_Buttons', 'register_sec_button_border_top_width' ), 50 );
add_action( 'multimagazine_customize_multi_buttons_secondary', array( 'Multimagazine_Customize_Buttons', 'register_sec_button_border_right_width' ), 55 );
add_action( 'multimagazine_customize_multi_buttons_secondary', array( 'Multimagazine_Customize_Buttons', 'register_sec_button_border_bottom_width' ), 60 );
add_action( 'multimagazine_customize_multi_buttons_secondary', array( 'Multimagazine_Customize_Buttons', 'register_sec_button_border_left_width' ), 65 );
add_action( 'multimagazine_customize_multi_buttons_secondary', array( 'Multimagazine_Customize_Buttons', 'register_sec_button_text_heading' ), 70 );
add_action( 'multimagazine_customize_multi_buttons_secondary', array( 'Multimagazine_Customize_Buttons', 'register_sec_button_text_color' ), 75 );
add_action( 'multimagazine_customize_multi_buttons_secondary', array( 'Multimagazine_Customize_Buttons', 'register_sec_button_text_color_hover' ), 80 );
