<?php
/**
 * Theme Options related to slider
 *
 * @package Education_Soul
 */

$default = education_soul_get_default_theme_options();

// Home Section Featured Slider.
$wp_customize->add_section(
	'section_home_featured_slider',
	array(
		'title'      => __( 'Featured Slider', 'education-soul-pro' ),
		'priority'   => 50,
		'capability' => 'edit_theme_options',
		'panel'      => 'theme_home_sections_panel',
	)
);

// Setting featured_slider_transition_effect.
$wp_customize->add_setting(
	'theme_options[featured_slider_transition_effect]',
	array(
		'default'           => $default['featured_slider_transition_effect'],
		'capability'        => 'edit_theme_options',
		'sanitize_callback' => 'education_soul_sanitize_select',
	)
);
$wp_customize->add_control(
	'theme_options[featured_slider_transition_effect]',
	array(
		'label'    => __( 'Transition Effect', 'education-soul-pro' ),
		'section'  => 'section_home_featured_slider',
		'type'     => 'select',
		'priority' => 100,
		'choices'  => education_soul_get_featured_slider_transition_effects(),
	)
);

// Setting featured_slider_transition_delay.
$wp_customize->add_setting(
	'theme_options[featured_slider_transition_delay]',
	array(
		'default'           => $default['featured_slider_transition_delay'],
		'capability'        => 'edit_theme_options',
		'sanitize_callback' => 'education_soul_sanitize_number_range',
	)
);
$wp_customize->add_control(
	'theme_options[featured_slider_transition_delay]',
	array(
		'label'       => __( 'Transition Delay', 'education-soul-pro' ),
		'description' => __( 'in seconds', 'education-soul-pro' ),
		'section'     => 'section_home_featured_slider',
		'type'        => 'number',
		'priority'    => 100,
		'input_attrs' => array(
			'min'   => 1,
			'max'   => 10,
			'step'  => 1,
			'style' => 'width: 55px;',
		),
	)
);

// Setting featured_slider_transition_duration.
$wp_customize->add_setting(
	'theme_options[featured_slider_transition_duration]',
	array(
		'default'           => $default['featured_slider_transition_duration'],
		'capability'        => 'edit_theme_options',
		'sanitize_callback' => 'education_soul_sanitize_number_range',
	)
);
$wp_customize->add_control(
	'theme_options[featured_slider_transition_duration]',
	array(
		'label'       => __( 'Transition Duration', 'education-soul-pro' ),
		'description' => __( 'in seconds', 'education-soul-pro' ),
		'section'     => 'section_home_featured_slider',
		'type'        => 'number',
		'priority'    => 100,
		'input_attrs' => array(
			'min'   => 1,
			'max'   => 10,
			'step'  => 1,
			'style' => 'width: 55px;',
		),
	)
);

// Setting featured_slider_enable_caption.
$wp_customize->add_setting(
	'theme_options[featured_slider_enable_caption]',
	array(
		'default'           => $default['featured_slider_enable_caption'],
		'capability'        => 'edit_theme_options',
		'sanitize_callback' => 'education_soul_sanitize_checkbox',
	)
);
$wp_customize->add_control(
	'theme_options[featured_slider_enable_caption]',
	array(
		'label'    => __( 'Enable Caption', 'education-soul-pro' ),
		'section'  => 'section_home_featured_slider',
		'type'     => 'checkbox',
		'priority' => 100,
	)
);

// Setting featured_slider_caption_alignment.
$wp_customize->add_setting(
	'theme_options[featured_slider_caption_alignment]',
	array(
		'default'           => $default['featured_slider_caption_alignment'],
		'capability'        => 'edit_theme_options',
		'sanitize_callback' => 'education_soul_sanitize_select',
	)
);
$wp_customize->add_control(
	'theme_options[featured_slider_caption_alignment]',
	array(
		'label'           => __( 'Caption Alignment', 'education-soul-pro' ),
		'section'         => 'section_home_featured_slider',
		'type'            => 'select',
		'priority'        => 100,
		'choices'         => education_soul_get_slider_caption_alignment_options(),
		'active_callback' => 'education_soul_is_featured_slider_caption_active',
	)
);

// Setting featured_slider_enable_arrow.
$wp_customize->add_setting(
	'theme_options[featured_slider_enable_arrow]',
	array(
		'default'           => $default['featured_slider_enable_arrow'],
		'capability'        => 'edit_theme_options',
		'sanitize_callback' => 'education_soul_sanitize_checkbox',
	)
);
$wp_customize->add_control(
	'theme_options[featured_slider_enable_arrow]',
	array(
		'label'    => __( 'Enable Arrow', 'education-soul-pro' ),
		'section'  => 'section_home_featured_slider',
		'type'     => 'checkbox',
		'priority' => 100,
	)
);

// Setting featured_slider_enable_pager.
$wp_customize->add_setting(
	'theme_options[featured_slider_enable_pager]',
	array(
		'default'           => $default['featured_slider_enable_pager'],
		'capability'        => 'edit_theme_options',
		'sanitize_callback' => 'education_soul_sanitize_checkbox',
	)
);
$wp_customize->add_control(
	'theme_options[featured_slider_enable_pager]',
	array(
		'label'    => __( 'Enable Pager', 'education-soul-pro' ),
		'section'  => 'section_home_featured_slider',
		'type'     => 'checkbox',
		'priority' => 100,
	)
);

// Setting featured_slider_enable_autoplay.
$wp_customize->add_setting(
	'theme_options[featured_slider_enable_autoplay]',
	array(
		'default'           => $default['featured_slider_enable_autoplay'],
		'capability'        => 'edit_theme_options',
		'sanitize_callback' => 'education_soul_sanitize_checkbox',
	)
);
$wp_customize->add_control(
	'theme_options[featured_slider_enable_autoplay]',
	array(
		'label'    => __( 'Enable Autoplay', 'education-soul-pro' ),
		'section'  => 'section_home_featured_slider',
		'type'     => 'checkbox',
		'priority' => 100,
	)
);

// Setting featured_slider_type.
$wp_customize->add_setting(
	'theme_options[featured_slider_type]',
	array(
		'default'           => $default['featured_slider_type'],
		'capability'        => 'edit_theme_options',
		'sanitize_callback' => 'education_soul_sanitize_select',
	)
);
$wp_customize->add_control(
	'theme_options[featured_slider_type]',
	array(
		'label'    => __( 'Select Slider Type', 'education-soul-pro' ),
		'section'  => 'section_home_featured_slider',
		'type'     => 'select',
		'priority' => 100,
		'choices'  => education_soul_get_featured_slider_type(),
	)
);

// Setting featured_slider_number.
$wp_customize->add_setting(
	'theme_options[featured_slider_number]',
	array(
		'default'           => $default['featured_slider_number'],
		'capability'        => 'edit_theme_options',
		'transport'         => 'postMessage',
		'sanitize_callback' => 'education_soul_sanitize_number_range',
	)
);
$wp_customize->add_control(
	'theme_options[featured_slider_number]',
	array(
		'label'           => __( 'No of Slides', 'education-soul-pro' ),
		'description'     => __( 'Enter number between 1 and 10. Save and refresh the page if No of Slides is changed.', 'education-soul-pro' ),
		'section'         => 'section_home_featured_slider',
		'type'            => 'number',
		'priority'        => 100,
		'active_callback' => 'education_soul_is_featured_slider_active_non_demo',
		'input_attrs'     => array(
			'min'   => 1,
			'max'   => 10,
			'step'  => 1,
			'style' => 'width: 55px;',
		),
	)
);

$featured_slider_number = absint( education_soul_get_option( 'featured_slider_number' ) );

if ( $featured_slider_number > 0 ) {
	for ( $i = 1; $i <= $featured_slider_number; $i++ ) {
		$wp_customize->add_setting(
			"theme_options[featured_slider_page_$i]",
			array(
				'default'           => isset( $default[ 'featured_slider_page_' . $i ] ) ? $default[ 'featured_slider_page_' . $i ] : '',
				'capability'        => 'edit_theme_options',
				'sanitize_callback' => 'education_soul_sanitize_dropdown_pages',
			)
		);
		$wp_customize->add_control(
			"theme_options[featured_slider_page_$i]",
			array(
				'label'           => __( 'Featured Page', 'education-soul-pro' ) . ' - ' . $i,
				'section'         => 'section_home_featured_slider',
				'type'            => 'dropdown-pages',
				'priority'        => 100,
				'active_callback' => 'education_soul_is_featured_page_slider_active',
			)
		);
	} // End for loop.
}

// For multiple posts.
if ( $featured_slider_number > 0 ) {
	for ( $i = 1; $i <= $featured_slider_number; $i++ ) {
		$wp_customize->add_setting(
			"theme_options[featured_slider_post_$i]",
			array(
				'default'           => isset( $default[ 'featured_slider_post_' . $i ] ) ? $default[ 'featured_slider_post_' . $i ] : '',
				'capability'        => 'edit_theme_options',
				'sanitize_callback' => 'education_soul_sanitize_post_id',
			)
		);
		$wp_customize->add_control(
			"theme_options[featured_slider_post_$i]",
			array(
				'label'           => __( 'Featured Post', 'education-soul-pro' ) . ' #' . $i,
				'description'     => __( 'Enter Post ID', 'education-soul-pro' ),
				'section'         => 'section_home_featured_slider',
				'type'            => 'text',
				'priority'        => 100,
				'active_callback' => 'education_soul_is_featured_post_slider_active',
				'input_attrs'     => array( 'style' => 'width: 70px;' ),
			)
		);
	} // End for loop.
}

// For multiple images.
if ( $featured_slider_number > 0 ) {
	for ( $i = 1; $i <= $featured_slider_number; $i++ ) {

		$wp_customize->add_setting(
			"theme_options[featured_slider_image_heading_$i]",
			array(
				'default'           => '',
				'capability'        => 'edit_theme_options',
				'sanitize_callback' => 'sanitize_text_field',
			)
		);
		$wp_customize->add_control(
			new Education_Soul_Heading_Control(
				$wp_customize,
				"theme_options[featured_slider_image_heading_$i]",
				array(
					'label'           => __( 'Slide', 'education-soul-pro' ) . ' #' . $i,
					'section'         => 'section_home_featured_slider',
					'settings'        => "theme_options[featured_slider_image_heading_$i]",
					'priority'        => 100,
					'active_callback' => 'education_soul_is_featured_image_slider_active',
				)
			)
		);

		$wp_customize->add_setting(
			"theme_options[featured_slider_image_photo_$i]",
			array(
				'default'           => isset( $default[ 'featured_slider_image_photo_' . $i ] ) ? $default[ 'featured_slider_image_photo_' . $i ] : '',
				'capability'        => 'edit_theme_options',
				'sanitize_callback' => 'esc_url_raw',
			)
		);
		$wp_customize->add_control(
			new WP_Customize_Image_Control(
				$wp_customize,
				"theme_options[featured_slider_image_photo_$i]",
				array(
					'label'           => __( 'Image', 'education-soul-pro' ),
					'section'         => 'section_home_featured_slider',
					'settings'        => "theme_options[featured_slider_image_photo_$i]",
					'priority'        => 100,
					'active_callback' => 'education_soul_is_featured_image_slider_active',
				)
			)
		);

		$wp_customize->add_setting(
			"theme_options[featured_slider_image_title_$i]",
			array(
				'default'           => isset( $default[ 'featured_slider_image_title_' . $i ] ) ? $default[ 'featured_slider_image_title_' . $i ] : '',
				'capability'        => 'edit_theme_options',
				'sanitize_callback' => 'education_soul_sanitize_textarea_content',
			)
		);
		$wp_customize->add_control(
			"theme_options[featured_slider_image_title_$i]",
			array(
				'label'           => __( 'Title', 'education-soul-pro' ),
				'section'         => 'section_home_featured_slider',
				'type'            => 'text',
				'priority'        => 100,
				'active_callback' => 'education_soul_is_featured_image_slider_active',
			)
		);

		$wp_customize->add_setting(
			"theme_options[featured_slider_image_caption_$i]",
			array(
				'default'           => isset( $default[ 'featured_slider_image_caption_' . $i ] ) ? $default[ 'featured_slider_image_caption_' . $i ] : '',
				'capability'        => 'edit_theme_options',
				'sanitize_callback' => 'wp_kses_post',
			)
		);
		$wp_customize->add_control(
			"theme_options[featured_slider_image_caption_$i]",
			array(
				'label'           => __( 'Caption', 'education-soul-pro' ),
				'section'         => 'section_home_featured_slider',
				'type'            => 'textarea',
				'priority'        => 100,
				'active_callback' => 'education_soul_is_featured_image_slider_active',
			)
		);

		$wp_customize->add_setting(
			"theme_options[featured_slider_image_url_$i]",
			array(
				'default'           => isset( $default[ 'featured_slider_image_url_' . $i ] ) ? $default[ 'featured_slider_image_url_' . $i ] : '',
				'capability'        => 'edit_theme_options',
				'sanitize_callback' => 'esc_url_raw',
			)
		);
		$wp_customize->add_control(
			"theme_options[featured_slider_image_url_$i]",
			array(
				'label'           => __( 'Link', 'education-soul-pro' ),
				'section'         => 'section_home_featured_slider',
				'type'            => 'url',
				'priority'        => 100,
				'active_callback' => 'education_soul_is_featured_image_slider_active',
			)
		);

		$wp_customize->add_setting(
			"theme_options[featured_slider_image_primary_button_text_$i]",
			array(
				'default'           => isset( $default[ 'featured_slider_image_primary_button_text_' . $i ] ) ? $default[ 'featured_slider_image_primary_button_text_' . $i ] : '',
				'capability'        => 'edit_theme_options',
				'sanitize_callback' => 'sanitize_text_field',
			)
		);
		$wp_customize->add_control(
			"theme_options[featured_slider_image_primary_button_text_$i]",
			array(
				'label'           => __( 'Primary Button Text', 'education-soul-pro' ),
				'section'         => 'section_home_featured_slider',
				'type'            => 'text',
				'priority'        => 100,
				'active_callback' => 'education_soul_is_featured_image_slider_active',
			)
		);
		$wp_customize->add_setting(
			"theme_options[featured_slider_image_primary_button_url_$i]",
			array(
				'default'           => isset( $default[ 'featured_slider_image_primary_button_url_' . $i ] ) ? $default[ 'featured_slider_image_primary_button_url_' . $i ] : '',
				'capability'        => 'edit_theme_options',
				'sanitize_callback' => 'esc_url_raw',
			)
		);
		$wp_customize->add_control(
			"theme_options[featured_slider_image_primary_button_url_$i]",
			array(
				'label'           => __( 'Primary Button URL', 'education-soul-pro' ),
				'section'         => 'section_home_featured_slider',
				'type'            => 'url',
				'priority'        => 100,
				'active_callback' => 'education_soul_is_featured_image_slider_active',
			)
		);

		$wp_customize->add_setting(
			"theme_options[featured_slider_image_secondary_button_text_$i]",
			array(
				'default'           => isset( $default[ 'featured_slider_image_secondary_button_text_' . $i ] ) ? $default[ 'featured_slider_image_secondary_button_text_' . $i ] : '',
				'capability'        => 'edit_theme_options',
				'sanitize_callback' => 'sanitize_text_field',
			)
		);
		$wp_customize->add_control(
			"theme_options[featured_slider_image_secondary_button_text_$i]",
			array(
				'label'           => __( 'Secondary Button Text', 'education-soul-pro' ),
				'section'         => 'section_home_featured_slider',
				'type'            => 'text',
				'priority'        => 100,
				'active_callback' => 'education_soul_is_featured_image_slider_active',
			)
		);
		$wp_customize->add_setting(
			"theme_options[featured_slider_image_secondary_button_url_$i]",
			array(
				'default'           => isset( $default[ 'featured_slider_image_secondary_button_url_' . $i ] ) ? $default[ 'featured_slider_image_secondary_button_url_' . $i ] : '',
				'capability'        => 'edit_theme_options',
				'sanitize_callback' => 'esc_url_raw',
			)
		);
		$wp_customize->add_control(
			"theme_options[featured_slider_image_secondary_button_url_$i]",
			array(
				'label'           => __( 'Secondary Button URL', 'education-soul-pro' ),
				'section'         => 'section_home_featured_slider',
				'type'            => 'url',
				'priority'        => 100,
				'active_callback' => 'education_soul_is_featured_image_slider_active',
			)
		);

	} // End for loop.
}

// Setting featured_slider_category.
$wp_customize->add_setting(
	'theme_options[featured_slider_category]',
	array(
		'default'           => $default['featured_slider_category'],
		'capability'        => 'edit_theme_options',
		'sanitize_callback' => 'absint',
	)
);
$wp_customize->add_control(
	new Education_Soul_Dropdown_Taxonomies_Control(
		$wp_customize,
		'theme_options[featured_slider_category]',
		array(
			'label'           => __( 'Select Category', 'education-soul-pro' ),
			'section'         => 'section_home_featured_slider',
			'settings'        => 'theme_options[featured_slider_category]',
			'priority'        => 100,
			'active_callback' => 'education_soul_is_featured_category_slider_active',
		)
	)
);

// Setting featured_slider_tag.
$wp_customize->add_setting(
	'theme_options[featured_slider_tag]',
	array(
		'default'           => $default['featured_slider_tag'],
		'capability'        => 'edit_theme_options',
		'sanitize_callback' => 'absint',
	)
);
$wp_customize->add_control(
	new Education_Soul_Dropdown_Taxonomies_Control(
		$wp_customize,
		'theme_options[featured_slider_tag]',
		array(
			'label'           => __( 'Select Tag', 'education-soul-pro' ),
			'taxonomy'        => 'post_tag',
			'section'         => 'section_home_featured_slider',
			'settings'        => 'theme_options[featured_slider_tag]',
			'priority'        => 100,
			'active_callback' => 'education_soul_is_featured_tag_slider_active',
		)
	)
);

// Setting featured_slider_read_more_text.
$wp_customize->add_setting(
	'theme_options[featured_slider_read_more_text]',
	array(
		'default'           => $default['featured_slider_read_more_text'],
		'capability'        => 'edit_theme_options',
		'sanitize_callback' => 'sanitize_text_field',
	)
);
$wp_customize->add_control(
	'theme_options[featured_slider_read_more_text]',
	array(
		'label'           => __( 'Read More Text', 'education-soul-pro' ),
		'section'         => 'section_home_featured_slider',
		'type'            => 'text',
		'priority'        => 100,
		'active_callback' => 'education_soul_is_featured_slider_active_non_demo_non_image',
	)
);
