HEX
Server: Apache
System: Linux 65-254-81-60.cprapid.com 4.18.0-477.27.2.el8_8.x86_64 #1 SMP Fri Sep 29 08:21:01 EDT 2023 x86_64
User: roshanchandy (1003)
PHP: 8.4.12
Disabled: exec,passthru,shell_exec,system
Upload Files
File: /home/roshanchandy/public_html/petiva/wp-content/themes/petiva/inc/kirki-customizer.php
<?php

/**
 * petiva customizer
 *
 * @package petiva
 */

use Kirki\Compatibility\Kirki;

// Exit if accessed directly
if (!defined('ABSPATH')) {
    exit;
}

/**
 * Added Panels & Sections
 */
function petiva_customizer_panels_sections($wp_customize)
{

    //Add panel
    $wp_customize->add_panel('petiva_customizer', [
        'priority' => 10,
        'title'    => esc_html__('Theme Customizer', 'petiva'),
    ]);

    /**
     * Customizer Section
     */
    $wp_customize->add_section('header_top_setting', [
        'title'       => esc_html__('Header Info Setting', 'petiva'),
        'description' => '',
        'priority'    => 10,
        'capability'  => 'edit_theme_options',
        'panel'       => 'petiva_customizer',
    ]);


    $wp_customize->add_section('header_top_setting_color', [
        'title'       => esc_html__('Header Menu Color', 'petiva'),
        'description' => '',
        'priority'    => 10,
        'capability'  => 'edit_theme_options',
        'panel'       => 'petiva_customizer',
    ]);



    $wp_customize->add_section('section_header_logo', [
        'title'       => esc_html__('Header Setting', 'petiva'),
        'description' => '',
        'priority'    => 12,
        'capability'  => 'edit_theme_options',
        'panel'       => 'petiva_customizer',
    ]);

    $wp_customize->add_section('blog_setting', [
        'title'       => esc_html__('Blog Setting', 'petiva'),
        'description' => '',
        'priority'    => 13,
        'capability'  => 'edit_theme_options',
        'panel'       => 'petiva_customizer',
    ]);

    $wp_customize->add_section('header_side_setting', [
        'title'       => esc_html__('Side Info', 'petiva'),
        'description' => '',
        'priority'    => 14,
        'capability'  => 'edit_theme_options',
        'panel'       => 'petiva_customizer',
    ]);

    $wp_customize->add_section('breadcrumb_setting', [
        'title'       => esc_html__('Breadcrumb Setting', 'petiva'),
        'description' => '',
        'priority'    => 15,
        'capability'  => 'edit_theme_options',
        'panel'       => 'petiva_customizer',
    ]);

    $wp_customize->add_section('blog_setting', [
        'title'       => esc_html__('Blog Setting', 'petiva'),
        'description' => '',
        'priority'    => 16,
        'capability'  => 'edit_theme_options',
        'panel'       => 'petiva_customizer',
    ]);

    $wp_customize->add_section('footer_setting', [
        'title'       => esc_html__('Footer Settings', 'petiva'),
        'description' => '',
        'priority'    => 16,
        'capability'  => 'edit_theme_options',
        'panel'       => 'petiva_customizer',
    ]);

    $wp_customize->add_section('color_setting', [
        'title'       => esc_html__('Color Setting', 'petiva'),
        'description' => '',
        'priority'    => 17,
        'capability'  => 'edit_theme_options',
        'panel'       => 'petiva_customizer',
    ]);

    $wp_customize->add_section('404_page', [
        'title'       => esc_html__('404 Page', 'petiva'),
        'description' => '',
        'priority'    => 18,
        'capability'  => 'edit_theme_options',
        'panel'       => 'petiva_customizer',
    ]);




    $wp_customize->add_section('typo_setting', [
        'title'       => esc_html__('Typography Setting', 'petiva'),
        'description' => '',
        'priority'    => 21,
        'capability'  => 'edit_theme_options',
        'panel'       => 'petiva_customizer',
    ]);
}

add_action('customize_register', 'petiva_customizer_panels_sections');

function _header_top_fields($fields)
{


    $fields[] = [
        'type'     => 'switch',
        'settings' => 'petiva_preloader',
        'label'    => esc_html__('Preloader On/Off', 'petiva'),
        'section'  => 'header_top_setting',
        'default'  => '0',
        'priority' => 10,
        'choices'  => [
            'on'  => esc_html__('Enable', 'petiva'),
            'off' => esc_html__('Disable', 'petiva'),
        ],
    ];


    $fields[] = [
        'type'     => 'switch',
        'settings' => 'petiva_backtotop',
        'label'    => esc_html__('Back To Top On/Off', 'petiva'),
        'section'  => 'header_top_setting',
        'default'  => '0',
        'priority' => 10,
        'choices'  => [
            'on'  => esc_html__('Enable', 'petiva'),
            'off' => esc_html__('Disable', 'petiva'),
        ],
    ];

    $fields[] = [
        'type'     => 'switch',
        'settings' => 'petiva_search_switch',
        'label'    => esc_html__('Search Swicher', 'petiva'),
        'section'  => 'header_top_setting',
        'default'  => '0',
        'priority' => 10,
        'choices'  => [
            'on'  => esc_html__('Enable', 'petiva'),
            'off' => esc_html__('Disable', 'petiva'),
        ],
    ];

    $fields[] = [
        'type'     => 'switch',
        'settings' => 'petiva_cart_switch',
        'label'    => esc_html__('Cart Swicher', 'petiva'),
        'section'  => 'header_top_setting',
        'default'  => '0',
        'priority' => 10,
        'choices'  => [
            'on'  => esc_html__('Enable', 'petiva'),
            'off' => esc_html__('Disable', 'petiva'),
        ],
    ];

    $fields[] = [
        'type'     => 'switch',
        'settings' => 'petiva_btn_switch',
        'label'    => esc_html__('Button Swicher', 'petiva'),
        'section'  => 'header_top_setting',
        'default'  => '0',
        'priority' => 10,
        'choices'  => [
            'on'  => esc_html__('Enable', 'petiva'),
            'off' => esc_html__('Disable', 'petiva'),
        ],
    ];

    // Button Text
    $fields[] = [
        'type'     => 'text',
        'settings' => 'petiva_btn_text',
        'label'    => esc_html__('Button Text', 'petiva'),
        'section'  => 'header_top_setting',
        'default'  => esc_html__('Open Account', 'petiva'),
        'priority' => 10,
        'active_callback' => [
            [
                'setting'  => 'petiva_btn_switch',
                'operator' => '==',
                'value'    => true,
            ],
        ],
    ];

    // button link
    $fields[] = [
        'type'     => 'link',
        'settings' => 'petiva_btn_link',
        'label'    => esc_html__('Button Link', 'petiva'),
        'section'  => 'header_top_setting',
        'default'  => esc_html__('', 'petiva'),
        'priority' => 10,
        'active_callback' => [
            [
                'setting'  => 'petiva_btn_switch',
                'operator' => '==',
                'value'    => true,
            ],
        ],
    ];





    return $fields;
}
add_filter('kirki/fields', '_header_top_fields');



/*
Header Settings
 */
function _header_header_fields($fields)
{
    $fields[] = [
        'type'        => 'radio-image',
        'settings'    => 'choose_default_header',
        'label'       => esc_html__('Select Header Style', 'petiva'),
        'section'     => 'section_header_logo',
        'placeholder' => esc_html__('Select an option...', 'petiva'),
        'priority'    => 10,
        'multiple'    => 1,
        'choices'     => [
            'header-style-1'   => get_template_directory_uri() . '/inc/img/header/header-1.png',
        ],
        'default'     => 'header-style-1',
    ];

    $fields[] = [
        'type'        => 'image',
        'settings'    => 'logo',
        'label'       => esc_html__('Header Logo', 'petiva'),
        'description' => esc_html__('Upload Your Logo.', 'petiva'),
        'section'     => 'section_header_logo',
        'priority'    => 10,
        'default'     => get_template_directory_uri() . '/assets/images/logo.png',
    ];


    return $fields;
}
add_filter('kirki/fields', '_header_header_fields');


/*
_header_page_title_fields
 */
function _header_page_title_fields($fields)
{
    // Breadcrumb Setting
    $fields[] = [
        'type'     => 'switch',
        'settings' => 'breadcrumb_switch',
        'label'    => esc_html__('Breadcrumb Hide', 'petiva'),
        'section'  => 'breadcrumb_setting',
        'default'  => '1',
        'priority' => 10,
        'choices'  => [
            'on'  => esc_html__('Enable', 'petiva'),
            'off' => esc_html__('Disable', 'petiva'),
        ],
    ];

    $fields[] = [
        'type'        => 'image',
        'settings'    => 'breadcrumb_bg_img',
        'label'       => esc_html__('Breadcrumb Background Image', 'petiva'),
        'description' => esc_html__('Breadcrumb Background Image', 'petiva'),
        'section'     => 'breadcrumb_setting',
        'default'     => get_template_directory_uri() . '/assets/images/inner-hero-banner.webp',
    ];

    $fields[] = [
        'type'        => 'color',
        'settings'    => 'petiva_breadcrumb_bg_color',
        'label'       => __('Breadcrumb BG Color', 'petiva'),
        'description' => esc_html__('This is a Breadcrumb bg color control.', 'petiva'),
        'section'     => 'breadcrumb_setting',
        'default'     => '#f4f9fc',
        'priority'    => 10,
    ];

    $fields[] = [
        'type'     => 'switch',
        'settings' => 'breadcrumb_info_switch',
        'label'    => esc_html__('Breadcrumb Info switch', 'petiva'),
        'section'  => 'breadcrumb_setting',
        'default'  => '1',
        'priority' => 10,
        'choices'  => [
            'on'  => esc_html__('Enable', 'petiva'),
            'off' => esc_html__('Disable', 'petiva'),
        ],
    ];

    return $fields;
}
add_filter('kirki/fields', '_header_page_title_fields');

/*
Header Social
 */
function _header_blog_fields($fields)
{
    // Blog Setting
    $fields[] = [
        'type'     => 'switch',
        'settings' => 'petiva_blog_btn_switch',
        'label'    => esc_html__('Blog BTN On/Off', 'petiva'),
        'section'  => 'blog_setting',
        'default'  => '1',
        'priority' => 10,
        'choices'  => [
            'on'  => esc_html__('Enable', 'petiva'),
            'off' => esc_html__('Disable', 'petiva'),
        ],
    ];

    $fields[] = [
        'type'     => 'switch',
        'settings' => 'petiva_blog_cat',
        'label'    => esc_html__('Blog Category Meta On/Off', 'petiva'),
        'section'  => 'blog_setting',
        'default'  => '1',
        'priority' => 10,
        'choices'  => [
            'on'  => esc_html__('Enable', 'petiva'),
            'off' => esc_html__('Disable', 'petiva'),
        ],
    ];

    $fields[] = [
        'type'     => 'switch',
        'settings' => 'petiva_blog_author',
        'label'    => esc_html__('Blog Author Meta On/Off', 'petiva'),
        'section'  => 'blog_setting',
        'default'  => '1',
        'priority' => 10,
        'choices'  => [
            'on'  => esc_html__('Enable', 'petiva'),
            'off' => esc_html__('Disable', 'petiva'),
        ],
    ];
    $fields[] = [
        'type'     => 'switch',
        'settings' => 'petiva_blog_date',
        'label'    => esc_html__('Blog Date Meta On/Off', 'petiva'),
        'section'  => 'blog_setting',
        'default'  => '1',
        'priority' => 10,
        'choices'  => [
            'on'  => esc_html__('Enable', 'petiva'),
            'off' => esc_html__('Disable', 'petiva'),
        ],
    ];
    $fields[] = [
        'type'     => 'switch',
        'settings' => 'petiva_blog_comments',
        'label'    => esc_html__('Blog Comments Meta On/Off', 'petiva'),
        'section'  => 'blog_setting',
        'default'  => '1',
        'priority' => 10,
        'choices'  => [
            'on'  => esc_html__('Enable', 'petiva'),
            'off' => esc_html__('Disable', 'petiva'),
        ],
    ];

    $fields[] = [
        'type'     => 'text',
        'settings' => 'petiva_blog_btn',
        'label'    => esc_html__('Blog Button text', 'petiva'),
        'section'  => 'blog_setting',
        'default'  => esc_html__('Read More', 'petiva'),
        'priority' => 10,
    ];


    return $fields;
}
add_filter('kirki/fields', '_header_blog_fields');

/*
Footer
 */
function _header_footer_fields($fields)
{
    // Footer Settingbankio


    $fields[] = [
        'type'        => 'image',
        'settings'    => 'petiva_footer_logo',
        'label'       => esc_html__('Footer Logo', 'petiva'),
        'description' => esc_html__('Upload Your Logo.', 'petiva'),
        'section'     => 'footer_setting',
        'default'     => get_template_directory_uri() . '/assets/images/logo.png',
    ];

    $fields[] = [
        'type'        => 'color',
        'settings'    => 'footer_bg_color',
        'label'       => __('Footer BG Color', 'petiva'),
        'description' => esc_html__('This is a Footer bg color control.', 'petiva'),
        'section'     => 'footer_setting',
        'default'     => '#F5FAFF',
        'priority'    => 10,
    ];

    $fields[] = [
        'type'        => 'image',
        'settings'    => 'petiva_footer_bg_img',
        'label'       => esc_html__('Background', 'petiva'),
        'description' => esc_html__('Background Your Footer.', 'petiva'),
        'section'     => 'footer_setting',
        'default'     => get_template_directory_uri() . '/assets/images/footer-bg.webp',
    ];

    $fields[] = [
        'type'     => 'switch',
        'settings' => 'footer_shape_image_switch',
        'label'    => esc_html__('Shape Image On/Off', 'petiva'),
        'section'  => 'footer_setting',
        'default'  => '0',
        'priority' => 10,
        'choices'  => [
            'on'  => esc_html__('Enable', 'petiva'),
            'off' => esc_html__('Disable', 'petiva'),
        ],
    ];


    $fields[] = [
        'type'     => 'text',
        'settings' => 'Subscribe_title',
        'label'    => esc_html__('Subscribe', 'petiva'),
        'section'  => 'footer_setting',
        'default'  => esc_html__('Subscribe Our Newsletter', 'petiva'),
        'priority' => 10,
    ];

    $fields[] = [
        'type'     => 'text',
        'settings' => 'Subscribe_description',
        'label'    => esc_html__('Subscribe description', 'petiva'),
        'section'  => 'footer_setting',
        'default'  => esc_html__('Get the latest deals and offers right to your inbox.', 'petiva'),
        'priority' => 10,
    ];

    $fields[] = [
        'type'     => 'text',
        'settings' => 'petiva_copyright',
        'label'    => esc_html__('Copy Right', 'petiva'),
        'section'  => 'footer_setting',
        'default'  => esc_html__('Copyright &copy; 2024 petiva. All Rights Reserved', 'petiva'),
        'priority' => 10,
    ];


    $fields[] = [
        'type'     => 'text',
        'settings' => 'petiva_copyright',
        'label'    => esc_html__('Copy Right', 'petiva'),
        'section'  => 'footer_setting',
        'default'  => esc_html__('Copyright &copy; 2024 petiva. All Rights Reserved', 'petiva'),
        'priority' => 10,
    ];
    return $fields;
}
add_filter('kirki/fields', '_header_footer_fields');

// color
function petiva_color_fields($fields)
{

    // Color Settings
    $fields[] = [
        'type'        => 'color',
        'settings'    => 'petiva_pri_color',
        'label'       => __('Primary Color', 'petiva'),
        'description' => esc_html__('This is a Primary color control.', 'petiva'),
        'section'     => 'color_setting',
        'default'     => '#FB7B53',
        'priority'    => 10,
    ];
    // Color Settings
    $fields[] = [
        'type'        => 'color',
        'settings'    => 'petiva_secondary_color',
        'label'       => __('Secondary Color', 'petiva'),
        'description' => esc_html__('This is a Secondary color control.', 'petiva'),
        'section'     => 'color_setting',
        'default'     => '#FFD15C',
        'priority'    => 10,
    ];
    // Color Settings
    $fields[] = [
        'type'        => 'color',
        'settings'    => 'petiva_heading_color',
        'label'       => __('Heading Color', 'petiva'),
        'description' => esc_html__('This is a heading color control.', 'petiva'),
        'section'     => 'color_setting',
        'default'     => '#150B33',
        'priority'    => 10,
    ];
    // Color Settings
    $fields[] = [
        'type'        => 'color',
        'settings'    => 'petiva_text_color',
        'label'       => __('Text Color', 'petiva'),
        'description' => esc_html__('This is a text color control.', 'petiva'),
        'section'     => 'color_setting',
        'default'     => '#4F4C57',
        'priority'    => 10,
    ];

    return $fields;
}
add_filter('kirki/fields', 'petiva_color_fields');

// 404
function petiva_404_fields($fields)
{
    // 404 settings
    $fields[] = [
        'type'        => 'image',
        'settings'    => 'petiva_404_bg',
        'label'       => esc_html__('404 Image.', 'petiva'),
        'description' => esc_html__('404 Image.', 'petiva'),
        'section'     => '404_page',
    ];
    $fields[] = [
        'type'     => 'text',
        'settings' => 'petiva_error_title',
        'label'    => esc_html__('Not Found Title', 'petiva'),
        'section'  => '404_page',
        'default'  => esc_html__('Page not found', 'petiva'),
        'priority' => 10,
    ];
    $fields[] = [
        'type'     => 'textarea',
        'settings' => 'petiva_error_desc',
        'label'    => esc_html__('404 Description Text', 'petiva'),
        'section'  => '404_page',
        'default'  => esc_html__('Oops! The page you are looking for does not exist. It might have been moved or deleted', 'petiva'),
        'priority' => 10,
    ];
    $fields[] = [
        'type'     => 'text',
        'settings' => 'petiva_error_link_text',
        'label'    => esc_html__('404 Link Text', 'petiva'),
        'section'  => '404_page',
        'default'  => esc_html__('Back To Home', 'petiva'),
        'priority' => 10,
    ];
    return $fields;
}
add_filter('kirki/fields', 'petiva_404_fields');





/**
 * Added Fields
 */
function petiva_typo_fields($fields)
{
    // typography settings
    $fields[] = [
        'type'        => 'typography',
        'settings'    => 'typography_body_setting',
        'label'       => esc_html__('Body Font', 'petiva'),
        'section'     => 'typo_setting',
        'default'     => [
            'font-family'    => '',
            'variant'        => '',
            'font-size'      => '',
            'line-height'    => '',
            'letter-spacing' => '0',
            'color'          => '',
        ],
        'priority'    => 10,
        'transport'   => 'auto',
        'output'      => [
            [
                'element' => 'p',
            ],
        ],
    ];
    $fields[] = [
        'type'        => 'typography',
        'settings'    => 'typography_link_setting',
        'label'       => esc_html__('Link', 'petiva'),
        'section'     => 'typo_setting',
        'default'     => [
            'font-family'    => '',
            'variant'        => '',
            'font-size'      => '',
            'line-height'    => '',
            'letter-spacing' => '0',
            'color'          => '',
        ],
        'priority'    => 10,
        'transport'   => 'auto',
        'output'      => [
            [
                'element' => 'a',
            ],
        ],
    ];
    $fields[] = [
        'type'        => 'typography',
        'settings'    => 'typography_span_setting',
        'label'       => esc_html__('Span', 'petiva'),
        'section'     => 'typo_setting',
        'default'     => [
            'font-family'    => '',
            'variant'        => '',
            'font-size'      => '',
            'line-height'    => '',
            'letter-spacing' => '0',
            'color'          => '',
        ],
        'priority'    => 10,
        'transport'   => 'auto',
        'output'      => [
            [
                'element' => 'a',
            ],
        ],
    ];

    $fields[] = [
        'type'        => 'typography',
        'settings'    => 'typography_h_setting',
        'label'       => esc_html__('Heading h1 Fonts', 'petiva'),
        'section'     => 'typo_setting',
        'default'     => [
            'font-family'    => '',
            'variant'        => '',
            'font-size'      => '',
            'line-height'    => '',
            'letter-spacing' => '0',
            'color'          => '',
        ],
        'priority'    => 10,
        'transport'   => 'auto',
        'output'      => [
            [
                'element' => 'h1',
            ],
        ],
    ];

    $fields[] = [
        'type'        => 'typography',
        'settings'    => 'typography_h2_setting',
        'label'       => esc_html__('Heading h2 Fonts', 'petiva'),
        'section'     => 'typo_setting',
        'default'     => [
            'font-family'    => '',
            'variant'        => '',
            'font-size'      => '',
            'line-height'    => '',
            'letter-spacing' => '0',
            'color'          => '',
        ],
        'priority'    => 10,
        'transport'   => 'auto',
        'output'      => [
            [
                'element' => 'h2',
            ],
        ],
    ];

    $fields[] = [
        'type'        => 'typography',
        'settings'    => 'typography_h3_setting',
        'label'       => esc_html__('Heading h3 Fonts', 'petiva'),
        'section'     => 'typo_setting',
        'default'     => [
            'font-family'    => '',
            'variant'        => '',
            'font-size'      => '',
            'line-height'    => '',
            'letter-spacing' => '0',
            'color'          => '',
        ],
        'priority'    => 10,
        'transport'   => 'auto',
        'output'      => [
            [
                'element' => 'h3',
            ],
        ],
    ];

    $fields[] = [
        'type'        => 'typography',
        'settings'    => 'typography_h4_setting',
        'label'       => esc_html__('Heading h4 Fonts', 'petiva'),
        'section'     => 'typo_setting',
        'default'     => [
            'font-family'    => '',
            'variant'        => '',
            'font-size'      => '',
            'line-height'    => '',
            'letter-spacing' => '0',
            'color'          => '',
        ],
        'priority'    => 10,
        'transport'   => 'auto',
        'output'      => [
            [
                'element' => 'h4',
            ],
        ],
    ];

    $fields[] = [
        'type'        => 'typography',
        'settings'    => 'typography_h5_setting',
        'label'       => esc_html__('Heading h5 Fonts', 'petiva'),
        'section'     => 'typo_setting',
        'default'     => [
            'font-family'    => '',
            'variant'        => '',
            'font-size'      => '',
            'line-height'    => '',
            'letter-spacing' => '0',
            'color'          => '',
        ],
        'priority'    => 10,
        'transport'   => 'auto',
        'output'      => [
            [
                'element' => 'h5',
            ],
        ],
    ];

    $fields[] = [
        'type'        => 'typography',
        'settings'    => 'typography_h6_setting',
        'label'       => esc_html__('Heading h6 Fonts', 'petiva'),
        'section'     => 'typo_setting',
        'default'     => [
            'font-family'    => '',
            'variant'        => '',
            'font-size'      => '',
            'line-height'    => '',
            'letter-spacing' => '0',
            'color'          => '',
        ],
        'priority'    => 10,
        'transport'   => 'auto',
        'output'      => [
            [
                'element' => 'h6',
            ],
        ],
    ];
    return $fields;
}

add_filter('kirki/fields', 'petiva_typo_fields');









/**
 * This is a short hand function for getting setting value from customizer
 *
 * @param string $name
 *
 * @return bool|string
 */
function petiva_THEME_option($name)
{
    $value = '';
    if (class_exists('petiva')) {
        $value = Kirki::get_option(petiva_get_theme(), $name);
    }

    return apply_filters('petiva_THEME_option', $value, $name);
}

/**
 * Get config ID
 *
 * @return string
 */
function petiva_get_theme()
{
    return 'petiva';
}