<?php
define( 'LAYOUT_PATH', get_template_directory() . '/assets/css/skins/' );
define( 'OPTIONS_PATH', get_template_directory_uri() . '/themeoptions/options/' );

function virtue_all_rev_sliders_in_array(){
if (class_exists('RevSlider')) {
$theslider      = new RevSlider();
$arrSliders = $theslider->getArrSliders();
$arrA   = array();
$arrT   = array();
foreach($arrSliders as $slider){
$arrA[] = $slider->getAlias();
$arrT[] = $slider->getTitle();
}
if(!empty($arrT)) {
$result = array_combine($arrA, $arrT);
} else { $result = ''; }
return $result;}
}
// BEGIN Config

if ( !class_exists( "ReduxFramework" ) ) {
        return;
} 

if ( !class_exists( "Redux_Framework_Virtue_config" ) ) {
        class Redux_Framework_Virtue_config {
          public $args = array();
                public $sections = array();
                public $theme;
                public $ReduxFramework;

                public function __construct() {

                    if (!class_exists('ReduxFramework')) {
                        return;
                    }

                    // This is needed. Bah WordPress bugs.  ;)
                    if (  true == Redux_Helpers::isTheme(__FILE__) ) {
                        $this->initSettings();
                    } else {
                        add_action('plugins_loaded', array($this, 'initSettings'), 10);
                    }

                }
                public function initSettings() {
                  // Create the sections and fields
                  $this->setSections();
                  // Set the default arguments
                  $this->setArguments();
                  //add_filter('redux/options/'.$this->args['opt_name'].'/compiler', array( $this, 'compiler_action' ), 10, 2);
                  $this->ReduxFramework = new ReduxFramework($this->sections, $this->args);
                }
                /*function compiler_action($options, $css) {                  
                    // Demo of how to use the dynamic CSS and write your own static CSS file
                    $filename = dirname(__FILE__) . '/themeoptions' . '.css';
                    global $wp_filesystem;
                    if( empty( $wp_filesystem ) ) {
                      require_once( ABSPATH .'/wp-admin/includes/file.php' );
                    WP_Filesystem();
                    }

                    if( $wp_filesystem ) {
                      $wp_filesystem->put_contents(
                          $filename,
                          $css,
                          FS_CHMOD_FILE // predefined mode settings for WP files
                      );
                    }
                   
              } */

                public function setSections() {
$of_revolution = array();
$of_rev = virtue_all_rev_sliders_in_array();if(!empty($of_rev)) {$of_revolution = $of_rev;} else {$of_revolution = '';}
$alt_stylesheet_path = LAYOUT_PATH;
$alt_stylesheets = array(); 
if ( is_dir($alt_stylesheet_path) ) {if ($alt_stylesheet_dir = opendir($alt_stylesheet_path) ) {while ( ($alt_stylesheet_file = readdir($alt_stylesheet_dir)) !== false ) {if(stristr($alt_stylesheet_file, ".css") !== false) {$alt_stylesheets[$alt_stylesheet_file] = $alt_stylesheet_file;}}}}

$this->sections[] = array(
    'title' => __('Main Settings', 'virtue'),
    'header' => '',
    'desc' => "<div class='redux-info-field'><h3>".__('Welcome to Virtue Theme Options', 'virtue')."</h3>
                                    <p>".__('This theme was developed by', 'virtue')." <a href=\"http://kadencethemes.com/\" target=\"_blank\">Kadence Themes</a></p>
                                    <p>".__('For theme documentation visit', 'virtue').": <a href=\"http://docs.kadencethemes.com/virtue/\" target=\"_blank\">docs.kadencethemes.com/virtue/</a>
                                    <br />
                                    ".__('For support please visit', 'virtue').": <a href=\"http://kadencethemes.com/support/\" target=\"_blank\">kadencethemes.com/support/</a></p></div>",
    'icon_class' => 'icon-large',
    'icon' => 'icon-equalizer2',
    'fields' => array(
        array(
            'id'=>'boxed_layout',
            'type' => 'image_select',
            //'compiler'=> false,
            'title' => __('Site Layout Style', 'virtue'), 
            'subtitle' => __('Select Boxed or Wide Site Layout Style', 'virtue'),
            'options' => array(
                    'wide' => array('alt' => 'Wide Layout', 'img' => OPTIONS_PATH.'img/1c.png'),
                    'boxed' => array('alt' => 'Boxed Layout', 'img' => OPTIONS_PATH.'img/3cm.png'),
                ),
            'default' => 'wide',
            ),
        array(
            'id'=>'footer_layout',
            'type' => 'image_select',
            //'compiler' => false,
            'title' => __('Footer Widget Layout', 'virtue'), 
            'subtitle' => __('Select how many columns for footer widgets', 'virtue'),
            'options' => array(
                    'fourc' => array('alt' => 'Four Column Layout', 'img' => OPTIONS_PATH.'img/footer-widgets-4.png'),
                    'threec' => array('alt' => 'Three Column Layout', 'img' => OPTIONS_PATH.'img/footer-widgets-3.png'),
                    'twoc' => array('alt' => 'Two Column Layout', 'img' => OPTIONS_PATH.'img/footer-widgets-2.png'),
                ),
            'default' => 'fourc',
            ),
        array(
            'id'=>'logo_options',
            'type' => 'info',
            'desc' => __('Logo Options', 'virtue'),
            ),
         array(
            'id'=>'logo_layout',
            'type' => 'image_select',
            //'compiler' => false,
            'title' => __('Logo Layout', 'virtue'), 
            'subtitle' => __('Choose how you want your logo to be laid out', 'virtue'),
            'options' => array(
                    'logoleft' => array('alt' => 'Logo Left Layout', 'img' => OPTIONS_PATH.'img/logo_layout_01.png'),
                    'logohalf' => array('alt' => 'Logo Half Layout', 'img' => OPTIONS_PATH.'img/logo_layout_03.png'),
                    'logocenter' => array('alt' => 'Logo Center Layout', 'img' => OPTIONS_PATH.'img/logo_layout_02.png'),
                    'logowidget' => array('alt' => 'Logo Left Widget Layout', 'img' => OPTIONS_PATH.'img/logo_layout_04.png'),
                ),
            'default' => 'logoleft',
            ),
        array(
            'id'=>'x1_virtue_logo_upload',
            'type' => 'media', 
            'url'=> true,
            'title' => __('Logo', 'virtue'),
            //'customizer' => 'true',
            'subtitle' => __('Upload your Logo. If left blank theme will use site name.', 'virtue'),
            ),
        array(
            'id'=>'x2_virtue_logo_upload',
            'type' => 'media', 
            'url'=> true,
            'title' => __('Upload Your @2x Logo for Retina Screens', 'virtue'),
            //'compiler' => 'true',
            'subtitle' => __('Should be twice the pixel size of your normal logo.', 'virtue'),
            ),
        array(
            'id'=>'font_logo_style',
            'type' => 'typography', 
            'title' => __('Sitename Logo Font', 'virtue'),
            //'compiler'=>true, // Use if you want to hook in your own CSS compiler
            'font-family'=>true, 
            'google'=>true, // Disable google fonts. Won't work if you haven't defined your google api key
            'font-backup'=>false, // Select a backup non-google font in addition to a google font
            'font-style'=>true, // Includes font-style and weight. Can use font-style or font-weight to declare
            'subsets'=>true, // Only appears if google is true and subsets not set to false
            'font-size'=>true,
            'line-height'=>true,
            'text-align' => false,
            'color'=>true,
            'preview'=>true, // Disable the previewer
            'output' => array('header #logo a.brand', ".logofont"),
            'subtitle'=> __("Choose size and style your sitename, if you don't use an image logo.", 'virtue'),
            'default'=> array(
                'font-family'=>'Lato',
                'color'=>"", 
                'font-style'=>'400',
                'font-size'=>'32px', 
                'line-height'=>'40px', ),
            ),
        array(
            'id'=>'logo_below_text',
            'type' => 'textarea',
            'title' => __('Site Tagline - Below Logo"', 'virtue'), 
            'subtitle' => __('An optional line of text below your logo', 'virtue'),
            'validate' => 'html', //see http://codex.wordpress.org/Function_Reference/wp_kses_post
            'default' => '',
            ),
        array(
            'id'=>'font_tagline_style',
            'type' => 'typography', 
            'title' => __('Site Tagline Font', 'virtue'),
            'font-family'=>true, 
            'google'=>true, 
            'font-backup'=>false, // Select a backup non-google font in addition to a google font
            'font-style'=>true, // Includes font-style and weight. Can use font-style or font-weight to declare
            'subsets'=>true, // Only appears if google is true and subsets not set to false
            'font-size'=>true,
            'text-align' => false,
            'line-height'=>true,
            'color'=>true,
            'preview'=>true,
            'output' => array('.kad_tagline'), // An array of CSS selectors to apply this font style to dynamically
            'subtitle'=> __("Choose size and style your site tagline", 'virtue'),
            'default'=> array(
                'font-family'=>'Lato',
                'color'=>"#444444", 
                'font-style'=>'400',
                'font-size'=>'14px', 
                'line-height'=>'20px', ),
            ),
        array(
            'id'=>'logo_padding_top',
            'type' => 'slider', 
            'title' => __('Logo Spacing', 'virtue'),
            'subtitle' => __('Top Spacing', 'virtue'),
            "default"       => "25",
            "min"       => "0",
            "step"      => "1",
            "max"       => "80",
            ), 
        array(
            'id'=>'logo_padding_bottom',
            'type' => 'slider', 
            'title' => __('Logo Spacing', 'virtue'),
            'subtitle' => __('Bottom Spacing', 'virtue'),
            "default"       => "10",
            "min"       => "0",
            "step"      => "1",
            "max"       => "80",
            ),
            array(
            'id'=>'logo_padding_left',
            'type' => 'slider', 
            'title' => __('Logo Spacing', 'virtue'),
            'subtitle' => __('Left Spacing', 'virtue'),
            "default"       => "0",
            "min"       => "0",
            "step"      => "1",
            "max"       => "80",
            ), 
            array(
            'id'=>'logo_padding_right',
            'type' => 'slider', 
            'title' => __('Logo Spacing', 'virtue'),
            'subtitle' => __('Right Spacing', 'virtue'),
            "default"       => "0",
            "min"       => "0",
            "step"      => "1",
            "max"       => "80",
            ),
        array(
            'id'=>'menu_margin_top',
            'type' => 'slider', 
            'title' => __('Primary Menu Spacing', 'virtue'),
            'subtitle' => __('Top Spacing', 'virtue'),
            "default"       => "40",
            "min"       => "0",
            "step"      => "1",
            "max"       => "80",
            ), 
         array(
            'id'=>'menu_margin_bottom',
            'type' => 'slider', 
            'title' => __('Primary Menu Spacing', 'virtue'),
            'subtitle' => __('Bottom Spacing', 'virtue'),
            "default"       => "10",
            "min"       => "0",
            "step"      => "1",
            "max"       => "80",
            ),
         array(
            'id'=>'virtue_banner_upload',
            'type' => 'media', 
            'url'=> true,
            'title' => __('Sitewide Banner', 'virtue'),
            //'compiler' => 'true',
            'subtitle' => __('Upload a banner for bottom of header.', 'virtue'),
            ),
         array(
            'id'=>'virtue_banner_link',
            'type' => 'text',
            'title' => __('Banner Link', 'virtue'),
            ),
         array(
            'id'=>'info_header_style',
            'type' => 'info',
            'desc' => __('Header Style', 'virtue'),
            ),
         array(
            'id'=>'header_style',
            'type' => 'select',
            'title' => __('Choose a Header Style', 'virtue'), 
            'options' => array('standard' => 'Standard','center' => 'Center Logo menus on sides','shrink' => 'Basic, with shrink for sticky'),
            'default' => 'standard',
            'width' => 'width:60%',
            ),
         array(
            'id'=>'header_height',
            'type' => 'slider', 
            'title' => __('Header Start Height', 'virtue'),
            'desc'=> __('Note: This header style does not have secondary menu support.', 'virtue'),
            "default"       => "120",
            "min"       => "60",
            "step"      => "2",
            "max"       => "200",
            'required' => array('header_style','=','shrink'),
            ),
         array(
            'id'=>'side_header_menu_width',
            'type' => 'select',
            'title' => __('Choose how many menu items per Side', 'virtue'), 
            'subtitle' => __("This determines how many menu items fit on each side of the logo", 'virtue'),
            'options' => array('33.333333' => 'Three on each side','25' => 'Four on each side','50' => 'Two on each side'),
            'default' => '33.333333',
            'width' => 'width:60%',
            'required' => array('header_style','=','center'),
            ),
         array(
            'id'=>'sticky_header',
            'type' => 'switch', 
            'title' => __('Enable Sticky Header?', 'virtue'),
            'subtitle'=> __('Choose to enable fixed header. Automatically off for mobile', 'virtue'),
            "default"       => 0,
            ),
         array(
            'id'=>'m_sticky_header',
            'type' => 'switch', 
            'title' => __('Enable Mobile Sticky Header?', 'virtue'),
            'subtitle'=> __('Choose to enable fixed header for mobile', 'virtue'),
            "default" => 0,
            'required' => array('header_style','=','shrink'),
            ),
         ),
);
$this->sections[] = array(
    'icon' => 'icon-cogs',
    'icon_class' => 'icon-large',
    'title' => __('Topbar Settings', 'virtue'),
    'fields' => array(
        array(
            'id'=>'topbar',
            'type' => 'switch', 
            'title' => __('Use Topbar?', 'virtue'),
            'subtitle'=> __('Choose to show or hide topbar', 'virtue'),
            "default"       => 1,
            ), 
        array(
            'id'=>'topbar_icons',
            'type' => 'switch', 
            'title' => __('Use Topbar Icon Menu?', 'virtue'),
            'subtitle'=> __('Choose to show or hide topbar icon Menu', 'virtue'),
            "default"       => 0,
            ),
        array(
            'id'=>'topbar_icon_menu',
            'type' => 'kad_icons',
            'title' => __('Topbar Icon Menu', 'virtue'),
            'subtitle'=> __('Choose your icons for the topbar icon menu.', 'virtue'),
        ), 
        array(
            'id'=>'show_cartcount',
            'type' => 'switch', 
            'title' => __('Show Cart total in topbar?', 'virtue'),
            'subtitle'=> __('This only works if using woocommerce', 'virtue'),
            "default"       => 1,
            ), 
        array(
            'id'=>'topbar_search',
            'type' => 'switch', 
            'title' => __('Display Search in Topbar?', 'virtue'),
            'subtitle'=> __('Choose to show or hide search in topbar', 'virtue'),
            "default"       => 1,
            ),
        array(
            'id'=>'topbar_widget',
            'type' => 'switch', 
            'title' => __('Enable widget area in right of Topbar?', 'virtue'),
            'subtitle'=> __('Note this will hide remove search (you can re-enable it my adding it to the widget area)', 'virtue'),
            "default"       => 0,
            ),
        array(
            'id'=>'topbar_layout',
            'type' => 'switch', 
            'title' => __('Topbar Layout Switch', 'virtue'),
            'subtitle'=> __('This moves the left items to the right and right items to the left.', 'virtue'),
            "default"       => 0,
            ),
        ),
);
$this->sections[] = array(
    'icon' => 'icon-images',
    'icon_class' => 'icon-large',
    'title' => __('Slider Settings', 'virtue'),
    'desc' => "<div class='redux-info-field'><h3>".__('Home Page Slider Options', 'virtue')."</h3></div>",
    'fields' => array(
        array(
            'id'=>'choose_slider',
            'type' => 'select',
            'title' => __('Choose a Home Image Slider', 'virtue'), 
            'subtitle' => __("If you don't want an image slider on your home page choose none.", 'virtue'),
            'options' => array('none' => __('None', 'virtue'),'flex' => __('Flex Slider', 'virtue'),'thumbs' => __('Thumb Slider', 'virtue'),'carousel' => __('Carousel Slider', 'virtue'),'imgcarousel' => __('Image Carousel', 'virtue'),'rev' => __('Revolution Slider', 'virtue'),'cyclone' => __('Cyclone Slider / Shortcode', 'virtue'),'ktslider' => __('Kadence Slider', 'virtue'),'latest' => __('Latest Posts', 'virtue'), 'video' => __('Video', 'virtue')),
            'default' => 'none',
            'width' => 'width:60%',
            ),
        array(
            'id'=>'rev_slider',
            'type' => 'select',
            'title' => __('If Revolution Slider', 'virtue'), 
            'subtitle' => __("Choose your Revolution Slider Here", 'virtue'),
            'options' => $of_revolution,
            'default' => 'select',
            'width' => 'width:60%',
            'required' => array('choose_slider','=','rev'), 
            ),
        array(
            'id'=>'kt_slider',
            'type' => 'select',
            'title' => __('If Kadence Slider', 'virtue'), 
            'subtitle' => __("Choose your Kadence Slider Here", 'virtue'),
            'data' => 'posts',
            'args' => array('post_type'=>'kadslider', 'posts_per_page' => -1),
            'default' => 'select',
            'width' => 'width:60%',
            'required' => array('choose_slider','=','ktslider'), 
            ),
        array(
            'id'=>'above_header_slider',
            'type' => 'switch', 
            'title' => __('Move Slider above Header', 'virtue'),
            'subtitle'=> __('This works great for full screen sliders', 'virtue'),
            "default"       => 0,
             'required' => array('choose_slider','=',array('rev','ktslider','cyclone')), 
            ),
        array(
            'id'=>'above_header_slider_arrow',
            'type' => 'switch', 
            'title' => __('Add arrow at the bottom of slider', 'virtue'),
            'subtitle'=> __('This adds a little arrow link that scrolls down into the content', 'virtue'),
            "default"       => 0,
             'required' => array('choose_slider','=',array('rev','ktslider','cyclone')),
            ),
        array(
            'id'=>'home_cyclone_slider',
            'type' => 'text',
            'title' => __('If Cyclone Slider or using any shortcode', 'virtue'),
            'subtitle' => __('Paste shortcode here', 'virtue'),
            'required' => array('choose_slider','=','cyclone'),
            ),
        array(
            'id'=>'home_slider',
            'type' => 'kad_slides',
            'title' => __('Slider Images', 'virtue'),
            'subtitle'=> __('Use large images for best results.', 'virtue'),
        ),  
        array(
            'id'=>'slider_size',
            'type' => 'slider', 
            'title' => __('Slider Max Height', 'virtue'),
            'subtitle' => __('Note: does not work if images are smaller than max.', 'virtue'),
            "default"       => "400",
            "min"       => "100",
            "step"      => "5",
            "max"       => "600",
            ), 
        array(
            'id'=>'slider_size_width',
            'type' => 'slider', 
            'title' => __('Slider Max Width', 'virtue'),
            'subtitle' => __('Note: does not work if images are smaller than max.', 'virtue'),
            "default"       => "1140",
            "min"       => "600",
            "step"      => "5",
            "max"       => "1140",
            ), 
        array(
            'id'=>'slider_autoplay',
            'type' => 'switch', 
            'title' => __('Auto Play?', 'virtue'),
            'subtitle'=> __('This determines if a slider automatically scrolls', 'virtue'),
            "default"       => 1,
            ),
        array(
            'id'=>'slider_pausetime',
            'type' => 'slider', 
            'title' => __('Slider Pause Time', 'virtue'),
            'subtitle' => __('How long to pause on each slide, in milliseconds.', 'virtue'),
            "default"       => "7000",
            "min"       => "3000",
            "step"      => "1000",
            "max"       => "12000",
            ), 
        array(
            'id'=>'trans_type',
            'type' => 'select',
            'title' => __('Transition Type', 'virtue'), 
            'subtitle' => __("Choose a transition type", 'virtue'),
            'options' => array('fade' => __('Fade', 'virtue'),'slide' => __('Slide', 'virtue')),
            'default' => 'fade'
            ),
        array(
            'id'=>'slider_transtime',
            'type' => 'slider', 
            'title' => __('Slider Transition Time', 'virtue'),
            'subtitle' => __('How long for slide transitions, in milliseconds.', 'virtue'),
            "default"       => "600",
            "min"       => "200",
            "step"      => "100",
            "max"       => "1200",
            ), 
        array(
            'id'=>'slider_captions',
            'type' => 'switch', 
            'title' => __('Show Captions?', 'virtue'),
            'subtitle'=> __('Choose to show or hide captions', 'virtue'),
            "default"       => 0,
            ),
        array(
            'id'=>'video_embed',
            'type' => 'textarea',
            'title' => __('Video Embed Code', 'virtue'), 
            'subtitle' => __('If your using a video on the home page place video embed code here.', 'virtue'),
            'default' => ''
            ),
         ),
);

$this->sections[] = array(
    'icon' => 'icon-mobile',
    'icon_class' => 'icon-large',
    'title' => __('Mobile Slider', 'virtue'),
    'desc' => "<div class='redux-info-field'><h3>".__('Create a more lightweight home slider for your mobile visitors.', 'virtue')."</h3></div>",
    'fields' => array(
      array(
            'id'=>'mobile_switch',
            'type' => 'switch', 
            'title' => __('Would you like to use this feature?', 'virtue'),
            'subtitle'=> __('Choose if you would like to show a different slider on your home page for your mobile visitors.', 'virtue'),
            "default"       => 0,
            ),
        array(
            'id'=>'choose_mobile_slider',
            'type' => 'select',
            'title' => __('Choose a Slider for Mobile', 'virtue'), 
            'subtitle' => __("Choose which slider you would like to show for mobile viewers.", 'virtue'),
            'options' => array('none' => __('None', 'virtue'),'flex' => __('Flex Slider', 'virtue'),'rev' => __('Revolution Slider', 'virtue'),'cyclone' => __('Cyclone Slider', 'virtue'), 'video' => __('Video', 'virtue')),
            'default' => 'none',
            'width' => 'width:60%',
            'required' => array('mobile_switch','=','1'),
            ),
        array(
            'id'=>'mobile_rev_slider',
            'type' => 'select',
            'title' => __('If Revolution Slider', 'virtue'), 
            'subtitle' => __("Choose your Revolution Slider Here", 'virtue'),
            'options' => $of_revolution,
            'default' => 'select',
            'width' => 'width:60%',
            'required' => array('mobile_switch','=','1'),
            ),
        array(
            'id'=>'mobile_cyclone_slider',
            'type' => 'text',
            'title' => __('If Cyclone Slider', 'virtue'),
            'subtitle' => __('Paste Cyclone Slider shortcode here', 'virtue'),
            'required' => array('mobile_switch','=','1'),
            ),
        array(
            'id'=>'home_mobile_slider',
            'type' => 'kad_slides',
            'title' => __('Slider Images', 'virtue'),
            'subtitle'=> __('Use large images for best results.', 'virtue'),
            'required' => array('mobile_switch','=','1'),
        ),  
        array(
            'id'=>'mobile_slider_size',
            'type' => 'slider', 
            'title' => __('Slider Max Height', 'virtue'),
            'subtitle' => __('Note: does not work if images are smaller than max.', 'virtue'),
            "default"       => "300",
            "min"       => "100",
            "step"      => "5",
            "max"       => "800",
            'required' => array('mobile_switch','=','1'),
            ), 
        array(
            'id'=>'mobile_slider_size_width',
            'type' => 'slider', 
            'title' => __('Slider Max Width', 'virtue'),
            'subtitle' => __('Note: does not work if images are smaller than max.', 'virtue'),
            "default"       => "480",
            "min"       => "200",
            "step"      => "5",
            "max"       => "800",
            'required' => array('mobile_switch','=','1'),
            ), 
        array(
            'id'=>'mobile_slider_autoplay',
            'type' => 'switch', 
            'title' => __('Auto Play?', 'virtue'),
            'subtitle'=> __('This determines if a slider automatically scrolls', 'virtue'),
            "default"       => 1,
            'required' => array('mobile_switch','=','1'),
            ),
        array(
            'id'=>'mobile_slider_pausetime',
            'type' => 'slider', 
            'title' => __('Slider Pause Time', 'virtue'),
            'subtitle' => __('How long to pause on each slide, in milliseconds.', 'virtue'),
            "default"       => "7000",
            "min"       => "3000",
            "step"      => "1000",
            "max"       => "12000",
            'required' => array('mobile_switch','=','1'),
            ), 
        array(
            'id'=>'mobile_trans_type',
            'type' => 'select',
            'title' => __('Transition Type', 'virtue'), 
            'subtitle' => __("Choose a transition type", 'virtue'),
            'options' => array('fade' => __('Fade', 'virtue'),'slide' => __('Slide', 'virtue')),
            'default' => 'fade',
            'required' => array('mobile_switch','=','1'),
            ),
        array(
            'id'=>'mobile_slider_transtime',
            'type' => 'slider', 
            'title' => __('Slider Transition Time', 'virtue'),
            'subtitle' => __('How long for slide transitions, in milliseconds.', 'virtue'),
            "default"       => "600",
            "min"       => "200",
            "step"      => "100",
            "max"       => "1200",
            'required' => array('mobile_switch','=','1'),
            ), 
        array(
            'id'=>'mobile_slider_captions',
            'type' => 'switch', 
            'title' => __('Show Captions?', 'virtue'),
            'subtitle'=> __('Choose to show or hide captions', 'virtue'),
            "default"       => 0,
            'required' => array('mobile_switch','=','1'),
            ),
        array(
            'id'=>'mobile_video_embed',
            'type' => 'textarea',
            'title' => __('Video Embed Code', 'virtue'), 
            'subtitle' => __('If your using a video on the home page place video embed code here.', 'virtue'),
            'default' => '',
            'required' => array('mobile_switch','=','1'),
            ),
         ),
);
$this->sections[] = array(
    'icon' => 'icon-home2',
    'icon_class' => 'icon-large',
    'title' => __('Home Layout', 'virtue'),
    'desc' => "",
    'fields' => array(
       array(
            'id'=>'home_sidebar_layout',
            'type' => 'image_select',
            'compiler'=> false,
            'title' => __('Display a sidebar on the Home Page?', 'virtue'), 
            'subtitle' => __('This determines if there is a sidebar on the home page.', 'virtue'),
            'options' => array(
                    'full' => array('alt' => 'Full Layout', 'img' => OPTIONS_PATH .'img/1col.png'),
                    'sidebar' => array('alt' => 'Sidebar Layout', 'img' => OPTIONS_PATH .'img/2cr.png'),
                ),
            'default' => 'full',
            ),
       array(
            'id'=>'home_sidebar',
            'type' => 'select',
            'title' => __('Choose a Sidebar for your Home Page', 'virtue'), 
            'data' => 'sidebars',
            'default' => 'sidebar-primary',
            'width' => 'width:60%',
            ),
       array(
            "id" => "homepage_layout",
            "type" => "sorter",
            "title" => __("Homepage Layout Manager", "virtue"),
            "subtitle" => __("Organize how you want the layout to appear on the homepage", "virtue"),  
            'options' => array(
              "disabled" => array(
                    "placebo" => "placebo", //REQUIRED!
                    "block_two"   => __("Image Menu", 'virtue'),
                    "block_three" => __("Featured Products", 'virtue'),
                    "block_five"  => __("Latest Blog Posts", 'virtue'),
                    "block_six"   => __("Portfolio Carousel", 'virtue'),
                    "block_seven" => __("Icon Menu", 'virtue'),
                    "block_eight" => __("Portfolio Full", 'virtue'),
                    "block_nine"  => __("On Sale Products", 'virtue'),
                    "block_ten"   => __("Best Selling Products", 'virtue'),
                    "block_eleven" => __("Custom Carousel", 'virtue'),
                    "block_twelve" => __("Home Widget Area", 'virtue'),
                ),
                "enabled" => array(
                    "placebo" => "placebo", //REQUIRED!
                    "block_one"   => __("Page Title", 'virtue'),
                    "block_four"  => __("Page Content", 'virtue'),
                ),
            ),
        ),
        array(
            'id'=>'info_iconmenu_settings',
            'type' => 'info',
            'desc' => __('Home Image Menu', 'virtue'),
            ),
        array(
            'id'=>'home_image_menu',
            'type' => 'kad_slides',
            'title' => __('Image Menu', 'virtue'),
            'subtitle'=> __('Add images, descriptions, titles, and links', 'virtue'),
        ),
        array(
            'id'=>'home_image_menu_column',
            'type' => 'slider', 
            'title' => __('Choose how many columns in each row', 'virtue'),
            "default"       => "3",
            "min"       => "2",
            "step"      => "1",
            "max"       => "6",
            ),
        array(
            'id'=>'img_menu_height',
            'type' => 'slider', 
            'title' => __('Image Menu Height', 'virtue'),
            "default"       => "110",
            "min"       => "80",
            "step"      => "5",
            "max"       => "400",
            ), 
         array(
            'id'=>'info_product_feat_settings',
            'type' => 'info',
            'desc' => __('Home Featured Product Settings', 'virtue'),
            ),
         array(
            'id'=>'product_title',
            'type' => 'text',
            'title' => __('Home Product Carousel Title', 'virtue'),
            'subtitle' => __('e.g. = Featured Products', 'virtue'),
            ),
         array(
            'id'=>'home_product_feat_column',
            'type' => 'slider', 
            'title' => __('Choose how many columns are in carousel', 'virtue'),
            "default"       => "4",
            "min"       => "2",
            "step"      => "1",
            "max"       => "6",
            ),
         array(
            'id'=>'home_product_count',
            'type' => 'slider', 
            'title' => __('Choose how many products are in carousel', 'virtue'),
            "default"       => "6",
            "min"       => "4",
            "step"      => "1",
            "max"       => "18",
            ),
         array(
            'id'=>'home_product_feat_scroll',
            'type' => 'select',
            'title' => __('Carousel Scroll', 'virtue'), 
            'subtitle' => __("Choose how the product items scroll.", 'virtue'),
            'options' => array('oneitem' => __('One Item', 'virtue'), 'all' => __('All Visible', 'virtue')),
            'default' => 'oneitem',
            'width' => 'width:60%',
            ),
         array(
            'id'=>'home_product_feat_speed',
            'type' => 'slider', 
            'title' => __('Choose the carousel speed (in seconds).', 'virtue'),
            "default"       => "9",
            "min"       => "2",
            "step"      => "1",
            "max"       => "12",
            ),
         array(
            'id'=>'info_product_sale_settings',
            'type' => 'info',
            'desc' => __('Home On Sale Product Settings', 'virtue'),
            ),
         array(
            'id'=>'product_sale_title',
            'type' => 'text',
            'title' => __('Home On Sale Product Carousel Title', 'virtue'),
            'subtitle' => __('e.g. = On Sale Products', 'virtue'),
            ),
         array(
            'id'=>'home_product_sale_column',
            'type' => 'slider', 
            'title' => __('Choose how many columns are in carousel', 'virtue'),
            "default"       => "4",
            "min"       => "2",
            "step"      => "1",
            "max"       => "6",
            ),
         array(
            'id'=>'home_product_sale_count',
            'type' => 'slider', 
            'title' => __('Choose how many products are in carousel', 'virtue'),
            "default"       => "6",
            "min"       => "4",
            "step"      => "1",
            "max"       => "18",
            ),
         array(
            'id'=>'home_product_sale_scroll',
            'type' => 'select',
            'title' => __('Carousel Scroll', 'virtue'), 
            'subtitle' => __("Choose how the product items scroll.", 'virtue'),
            'options' => array('oneitem' => __('One Item', 'virtue'), 'all' => __('All Visible', 'virtue')),
            'default' => 'oneitem',
            'width' => 'width:60%',
            ),
         array(
            'id'=>'home_product_sale_speed',
            'type' => 'slider', 
            'title' => __('Choose the carousel speed (in seconds).', 'virtue'),
            "default"       => "9",
            "min"       => "2",
            "step"      => "1",
            "max"       => "12",
            ),
         array(
            'id'=>'info_product_best_settings',
            'type' => 'info',
            'desc' => __('Home Best Selling Product Settings', 'virtue'),
            ),
         array(
            'id'=>'product_best_title',
            'type' => 'text',
            'title' => __('Home Best Selling Product Carousel Title', 'virtue'),
            'subtitle' => __('e.g. = Best Selling Products', 'virtue'),
            ),
         array(
            'id'=>'home_product_best_column',
            'type' => 'slider', 
            'title' => __('Choose how many columns are in carousel', 'virtue'),
            "default"       => "4",
            "min"       => "2",
            "step"      => "1",
            "max"       => "6",
            ),
         array(
            'id'=>'home_product_best_count',
            'type' => 'slider', 
            'title' => __('Choose how many products are in carousel', 'virtue'),
            "default"       => "6",
            "min"       => "4",
            "step"      => "1",
            "max"       => "18",
            ),
         array(
            'id'=>'home_product_best_scroll',
            'type' => 'select',
            'title' => __('Carousel Scroll', 'virtue'), 
            'subtitle' => __("Choose how the product items scroll.", 'virtue'),
            'options' => array('oneitem' => __('One Item', 'virtue'), 'all' => __('All Visible', 'virtue')),
            'default' => 'oneitem',
            'width' => 'width:60%',
            ),
         array(
            'id'=>'home_product_best_speed',
            'type' => 'slider', 
            'title' => __('Choose the carousel speed (in seconds).', 'virtue'),
            "default"       => "9",
            "min"       => "2",
            "step"      => "1",
            "max"       => "12",
            ),
         array(
            'id'=>'info_blog_settings',
            'type' => 'info',
            'desc' => __('Home Blog Settings', 'virtue'),
            ),
         array(
            'id'=>'blog_title',
            'type' => 'text',
            'title' => __('Home Blog Title', 'virtue'),
            'subtitle' => __('e.g. = Latest from the blog', 'virtue'),
            ),
         array(
            'id'=>'home_post_count',
            'type' => 'slider', 
            'title' => __('Choose How many posts on Homepage', 'virtue'),
            "default"       => "2",
            "min"       => "2",
            "step"      => "1",
            "max"       => "8",
            ),
         array(
            'id'=>'home_post_column',
            'type' => 'slider', 
            'title' => __('Choose how many post columns on Homepage', 'virtue'),
            "default"       => "2",
            "min"       => "1",
            "step"      => "1",
            "max"       => "2",
            ),
         array(
            'id'=>'home_post_type',
            'type' => 'select',
            'data' => 'categories',
            'title' => __('Limit posts to a Category', 'virtue'), 
            'subtitle' => __('Leave blank to select all', 'virtue'),
            'width' => 'width:60%',
            ),
         array(
            'id'=>'home_post_word_count',
            'type' => 'slider', 
            'title' => __('Home Post Excerpt Length', 'virtue'),
            'subtitle' => __('Determines how many words are in the post excerpt.', 'virtue'),
            "default"   => "34",
            "min"       => "10",
            "step"      => "2",
            "max"       => "70",
            ),
         array(
            'id'=>'info_portfolio_settings',
            'type' => 'info',
            'desc' => __('Home Portfolio Carousel Settings', 'virtue'),
            ),
         array(
            'id'=>'portfolio_title',
            'type' => 'text',
            'title' => __('Home Portfolio Carousel title', 'virtue'),
            'subtitle' => __('e.g. = Portfolio Carousel title', 'virtue'),
            ),
         array(
            'id'=>'portfolio_type',
            'type' => 'select',
            'data' => 'terms',
            'args' => array('taxonomies'=>'portfolio-type', 'args'=>array()),
            'title' => __('Portfolio Carousel Category Type', 'virtue'), 
            'subtitle' => __('Leave blank to select all types', 'virtue'),
            'width' => 'width:60%',
            ),
         array(
            'id'=>'home_portfolio_carousel_column',
            'type' => 'slider', 
            'title' => __('Choose how many columns are in carousel', 'virtue'),
            "default"       => "3",
            "min"       => "2",
            "step"      => "1",
            "max"       => "6",
            ),
         array(
            'id'=>'home_portfolio_carousel_height',
            'type' => 'text',
            'title' => __('Set height for portfolio items - Optional', 'virtue'),
            'subtitle' => __('Example 400', 'virtue'),
            ),
         array(
            'id'=>'home_portfolio_carousel_count',
            'type' => 'slider', 
            'title' => __('Choose how many portfolio items are in carousel', 'virtue'),
            "default"       => "6",
            "min"       => "4",
            "step"      => "1",
            "max"       => "18",
            ),
         array(
            'id'=>'home_portfolio_carousel_speed',
            'type' => 'slider', 
            'title' => __('Choose the carousel speed (in seconds).', 'virtue'),
            "default"       => "9",
            "min"       => "2",
            "step"      => "1",
            "max"       => "12",
            ),
         array(
            'id'=>'home_portfolio_carousel_scroll',
            'type' => 'select',
            'title' => __('Portfolio Carousel Scroll', 'virtue'), 
            'subtitle' => __("Choose how the portfolio items scroll.", 'virtue'),
            'options' => array('oneitem' => __('One Item', 'virtue'), 'all' => __('All Visible', 'virtue')),
            'default' => 'oneitem',
            'width' => 'width:60%',
            ),
         array(
            'id'=>'home_portfolio_order',
            'type' => 'select',
            'title' => __('Portfolio Carousel Order by', 'virtue'), 
            'subtitle' => __("Choose how the portfolio items should be ordered in the carousel.", 'virtue'),
            'options' => array('menu_order' => __('Menu Order', 'virtue'),'title' => __('Title', 'virtue'),'date' => __('Date', 'virtue'),'rand' => __('Random', 'virtue')),
            'default' => 'menu_order',
            'width' => 'width:60%',
            ),
         array(
            'id'=>'portfolio_show_type',
            'type' => 'switch', 
            'title' => __('Display Portfolio Types under Title', 'virtue'),
            "default" => 0,
            ),
          array(
            'id'=>'info_custom_carousel_settings',
            'type' => 'info',
            'desc' => __('Home Custom Carousel Settings', 'virtue'),
            ),
          array(
            'id'=>'custom_carousel_title',
            'type' => 'text',
            'title' => __('Home Custom Carousel Title', 'virtue'),
            'subtitle' => __('e.g. = Featured News', 'virtue'),
            ),
           array(
            'id'=>'home_custom_carousel_items',
            'type' => 'kad_slides',
            'title' => __('Custom Carousel Items', 'virtue'),
            'subtitle'=> __('Add images, descriptions, titles, and links', 'virtue'),
        ), 
           array(
            'id'=>'home_custom_carousel_column',
            'type' => 'slider', 
            'title' => __('Choose how many columns are in carousel', 'virtue'),
           "default"       => "4",
            "min"       => "2",
            "step"      => "1",
            "max"       => "6",
            ),
           array(
            'id'=>'home_custom_carousel_scroll',
            'type' => 'select',
            'title' => __('Custom Carousel Scroll', 'virtue'), 
            'subtitle' => __("Choose how the custom items scroll.", 'virtue'),
            'options' => array('oneitem' => __('One Item', 'virtue'), 'all' => __('All Visible', 'virtue')),
            'default' => 'oneitem',
            'width' => 'width:60%',
            ),
         array(
            'id'=>'home_custom_speed',
            'type' => 'slider', 
            'title' => __('Choose the carousel speed (in seconds).', 'virtue'),
            "default"       => "9",
            "min"       => "2",
            "step"      => "1",
            "max"       => "12",
            ),
           array(
            'id'=>'info_iconmenu_settings',
            'type' => 'info',
            'desc' => __('Home Icon Menu', 'virtue'),
            ),
           array(
            'id'=>'icon_menu',
            'type' => 'kad_icons',
            'title' => __('Icon Menu', 'virtue'),
            'subtitle'=> __('Choose your icons for the icon menu.', 'virtue'),
        ), 
            array(
            'id'=>'home_icon_menu_column',
            'type' => 'slider', 
            'title' => __('Choose how many columns in each row', 'virtue'),
            "default"       => "3",
            "min"       => "2",
            "step"      => "1",
            "max"       => "6",
            ),
           array(
            'id'=>'icon_bg_color',
            'type' => 'color',
            'title' => __('Icon Menu Box Background Color', 'virtue'), 
            'subtitle' => __('Choose the background color for icon menu boxes. * Note the hover color is set by your primary color in basic styling.', 'virtue'),
            'default' => '',
            'validate' => 'color',
            ),
           array(
            'id'=>'icon_font_color',
            'type' => 'color',
            'title' => __('Icon Menu Font and Icon Color', 'virtue'), 
            'subtitle' => __('Choose the color for icon menu font and icon. * Note the hover color is set to white and background is set to primary color.', 'virtue'),
            'default' => '',
            'validate' => 'color',
            ),
           array(
            'id'=>'info_portfolio_full_settings',
            'type' => 'info',
            'desc' => __('Home Portfolio Full Settings', 'virtue'),
            ),
           array(
            'id'=>'portfolio_full_title',
            'type' => 'text',
            'title' => __('Home Portfolio Full Title', 'virtue'),
            'subtitle' => __('e.g. = Our Work', 'virtue'),
            ),
           array(
            'id'=>'portfolio_full_type',
            'type' => 'select',
            'data' => 'terms',
            'args' => array('taxonomies'=>'portfolio-type', 'args'=>array()),
            'title' => __('Portfolio Full Category Type', 'virtue'), 
            'subtitle' => __('Choose type for the Portfolio Full', 'virtue'),
            'width' => 'width:60%',
            ),
           array(
            'id'=>'portfolio_full_show_filter',
            'type' => 'switch', 
            'title' => __('Display Portfolio Filter', 'virtue'),
            "default"       => 0,
            ),
           array(
            'id'=>'home_port_count',
            'type' => 'slider', 
            'title' => __('Choose how many Portfolio Items on Homepage', 'virtue'),
            "default"       => "8",
            "min"       => "4",
            "step"      => "1",
            "max"       => "26",
            ),
           array(
            'id'=>'home_portfolio_full_order',
            'type' => 'select',
            'title' => __('Portfolio full Order by', 'virtue'), 
            'subtitle' => __("Choose how the portfolio items should be ordered.", 'virtue'),
            'options' => array('menu_order' => __('Menu Order', 'virtue'),'title' => __('Title', 'virtue'),'date' => __('Date', 'virtue'),'rand' => __('Random', 'virtue')),
            'default' => 'menu_order',
            'width' => 'width:60%',
            ),
           array(
            'id'=>'home_port_columns',
            'type' => 'slider', 
            'title' => __('Choose how many Portfolio columns', 'virtue'),
            "default"       => "4",
            "min"       => "2",
            "step"      => "1",
            "max"       => "5",
            ),
           array(
            'id'=>'home_portfolio_full_height',
            'type' => 'text',
            'title' => __('Set height for portfolio items - Optional', 'virtue'),
            'subtitle' => __('Example 400', 'virtue'),
            ),
           array(
            'id'=>'portfolio_full_masonry',
            'type' => 'switch', 
            'title' => __('Masonry Style', 'virtue'),
            "default"       => 0,
            ),
           array(
            'id'=>'portfolio_full_show_type',
            'type' => 'switch', 
            'title' => __('Display Portfolio Types under Title', 'virtue'),
            "default"       => 0,
            ),
           array(
            'id'=>'home_portfolio_lightbox',
            'type' => 'switch', 
            'title' => __('Display lightbox link in top right corner?', 'virtue'),
            "default"       => 0,
            ),
           array(
            'id'=>'info_page_content',
            'type' => 'info',
            'desc' => __('Page Content Options (if home page is latest post page)', 'virtue'),
            ),
           array(
            'id'=>'home_post_summery',
            'type' => 'select',
            'title' => __('Latest Post Display', 'virtue'), 
            'subtitle' => __("If Latest Post page is front page. Choose to show full post or post excerpt.", 'virtue'),
            'options' => array('summery' => __('Post Excerpt', 'virtue'),'full' => __('Full', 'virtue')),
            'default' => 'summery',
            'width' => 'width:60%',
            ),
           array(
            'id'=>'home_post_grid',
            'type' => 'switch', 
            'title' => __('Use Post Grid Format', 'virtue'),
            "default" => 0,
            ),
           array(
            'id'=>'home_post_grid_columns',
            'type' => 'select',
            'title' => __('Post Columns', 'virtue'), 
            'options' => array('fourcolumn' => __('Four Column', 'virtue'), 'threecolumn' => __('Three Column', 'virtue'),'twocolumn' => __('Two Column', 'virtue')),
            'default' => 'fourcolumn',
            'width' => 'width:60%',
            'required' => array('home_post_grid','=','1'),
            ),

    ),
);
$this->sections[] = array(
    'icon' => 'icon-basket',
    'icon_class' => 'icon-large',
    'title' => __('Shop Settings', 'virtue'),
    'desc' => "<div class='redux-info-field'><h3>".__('Shop Archive Page Settings', 'virtue')."</h3></div>",
    'fields' => array(
      array(
            'id'=>'product_shop_layout',
            'type' => 'select',
            'title' => __('Shop Product Column Layout', 'virtue'), 
            'subtitle' => __('Choose how many product columns on the shop and category pages', 'virtue'),
            'options' => array('1' => __('One Column', 'virute'), '2' => __('Two Column', 'virute'), '3' => __('Three Column', 'virute'), '4' => __('Four Column', 'virute'), '5' => __('Five Column', 'virute'), '6' => __('Six Column', 'virute')),
            'width' => 'width:60%',
            'default' => '4',
            ),
      array(
            'id'=>'shop_layout',
            'type' => 'image_select',
            'compiler'=> false,
            'title' => __('Display the sidebar on Shop Page?', 'virtue'), 
            'subtitle' => __('This determines if there is a sidebar on the shop page.', 'virtue'),
            'options' => array(
                    'full' => array('alt' => 'Full Layout', 'img' => OPTIONS_PATH .'img/1col.png'),
                    'sidebar' => array('alt' => 'Sidebar Layout', 'img' => OPTIONS_PATH .'img/2cr.png'),
                ),
            'default' => 'full',
            ),
      array(
            'id'=>'shop_sidebar',
            'type' => 'select',
            'title' => __('Choose a Sidebar for your shop page', 'virtue'), 
            'data' => 'sidebars',
            'default' => 'sidebar-primary',
            'width' => 'width:60%',
            ),  
      array(
            'id'=>'shop_cat_layout',
            'type' => 'image_select',
            'compiler'=> false,
            'title' => __('Display the sidebar on Product Category Pages?', 'virtue'), 
            'subtitle' => __('This determines if there is a sidebar on the product category pages.', 'virtue'),
            'options' => array(
                    'full' => array('alt' => 'Full Layout', 'img' => OPTIONS_PATH .'img/1col.png'),
                    'sidebar' => array('alt' => 'Sidebar Layout', 'img' => OPTIONS_PATH .'img/2cr.png'),
                ),
            'default' => 'full',
            ),
      array(
            'id'=>'shop_cat_sidebar',
            'type' => 'select',
            'title' => __('Choose a Sidebar for your Product Category Pages', 'virtue'), 
            'data' => 'sidebars',
            'default' => 'sidebar-primary',
            'width' => 'width:60%',
            ),            
      array(
            'id'=>'products_per_page',
            'type' => 'slider', 
            'title' => __('How many products per page', 'virtue'),
            "default"       => "12",
            "min"       => "2",
            "step"      => "1",
            "max"       => "40",
            ),
      array(
            'id'=>'shop_filter',
            'type' => 'switch', 
            'title' => __('Show Category Filter on Shop Page', 'virtue'),
            'subtitle' => __('This adds an dynamic filter to the shop page', 'virtue'),
            "default"=> 0,
            ),
      array(
            'id'=>'cat_filter',
            'type' => 'switch', 
            'title' => __('Show Category Filter on Category Pages', 'virtue'),
            'subtitle' => __('This adds an dynamic filter to Category pages', 'virtue'),
            "default"=> 0,
            ),
      array(
            'id'=>'infinitescroll',
            'type' => 'switch', 
            'title' => __('Use Infinite Scroll on Shop pages', 'virtue'),
            'subtitle' => __('Not recomended that you use with filter.', 'virtue'),
            "default"=> 0,
            ),
      array(
            'id'=>'shop_rating',
            'type' => 'switch', 
            'title' => __('Show Ratings in Shop and Category Pages', 'virtue'),
            'subtitle' => __('This determines if the rating is displayed in the product archive pages', 'virtue'),
            "default"=> 1,
            ),
      array(
            'id'=>'outofstocktag',
            'type' => 'switch', 
            'title' => __('Show Sold tag if product out of stock.', 'virtue'),
            'subtitle' => __('This determines if a sold tag is displayed on the top right of the product image', 'virtue'),
            "default"=> 0,
            ),
      array(
            'id'=>'shop_hide_action',
            'type' => 'switch', 
            'title' => __('Hide Add to Cart Till Mouse Hover', 'virtue'),
            'subtitle' => __('This determines if add to cart button will be hidden till the mouse hovers over the product', 'virtue'),
            "default"=> 1,
            ),
      array(
            'id'=>'product_img_flip',
            'type' => 'switch', 
            'title' => __('Product Image Flip', 'virtue'),
            'subtitle' => __('This allows your product image to flip to the first gallery image when hovered over on shop page. *Note only works in newer browsers.', 'virtue'),
            "default"=> 0,
            ),
        array(
            'id'=>'info_cat_product_size',
            'type' => 'info',
            'desc' => __('Shop Category Image Size', 'virtue'),
            ),
         array(
            'id'=>'product_cat_layout',
            'type' => 'select',
            'title' => __('Shop Category Column Layout', 'virtue'), 
            'subtitle' => __('Choose how many Category Image columns to show on the shop and category pages', 'virtue'),
            'options' => array('2' => __('Two Column', 'virute'), '3' => __('Three Column', 'virute'), '4' => __('Four Column', 'virute'), '5' => __('Five Column', 'virute'), '6' => __('Six Column', 'virute')),
            'width' => 'width:60%',
            'default' => '4',
            ),
        array(
            'id'=>'product_cat_img_ratio',
            'type' => 'select',
            'title' => __('Category Image Aspect Ratio', 'virtue'), 
            'subtitle' => __('If enabled below this sets how you want your category images to be cropped.', 'virtue'),
            'options' => array('square' => __('Square 1:1', 'virtue'), 'portrait' => __('Portrait 3:4', 'virtue'), 'landscape' => __('Landscape 4:3', 'virtue'), 'widelandscape' => __('Wide Landscape 4:2', 'virtue')),
            'default' => 'widelandscape',
            'width' => 'width:60%',
            ),
        array(
            'id'=>'info_shop_product_title',
            'type' => 'info',
            'desc' => __('Shop Product Title Settings', 'virtue'),
            ),
        array(
            'id'=>'font_shop_title',
            'type' => 'typography', 
            'title' => __('Shop & archive Product title Font', 'virtue'),
            'font-family'=>true, 
            'google'=>true, // Disable google fonts. Won't work if you haven't defined your google api key
            'font-backup'=>false, // Select a backup non-google font in addition to a google font
            'font-style'=>true, // Includes font-style and weight. Can use font-style or font-weight to declare
            'subsets'=>true, // Only appears if google is true and subsets not set to false
            'font-size'=>true,
            'line-height'=>true,
            'text-align' => false,
            'color'=>true,
            'preview'=>true, // Disable the previewer
            'output' => array('.product_item .product_details h5'),
            'subtitle'=> __("Choose Size and Style for product titles on category and archive pages.", 'virtue'),
            'default'=> array(
                'font-family'=>'Lato',
                'color'=>"", 
                'font-style'=>'700',
                'font-size'=>'16px', 
                'line-height'=>'20px', ),
            ),
        array(
            'id'=>'shop_title_uppercase',
            'type' => 'switch', 
            'title' => __('Set Product Title to Uppercase?', 'virtue'),
            'subtitle' => __('This makes your product titles uppercase on Category pages', 'virtue'),
            "default"=> 0,
            ),
        array(
            'id'=>'shop_title_min_height',
            'type' => 'slider', 
            'title' => __('Product title Min Height', 'virtue'),
            'subtitle' => __('If your titles are long increase this to help align your products height.', 'virtue'),
            "default"       => "40",
            "min"       => "20",
            "step"      => "5",
            "max"       => "120",
            ), 
         array(
            'id'=>'info_shop_img_size',
            'type' => 'info',
            'desc' => __('Product Image Sizes', 'virtue'),
            ),
         array(
            'id'=>'shop_img_ratio',
            'type' => 'select',
            'title' => __('Product Image Aspect Ratio', 'virtue'), 
            'subtitle' => __('If enabled below this sets how you want your product images to be cropped.', 'virtue'),
            'options' => array('square' => __('Square 1:1', 'virtue'), 'portrait' => __('Portrait 3:4', 'virtue'), 'landscape' => __('Landscape 4:3', 'virtue'), 'widelandscape' => __('Wide Landscape 4:2', 'virtue')),
            'default' => 'square',
            'width' => 'width:60%',
            ),
      array(
            'id'=>'product_img_resize',
            'type' => 'switch', 
            'title' => __('Enable Product Image Aspect Ratio on Catalog pages', 'virtue'),
            'subtitle' => __('If turned off image dimensions are set by woocommerce settings - recommended width: 270px for Catalog Images', 'virtue'),
            "default"=> 1,
            ),
      array(
            'id'=>'product_simg_resize',
            'type' => 'switch', 
            'title' => __('Enable Product Image Aspect Ratio on product Page', 'virtue'),
            'subtitle' => __('If turned off image dimensions are set by woocommerce settings - recommended width: 468px for Single Product Image', 'virtue'),
            "default"=> 1,
            ),
        array(
            'id'=>'info_shop_slider',
            'type' => 'info',
            'desc' => __('Shop Slider', 'virtue'),
            ),
      array(
            'id'=>'shop_slider',
            'type' => 'switch', 
            'title' => __('Would you like to use have a slider on your shop page?', 'virtue'),
            "default"       => 0,
            ),
        array(
            'id'=>'choose_shop_slider',
            'type' => 'select',
            'title' => __('Choose a Slider for your shop page', 'virtue'), 
            'options' => array('none' => __('None', 'virtue'),'flex' => __('Flex Slider', 'virtue'),'rev' => __('Revolution Slider', 'virtue'), 'cyclone' => __('Cyclone/Shortcode Slider', 'virtue')),
            'default' => 'none',
            'width' => 'width:60%',
            'required' => array('shop_slider','=','1'),
            ),
        array(
            'id'=>'shop_rev_slider',
            'type' => 'select',
            'title' => __('If Revolution Slider', 'virtue'), 
            'subtitle' => __("Choose your Revolution Slider Here", 'virtue'),
            'options' => $of_revolution,
            'default' => 'select',
            'width' => 'width:60%',
            'required' => array('shop_slider','=','1'),
            ),
        array(
            'id'=>'shop_cyclone_slider',
            'type' => 'text',
            'title' => __('If Cyclone Slider', 'virtue'),
            'subtitle' => __('Paste Cyclone Slider shortcode here', 'virtue'),
            'required' => array('shop_slider','=','1'),
            ),
        array(
            'id'=>'shop_slider_images',
            'type' => 'kad_slides',
            'title' => __('Slider Images', 'virtue'),
            'subtitle'=> __('Use large images for best results.', 'virtue'),
            'required' => array('shop_slider','=','1'),
        ),  
        array(
            'id'=>'shop_slider_size',
            'type' => 'slider', 
            'title' => __('Slider Max Height', 'virtue'),
            'subtitle' => __('Note: does not work if images are smaller than max.', 'virtue'),
            "default"       => "400",
            "min"       => "100",
            "step"      => "5",
            "max"       => "600",
            'required' => array('shop_slider','=','1'),
            ), 
        array(
            'id'=>'shop_slider_size_width',
            'type' => 'slider', 
            'title' => __('Slider Max Width', 'virtue'),
            'subtitle' => __('Note: does not work if images are smaller than max. If using sidebar set to 770', 'virtue'),
            "default"       => "1140",
            "min"       => "600",
            "step"      => "5",
            "max"       => "1140",
            'required' => array('shop_slider','=','1'),
            ), 
        array(
            'id'=>'shop_slider_autoplay',
            'type' => 'switch', 
            'title' => __('Auto Play?', 'virtue'),
            'subtitle'=> __('This determines if a slider automatically scrolls', 'virtue'),
            "default"       => 1,
            'required' => array('shop_slider','=','1'),
            ),
        array(
            'id'=>'shop_slider_pausetime',
            'type' => 'slider', 
            'title' => __('Slider Pause Time', 'virtue'),
            'subtitle' => __('How long to pause on each slide, in milliseconds.', 'virtue'),
            "default"   => "7000",
            "min"       => "3000",
            "step"      => "1000",
            "max"       => "12000",
            'required' => array('shop_slider','=','1'),
            ), 
        array(
            'id'=>'shop_trans_type',
            'type' => 'select',
            'title' => __('Transition Type', 'virtue'), 
            'subtitle' => __("Choose a transition type", 'virtue'),
            'options' => array('fade' => 'Fade','slide' => 'Slide'),
            'default' => 'fade',
            'required' => array('shop_slider','=','1'),
            ),
        array(
            'id'=>'shop_slider_transtime',
            'type' => 'slider', 
            'title' => __('Slider Transition Time', 'virtue'),
            'subtitle' => __('How long for slide transitions, in milliseconds.', 'virtue'),
            "default"       => "600",
            "min"       => "200",
            "step"      => "100",
            "max"       => "1200",
            'required' => array('shop_slider','=','1'),
            ), 
        array(
            'id'=>'shop_slider_captions',
            'type' => 'switch', 
            'title' => __('Show Captions?', 'virtue'),
            'subtitle'=> __('Choose to show or hide captions', 'virtue'),
            "default"       => 0,
            'required' => array('shop_slider','=','1'),
            ),
        array(
            'id'=>'info_product_settings',
            'type' => 'info',
            'desc' => __('Product Page Settings', 'virtue'),
            ),
        array(
            'id'=>'singleproduct_layout',
            'type' => 'image_select',
            'title' => __('Single Product Layout', 'virtue'), 
            'subtitle' => __('This determines if the image and product title layout on single product pages.', 'virtue'),
            'options' => array(
                    'normal' => array('alt' => 'Normal Layout', 'img' => OPTIONS_PATH .'img/pni.png'),
                    'largeimg' => array('alt' => 'Large Image Layout', 'img' => OPTIONS_PATH .'img/pwi.png'),
                ),
            'default' => 'normal',
            ),
        array(
            'id'=>'product_sidebar_default',
            'type' => 'select',
            'title' => __('Product Sidebar Default', 'virtue'), 
            'options' => array('no' => __('No, Do not Show', 'virtue'), 'yes' => __('Yes, Show', 'virtue')),
            'width' => 'width:60%',
            'default' => 'no',
            ),
        array(
            'id'=>'product_sidebar_default_sidebar',
            'type' => 'select',
            'title' => __('Choose a Default Sidebar for your Single Product Pages', 'virtue'), 
            'data' => 'sidebars',
            'default' => 'sidebar-primary',
            'width' => 'width:60%',
            ),  
        array(
            'id'=>'product_radio',
            'type' => 'switch', 
            'title' => __('Display variations as radio buttons instead of select box?', 'virtue'),
            'subtitle'=> __('This will display product varations in a box form.', 'virtue'),
            "default"=> 0,
            ),
        array(
            'id'=>'product_nav',
            'type' => 'switch', 
            'title' => __('Display Product Navigation arrows beside title?', 'virtue'),
            'subtitle'=> __('This will display navigation arrow beside product title to navigate to other products in the same category.', 'virtue'),
            "default"=> 0,
            ),
        array(
            'id'=>'product_tabs',
            'type' => 'switch', 
            'title' => __('Display product tabs?', 'virtue'),
            'subtitle'=> __('This determines if product tabs are displayed', 'virtue'),
            "default"       => 1,
            ),
        array(
            'id'=>'product_tabs_scroll',
            'type' => 'switch', 
            'title' => __('Scroll to Tab?', 'virtue'),
            'subtitle'=> __('This scrolls the page to the product tab when clicked', 'virtue'),
            "default"       => 0,
            ),
        array(
            'id'=>'ptab_description',
            'type' => 'slider', 
            'title' => __('Product Tab Order - Lowest First', 'virtue'),
            'desc'=> __('Description Tab', 'virtue'),
            "default"       => "10",
            "min"       => "5",
            "step"      => "5",
            "max"       => "60",
            ), 
        array(
            'id'=>'ptab_additional',
            'type' => 'slider', 
            'desc'=> __('Additional Information Tab', 'virtue'),
            "default"       => "20",
            "min"       => "5",
            "step"      => "5",
            "max"       => "60",
            ), 
         array(
            'id'=>'ptab_reviews',
            'type' => 'slider', 
            'desc'=> __('Reviews Tab', 'virtue'),
            "default"       => "30",
            "min"       => "5",
            "step"      => "5",
            "max"       => "60",
            ), 
         array(
            'id'=>'ptab_video',
            'type' => 'slider', 
            'desc'=> __('Product Video Tab', 'virtue'),
            "default"       => "40",
            "min"       => "5",
            "step"      => "5",
            "max"       => "60",
            ),
          array(
            'id'=>'custom_tab_01',
            'type' => 'switch', 
            'title' => __('Activate Custom Tab 01', 'virtue'),
            'subtitle'=> __('This adds a custom product tab to your products', 'virtue'),
            "default"       => 0,
            ),
          array(
            'id'=>'custom_tab_02',
            'type' => 'switch', 
            'title' => __('Activate Custom Tab 02', 'virtue'),
            'subtitle'=> __('This adds a custom product tab to your products', 'virtue'),
            "default"       => 0,
            ),
          array(
            'id'=>'custom_tab_03',
            'type' => 'switch', 
            'title' => __('Activate Custom Tab 03', 'virtue'),
            'subtitle'=> __('This adds a custom product tab to your products', 'virtue'),
            "default"       => 0,
            ),
        array(
            'id'=>'related_products',
            'type' => 'switch', 
            'title' => __('Display related products?', 'virtue'),
            'subtitle'=> __('This determines related products are displayed', 'virtue'),
            "default"       => 1,
            ),
        array(
            'id'=>'related_item_column',
            'type' => 'slider', 
            'title' => __('Choose how many columns are in related product carousel', 'virtue'),
            "default"   => "4",
            "min"       => "2",
            "step"      => "1",
            "max"       => "6",
            ),
    ),
);
$this->sections[] = array(
    'icon' => 'icon-images2',
    'icon_class' => 'icon-large',
    'title' => __('Portfolio Options', 'virtue'),
    'desc' => "<div class='redux-info-field'><h3>".__('Portfolio Options', 'virtue')."</h3></div>",
    'fields' => array(
        array(
            'id'=>'portfolio_permalink',
            'type' => 'text',
            'title' => __('Portfolio Permalink Base', 'virtue'),
            'subtitle' => __('Standard: portfolio *NOTE If you change this resave your permalinks', 'virtue'),
            ),
        array(
            'id'=>'portfolio_comments',
            'type' => 'switch', 
            'title' => __('Allow Comments on Portfolio Posts', 'virtue'),
            'subtitle' => __('Turn on to allow Comments on Portfolio posts', 'virtue'),
            "default" => 0,
            ),
        array(
            'id'=>'info_portfolio_nav_options',
            'type' => 'info',
            'desc' => __('Portfolio Navigation Options', 'virtue'),
            ),
        array(
            'id'=>'portfolio_link',
            'type' => 'select',
            'data' => 'pages',
            'width' => 'width:60%',
            'title' => __('All Projects Default Portfolio Page', 'virtue'), 
            'subtitle' => __('This sets the link in every portfolio post. You can override in post.', 'virtue'),
            ),
        array(
            'id'=>'portfolio_arrow_nav',
            'type' => 'select',
            'title' => __('Portfolio Arrow Navigation', 'virtue'), 
            'options' => array('all' => __('Navigate through All Posts', 'virtue'), 'cat' => __('Navigate through Category', 'virtue')),
            'width' => 'width:60%',
            'default' => 'all',
            ),
        array(
            'id'=>'info_portfolio_cat_defaults',
            'type' => 'info',
            'desc' => __('Portfolio Category Pages', 'virtue'),
            ),
        array(
            'id'=>'portfolio_tax_column',
            'type' => 'slider', 
            'title' => __('Choose how many portfolio columns to show on portfolio catagory pages.', 'virtue'),
            "default"       => "4",
            "min"       => "2",
            "step"      => "1",
            "max"       => "6",
            ),
         array(
            'id'=>'portfolio_tax_items',
            'type' => 'slider', 
            'title' => __('Choose how many portfolio items show on portfolio catagory pages.', 'virtue'),
            "default"       => "12",
            "min"       => "2",
            "step"      => "1",
            "max"       => "48",
            ),
        array(
            'id'=>'info_portfolio_recent_carousel',
            'type' => 'info',
            'desc' => __('Portfolio Post Bottom Carousel', 'virtue'),
            ),
        array(
            'id'=>'portfolio_recent_car_column',
            'type' => 'slider', 
            'title' => __('Choose how many columns to show on recent portfolio carousel.', 'virtue'),
            "default"       => "4",
            "min"       => "2",
            "step"      => "1",
            "max"       => "6",
            ),
      ),
);
$this->sections[] = array(
    'icon' => 'icon-pencil2',
    'icon_class' => 'icon-large',
    'title' => __('Blog Options', 'virtue'),
    'desc' => "<div class='redux-info-field'><h3>".__('Blog Options', 'virtue')."</h3></div>",
    'fields' => array(
      array(
            'id'=>'post_word_count',
            'type' => 'slider', 
            'title' => __('Post Excerpt Length', 'virtue'),
            'subtitle' => __('Determines how many words are in an Excerpt.', 'virtue'),
            "default"   => "40",
            "min"       => "20",
            "step"      => "2",
            "max"       => "80",
            ),
        array(
            'id'=>'close_comments',
            'type' => 'switch', 
            'title' => __('Show Comments Closed Text?', 'virtue'),
            'subtitle' => __('Choose to show or hide comments closed alert below posts.', 'virtue'),
            "default" => 0,
            ),
      array(
            'id'=>'hide_author',
            'type' => 'switch', 
            'title' => __('Show Author Icon with posts?', 'virtue'),
            'subtitle' => __('Choose to show or hide author icon under post title.', 'virtue'),
            "default" => 1,
            ),
      array(
            'id'=>'hide_postedin',
            'type' => 'switch', 
            'title' => __('Show "posted in" categories with posts?', 'virtue'),
            'subtitle' => __('Choose to show or hide posted in categories under post title.', 'virtue'),
            "default" => 1,
            ),
      array(
            'id'=>'hide_commenticon',
            'type' => 'switch', 
            'title' => __('Show Comment Icon with posts?', 'virtue'),
            'subtitle' => __('Choose to show or hide comment icon under post title.', 'virtue'),
            "default" => 1,
            ),
      array(
            'id'=>'hide_postdate',
            'type' => 'switch', 
            'title' => __('Show Date with posts?', 'virtue'),
            'subtitle' => __('Choose to show or hide date with post title.', 'virtue'),
            "default" => 1,
            ),
      array(
            'id'=>'show_postlinks',
            'type' => 'switch', 
            'title' => __('Show Previous and Next posts links?', 'virtue'),
            'subtitle' => __('Choose to show or hide previous and next post links in the footer of a single post.', 'virtue'),
            "default" => 0,
            ),
      array(
            'id'=>'blog_infinitescroll',
            'type' => 'switch', 
            'title' => __('Use Infinite Scroll on Blog pages', 'virtue'),
            'subtitle' => __('Remove Pagination and creates infinite scroll instead. Note does not work with slider post summaries', 'virtue'),
            "default"=> 0,
            ),
      array(
            'id'=>'info_blog_defaults',
            'type' => 'info',
            'desc' => __('Blog Post Defaults', 'virtue'),
            ),
       array(
            'id'=>'blogpost_sidebar_default',
            'type' => 'select',
            'title' => __('Blog Post Sidebar Default', 'virtue'), 
            'options' => array('yes' => __('Yes, Show', 'virtue'), 'no' => __('No, Do not Show', 'virtue')),
            'width' => 'width:60%',
            'default' => 'yes',
            ),
        array(
            'id'=>'post_summery_default',
            'type' => 'select',
            'title' => __('Blog Post Summary Default', 'virtue'), 
            'options' => array('text' => __('Text', 'virtue'), 'img_portrait' => __('Portrait Image', 'virtue'), 'img_landscape' => __('Landscape Image', 'virtue'), 'slider_portrait' => __('Portrait Image Slider', 'virtue'), 'slider_landscape' => __('Landscape Image Slider', 'virtue')),
            'width' => 'width:60%',
            'default' => 'text',
            ),
        array(
            'id'=>'post_summery_default_image',
            'type' => 'media', 
            'url'=> true,
            'title' => __('Default post summary feature Image', 'virtue'),
            'subtitle' => __('Replace theme default feature image for posts without a featured image', 'virtue'),
            ),
        array(
            'id'=>'post_head_default',
            'type' => 'select',
            'title' => __('Blog Post Head Content Default', 'virtue'), 
            'options' => array('none' => __('None', 'virtue'), 'flex' => __('Image Slider', 'virtue'), 'carousel' => __('Image Carousel', 'virtue'), 'image' => __('Image', 'virtue'), 'video' => __('Video', 'virtue')),
            'width' => 'width:60%',
            'default' => 'none',
            ),
        array(
            'id'=>'post_author_default',
            'type' => 'select',
            'title' => __('Blog Post Author Box Default', 'virtue'), 
            'options' => array('no' => __('No, Do not Show', 'virtue'), 'yes' => __('Yes, Show', 'virtue')),
            'width' => 'width:60%',
            'default' => 'no',
            ),
        array(
            'id'=>'post_carousel_default',
            'type' => 'select',
            'title' => __('Blog Post Bottom Carousel Default', 'virtue'), 
            'options' => array('no' => __('No, Do not Show', 'virtue'), 'recent' => __('Yes - Display Recent Posts', 'virtue'), 'similar' => __('Yes - Display Similar Posts', 'virtue')),
            'width' => 'width:60%',
            'default' => 'no',
            ),
        array(
            'id'=>'blog_similar_random_order',
            'type' => 'switch', 
            'title' => __('Display Similar Posts in random order?', 'virtue'),
            "default"=> 0,
            'required' => array('post_carousel_default','=','similar'),
            ),
        array(
            'id'=>'info_blog_category',
            'type' => 'info',
            'desc' => __('Blog Category/Archive Defaults', 'virtue'),
            ),
        array(
            'id'=>'category_post_summary',
            'type' => 'select',
            'title' => __('Category Display Type', 'virtue'), 
            'options' => array('summary' => __('Post Excerpt', 'virtue'),'full' => __('Full Post', 'virtue'), 'grid' => __('Grid Post', 'virtue')),
            'width' => 'width:60%',
            'default' => 'summary',
            ),
        array(
            'id'=>'category_post_grid_column',
            'type' => 'select',
            'title' => __('Category Display Type', 'virtue'), 
            'options' => array('2' => __('Two Column', 'virtue'),'3' => __('Three Column', 'virtue'), '4' => __('Four Column', 'virtue')),
            'width' => 'width:60%',
            'default' => '3',
            'required' => array('category_post_summary','=','grid'),
            ),
        array(
            'id'=>'blog_cat_layout',
            'type' => 'image_select',
            'compiler'=> false,
            'title' => __('Display the sidebar on blog archives?', 'virtue'), 
            'subtitle' => __('This determines if there is a sidebar on the blog category pages.', 'virtue'),
            'options' => array(
                    'full' => array('alt' => 'Full Layout', 'img' => OPTIONS_PATH .'img/1col.png'),
                    'sidebar' => array('alt' => 'Sidebar Layout', 'img' => OPTIONS_PATH .'img/2cr.png'),
                ),
            'default' => 'sidebar',
            ),
      array(
            'id'=>'blog_cat_sidebar',
            'type' => 'select',
            'title' => __('Choose a Sidebar for your Category/Archive Pages', 'virtue'), 
            'data' => 'sidebars',
            'default' => 'sidebar-primary',
            'width' => 'width:60%',
            ),    
      ),
);
$this->sections[] = array(
    'icon' => 'icon-brush',
    'icon_class' => 'icon-large',
    'title' => __('Basic Styling', 'virtue'),
    'desc' => "<div class='redux-info-field'><h3>".__('Basic Stylng', 'virtue')."</h3></div>",
    'fields' => array(
        array(
            'id'=>'skin_stylesheet',
            'type' => 'select',
            'title' => __('Theme Skin Stylesheet', 'virtue'), 
            'subtitle' => __("Note* changes made in options panel will override this stylesheet. Example: Colors set in typography.", 'virtue'),
            'options' => $alt_stylesheets,
            'default' => 'default.css',
            'width' => 'width:60%',
            'customizer' => true,
            ),
        array(
            'id'=>'primary_color',
            'type' => 'color',
            'title' => __('Primary Color', 'virtue'), 
            'subtitle' => __('Choose the default Highlight color for your site.', 'virtue'),
            'transparent'=>false,
            'validate' => 'color',
            'customizer' => true,
            ),
        array(
            'id'=>'primary20_color',
            'type' => 'color',
            'title' => __('20% lighter than Primary Color', 'virtue'), 
            'subtitle' => __('This is used for hover effects', 'virtue'),
            'default' => '',
            'transparent'=>false,
            'validate' => 'color',
            'customizer' => true,
            ),
        array(
            'id'=>'gray_font_color',
            'type' => 'color',
            'title' => __('Sitewide Gray Fonts', 'virtue'), 
            'default' => '',
            'transparent'=>false,
            'validate' => 'color',
            'customizer' => true,
            ),
        array(
            'id'=>'footerfont_color',
            'type' => 'color',
            'title' => __('Footer Font Color', 'virtue'), 
            'default' => '',
            'transparent'=>false,
            'validate' => 'color',
            'customizer' => true,
            ),
      ),
);
$this->sections[] = array(
    'icon' => 'icon-paint-format',
    'icon_class' => 'icon-large',
    'title' => __('Advanced Styling', 'virtue'),
    'desc' => "<div class='redux-info-field'><h3>".__('Main Content Background', 'virtue')."</h3></div>",
    'fields' => array(
      array(
            'id'=>'content_bg_color',
            'type' => 'color',
            'title' => __('Content Background Color', 'virtue'),
            'customizer' => true,
            'default' => '',
            'validate' => 'color',
            ),
      array(
            'id'=>'bg_content_bg_img',
            'type' => 'media', 
            'url'=> true,
            'title' => __('Upload background image or texture', 'virtue'),
            ), 
      array(
            'id'=>'content_bg_repeat',
            'type' => 'select',
            'title' => __('Image repeat options', 'virtue'), 
            'options' => array('no-repeat' => __('no-repeat', 'virtue'), 'repeat' => __('repeat', 'virtue'), 'repeat-x' => __('repeat-x', 'virtue'), 'repeat-y' => __('repeat-y', 'virtue')),
            'width' => 'width:60%',
            ),
      array(
            'id'=>'content_bg_placementx',
            'type' => 'select',
            'title' => __('X image placement options', 'virtue'), 
            'options' => array('left' => __('left', 'virtue'), 'center' => __('center', 'virtue'), 'right' => __('right', 'virtue')),
            'width' => 'width:60%',
            ),
      array(
            'id'=>'content_bg_placementy',
            'type' => 'select',
            'title' => __('Y image placement options', 'virtue'), 
            'options' => array('top' => __('top', 'virtue'), 'center' => __('center', 'virtue'), 'bottom' => __('bottom', 'virtue')),
            'width' => 'width:60%',
            ),
      array(
            'id'=>'info_topbar_background',
            'type' => 'info',
            'desc' => __('Topbar Background', 'virtue'),
            ),
      array(
            'id'=>'topbar_bg_color',
            'type' => 'color',
            'title' => __('Topbar Background Color', 'virtue'), 
            'default' => '',
            'validate' => 'color',
            'customizer' => true,
            ),
      array(
            'id'=>'bg_topbar_bg_img',
            'type' => 'media', 
            'url'=> true,
            'title' => __('Upload background image or texture', 'virtue'),
            ), 
      array(
            'id'=>'topbar_bg_repeat',
            'type' => 'select',
            'title' => __('Image repeat options', 'virtue'), 
            'options' => array('no-repeat' => __('no-repeat', 'virtue'), 'repeat' => __('repeat', 'virtue'), 'repeat-x' => __('repeat-x', 'virtue'), 'repeat-y' => __('repeat-y', 'virtue')),
            'width' => 'width:60%',
            ),
      array(
            'id'=>'topbar_bg_placementx',
            'type' => 'select',
            'title' => __('X image placement options', 'virtue'), 
            'options' => array('left' => __('left', 'virtue'), 'center' => __('center', 'virtue'), 'right' => __('right', 'virtue')),
            'width' => 'width:60%',
            ),
      array(
            'id'=>'topbar_bg_placementy',
            'type' => 'select',
            'title' => __('Y image placement options', 'virtue'), 
            'options' => array('top' => __('top', 'virtue'), 'center' => __('center', 'virtue'), 'bottom' => __('bottom', 'virtue')),
            'width' => 'width:60%',
            ),
      array(
            'id'=>'info_header_background',
            'type' => 'info',
            'desc' => __('Header Background', 'virtue'),
            ),
      array(
            'id'=>'header_bg_color',
            'type' => 'color',
            'title' => __('Header Background Color', 'virtue'), 
            'default' => '',
            'validate' => 'color',
            'customizer' => true,
            ),
      array(
            'id'=>'bg_header_bg_img',
            'type' => 'media', 
            'url'=> true,
            'title' => __('Upload background image or texture', 'virtue'),
            ), 
      array(
            'id'=>'header_bg_repeat',
            'type' => 'select',
            'title' => __('Image repeat options', 'virtue'), 
            'options' => array('no-repeat' => __('no-repeat', 'virtue'), 'repeat' => __('repeat', 'virtue'), 'repeat-x' => __('repeat-x', 'virtue'), 'repeat-y' => __('repeat-y', 'virtue')),
            'width' => 'width:60%',
            ),
      array(
            'id'=>'header_bg_placementx',
            'type' => 'select',
            'title' => __('X image placement options', 'virtue'), 
            'options' => array('left' => __('left', 'virtue'), 'center' => __('center', 'virtue'), 'right' => __('right', 'virtue')),
            'width' => 'width:60%',
            ),
      array(
            'id'=>'header_bg_placementy',
            'type' => 'select',
            'title' => __('Y image placement options', 'virtue'), 
            'options' => array('top' => __('top', 'virtue'), 'center' => __('center', 'virtue'), 'bottom' => __('bottom', 'virtue')),
            'width' => 'width:60%',
            ),
      array(
            'id'=>'info_menu_background',
            'type' => 'info',
            'desc' => __('Secondary Menu Background', 'virtue'),
            ),
      array(
            'id'=>'menu_bg_color',
            'type' => 'color',
            'title' => __('Secondary Menu Background Color', 'virtue'), 
            'default' => '',
            'validate' => 'color',
            'customizer' => true,
            ),
      array(
            'id'=>'bg_menu_bg_img',
            'type' => 'media', 
            'url'=> true,
            'title' => __('Upload background image or texture', 'virtue'),
            ), 
      array(
            'id'=>'menu_bg_repeat',
            'type' => 'select',
            'title' => __('Image repeat options', 'virtue'), 
            'options' => array('no-repeat' => __('no-repeat', 'virtue'), 'repeat' => __('repeat', 'virtue'), 'repeat-x' => __('repeat-x', 'virtue'), 'repeat-y' => __('repeat-y', 'virtue')),
            'width' => 'width:60%',
            ),
      array(
            'id'=>'menu_bg_placementx',
            'type' => 'select',
            'title' => __('X image placement options', 'virtue'), 
            'options' => array('left' => __('left', 'virtue'), 'center' => __('center', 'virtue'), 'right' => __('right', 'virtue')),
            'width' => 'width:60%',
            ),
      array(
            'id'=>'menu_bg_placementy',
            'type' => 'select',
            'title' => __('Y image placement options', 'virtue'), 
            'options' => array('top' => __('top', 'virtue'), 'center' => __('center', 'virtue'), 'bottom' => __('bottom', 'virtue')),
            'width' => 'width:60%',
            ),
      array(
            'id'=>'info_mobile_background',
            'type' => 'info',
            'desc' => __('Mobile Menu Background', 'virtue'),
            ),
      array(
            'id'=>'mobile_bg_color',
            'type' => 'color',
            'title' => __('Mobile Menu Background Color', 'virtue'), 
            'default' => '',
            'validate' => 'color',
            'customizer' => true,
            ),
      array(
            'id'=>'bg_mobile_bg_img',
            'type' => 'media', 
            'url'=> true,
            'title' => __('Upload background image or texture', 'virtue'),
            ), 
      array(
            'id'=>'mobile_bg_repeat',
            'type' => 'select',
            'title' => __('Image repeat options', 'virtue'), 
            'options' => array('no-repeat' => __('no-repeat', 'virtue'), 'repeat' => __('repeat', 'virtue'), 'repeat-x' => __('repeat-x', 'virtue'), 'repeat-y' => __('repeat-y', 'virtue')),
            'width' => 'width:60%',
            ),
      array(
            'id'=>'mobile_bg_placementx',
            'type' => 'select',
            'title' => __('X image placement options', 'virtue'), 
            'options' => array('left' => __('left', 'virtue'), 'center' => __('center', 'virtue'), 'right' => __('right', 'virtue')),
            'width' => 'width:60%',
            ),
      array(
            'id'=>'mobile_bg_placementy',
            'type' => 'select',
            'title' => __('Y image placement options', 'virtue'), 
            'options' => array('top' => __('top', 'virtue'), 'center' => __('center', 'virtue'), 'bottom' => __('bottom', 'virtue')),
            'width' => 'width:60%',
            ),
       array(
            'id'=>'info_feature_background',
            'type' => 'info',
            'desc' => __('Feature Background', 'virtue'),
            ),
      array(
            'id'=>'feature_bg_color',
            'type' => 'color',
            'title' => __('Background Color', 'virtue'), 
            'default' => '',
            'validate' => 'color',
            ),
      array(
            'id'=>'bg_feature_bg_img',
            'type' => 'media', 
            'url'=> true,
            'title' => __('Upload background image or texture', 'virtue'),
            ), 
      array(
            'id'=>'feature_bg_repeat',
            'type' => 'select',
            'title' => __('Image repeat options', 'virtue'), 
            'options' => array('no-repeat' => __('no-repeat', 'virtue'), 'repeat' => __('repeat', 'virtue'), 'repeat-x' => __('repeat-x', 'virtue'), 'repeat-y' => __('repeat-y', 'virtue')),
            'width' => 'width:60%',
            ),
      array(
            'id'=>'feature_bg_placementx',
            'type' => 'select',
            'title' => __('X image placement options', 'virtue'), 
            'options' => array('left' => __('left', 'virtue'), 'center' => __('center', 'virtue'), 'right' => __('right', 'virtue')),
            'width' => 'width:60%',
            ),
      array(
            'id'=>'feature_bg_placementy',
            'type' => 'select',
            'title' => __('Y image placement options', 'virtue'), 
            'options' => array('top' => __('top', 'virtue'), 'center' => __('center', 'virtue'), 'bottom' => __('bottom', 'virtue')),
            'width' => 'width:60%',
            ),
      array(
            'id'=>'info_footer_background',
            'type' => 'info',
            'desc' => __('Footer Background', 'virtue'),
            ),
      array(
            'id'=>'footer_bg_color',
            'type' => 'color',
            'title' => __('Footer Background Color', 'virtue'), 
            'default' => '',
            'validate' => 'color',
            'customizer' => true,
            ),
      array(
            'id'=>'bg_footer_bg_img',
            'type' => 'media', 
            'url'=> true,
            'title' => __('Upload background image or texture', 'virtue'),
            ), 
      array(
            'id'=>'footer_bg_repeat',
            'type' => 'select',
            'title' => __('Image repeat options', 'virtue'), 
            'options' => array('no-repeat' => __('no-repeat', 'virtue'), 'repeat' => __('repeat', 'virtue'), 'repeat-x' => __('repeat-x', 'virtue'), 'repeat-y' => __('repeat-y', 'virtue')),
            'width' => 'width:60%',
            ),
      array(
            'id'=>'footer_bg_placementx',
            'type' => 'select',
            'title' => __('X image placement options', 'virtue'), 
            'options' => array('left' => __('left', 'virtue'), 'center' => __('center', 'virtue'), 'right' => __('right', 'virtue')),
            'width' => 'width:60%',
            ),
      array(
            'id'=>'footer_bg_placementy',
            'type' => 'select',
            'title' => __('Y image placement options', 'virtue'), 
            'options' => array('top' => __('top', 'virtue'), 'center' => __('center', 'virtue'), 'bottom' => __('bottom', 'virtue')),
            'width' => 'width:60%',
            ),
      array(
            'id'=>'info_body_background',
            'type' => 'info',
            'desc' => __('Body Background', 'virtue'),
            ),
      array(
            'id'=>'boxed_bg_color',
            'type' => 'color',
            'title' => __('Body Background Color', 'virtue'), 
            'default' => '',
            'validate' => 'color',
            'customizer' => true,
            ),
      array(
            'id'=>'bg_boxed_bg_img',
            'type' => 'media', 
            'url'=> true,
            'title' => __('Upload background image or texture', 'virtue'),
            ), 
      array(
            'id'=>'boxed_bg_repeat',
            'type' => 'select',
            'title' => __('Image repeat options', 'virtue'), 
            'options' => array('no-repeat' => __('no-repeat', 'virtue'), 'repeat' => __('repeat', 'virtue'), 'repeat-x' => __('repeat-x', 'virtue'), 'repeat-y' => __('repeat-y', 'virtue')),
            'width' => 'width:60%',
            ),
      array(
            'id'=>'boxed_bg_placementx',
            'type' => 'select',
            'title' => __('X image placement options', 'virtue'), 
            'options' => array('left' => __('left', 'virtue'), 'center' => __('center', 'virtue'), 'right' => __('right', 'virtue')),
            'width' => 'width:60%',
            ),
      array(
            'id'=>'boxed_bg_placementy',
            'type' => 'select',
            'title' => __('Y image placement options', 'virtue'), 
            'options' => array('top' => __('top', 'virtue'), 'center' => __('center', 'virtue'), 'bottom' => __('bottom', 'virtue')),
            'width' => 'width:60%',
            ),
      array(
            'id'=>'boxed_bg_fixed',
            'type' => 'select',
            'title' => __('Fixed or Scroll', 'virtue'), 
            'options' => array('fixed' => 'Fixed', 'scroll'=>'Scroll'),
            'width' => 'width:60%',
            ),
    ),
);
$this->sections[] = array(
    'icon' => 'icon-text-width',
    'icon_class' => 'icon-large',
    'title' => __('Typography', 'virtue'),
    'desc' => "<div class='redux-info-field'><h3>".__('Header Font Options', 'virtue')."</h3></div>",
    'fields' => array(
      array(
            'id'=>'font_h1',
            'type' => 'typography', 
            'title' => __('H1 Headings', 'virtue'),
            'font-family'=>true, 
            'google'=>true, // Disable google fonts. Won't work if you haven't defined your google api key
            'font-backup'=>false, // Select a backup non-google font in addition to a google font
            'font-style'=>true, // Includes font-style and weight. Can use font-style or font-weight to declare
            'subsets'=>true, // Only appears if google is true and subsets not set to false
            'font-size'=>true,
            'line-height'=>true,
            'text-align' => false,
            'color'=>true,
            'preview'=>true, // Disable the previewer
            'output' => array('h1'),
            'subtitle'=> __("Choose Size and Style for h1 (This Styles Your Page Titles)", 'virtue'),
            'default'=> array(
                'font-family'=>'Lato',
                'color'=>"", 
                'font-style'=>'400',
                'font-size'=>'38px', 
                'line-height'=>'40px', ),
            ),
    array(
            'id'=>'font_h2',
            'type' => 'typography', 
            'title' => __('H2 Headings', 'virtue'),
            //'compiler'=>true, // Use if you want to hook in your own CSS compiler
              'font-family'=>true, 
            'google'=>true, // Disable google fonts. Won't work if you haven't defined your google api key
            'font-backup'=>false, // Select a backup non-google font in addition to a google font
            'font-style'=>true, // Includes font-style and weight. Can use font-style or font-weight to declare
            'subsets'=>true, // Only appears if google is true and subsets not set to false
            'font-size'=>true,
            'line-height'=>true,
            'text-align' => false,
            //'word-spacing'=>false, // Defaults to false
            //'all_styles' => true,
            'color'=>true,
            'preview'=>true, // Disable the previewer
            'output' => array('h2'),
            'subtitle'=> __("Choose Size and Style for h2", 'virtue'),
            'default'=> array(
                'font-family'=>'Lato',
                'color'=>"", 
                'font-style'=>'400',
                'font-size'=>'32px', 
                'line-height'=>'40px', ),
            ),
    array(
            'id'=>'font_h3',
            'type' => 'typography', 
            'title' => __('H3 Headings', 'virtue'),
            //'compiler'=>true, // Use if you want to hook in your own CSS compiler
            'font-family'=>true, 
            'google'=>true, // Disable google fonts. Won't work if you haven't defined your google api key
            'font-backup'=>false, // Select a backup non-google font in addition to a google font
            'font-style'=>true, // Includes font-style and weight. Can use font-style or font-weight to declare
            'subsets'=>true, // Only appears if google is true and subsets not set to false
            'font-size'=>true,
            'line-height'=>true,
            'text-align' => false,
            //'word-spacing'=>false, // Defaults to false
            //'all_styles' => true,
            'color'=>true,
            'preview'=>true, // Disable the previewer
            'output' => array('h3'),
            'subtitle'=> __("Choose Size and Style for h3", 'virtue'),
            'default'=> array(
                'font-family'=>'Lato',
                'color'=>"", 
                'font-style'=>'400',
                'font-size'=>'28px', 
                'line-height'=>'40px', ),
            ),
    array(
            'id'=>'font_h4',
            'type' => 'typography', 
            'title' => __('H4 Headings', 'virtue'),
            //'compiler'=>true, // Use if you want to hook in your own CSS compiler
            'font-family'=>true, 
            'google'=>true, // Disable google fonts. Won't work if you haven't defined your google api key
            'font-backup'=>false, // Select a backup non-google font in addition to a google font
            'font-style'=>true, // Includes font-style and weight. Can use font-style or font-weight to declare
            'subsets'=>true, // Only appears if google is true and subsets not set to false
            'font-size'=>true,
            'line-height'=>true,
            'text-align' => false,
            //'word-spacing'=>false, // Defaults to false
            //'all_styles' => true,
            'color'=>true,
            'preview'=>true, // Disable the previewer
            'output' => array('h4'),
            'subtitle'=> __("Choose Size and Style for h4", 'virtue'),
            'default'=> array(
                'font-family'=>'Lato',
                'color'=>"", 
                'font-style'=>'400',
                'font-size'=>'24px', 
                'line-height'=>'40px', ),
            ),
    array(
            'id'=>'font_h5',
            'type' => 'typography', 
            'title' => __('H5 Headings', 'virtue'),
            //'compiler'=>true, // Use if you want to hook in your own CSS compiler
            'font-family'=>true, 
            'google'=>true, // Disable google fonts. Won't work if you haven't defined your google api key
            'font-backup'=>false, // Select a backup non-google font in addition to a google font
            'font-style'=>true, // Includes font-style and weight. Can use font-style or font-weight to declare
            'subsets'=>true, // Only appears if google is true and subsets not set to false
            'font-size'=>true,
            'line-height'=>true,
            'text-align' => false,
            'color'=>true,
            'preview'=>true, // Disable the previewer
            'output' => array('h5'),
            'subtitle'=> __("Choose Size and Style for h5", 'virtue'),
            'default'=> array(
                'font-family'=>'Lato',
                'color'=>"", 
                'font-style'=>'',
                'font-size'=>'18px', 
                'line-height'=>'24px', ),
            ),
    array(
            'id'=>'info_body_font',
            'type' => 'info',
            'desc' => __('Body Font Options', 'virtue'),
            ),
    array(
            'id'=>'font_p',
            'type' => 'typography', 
            'title' => __('Body Font', 'virtue'),
            //'compiler'=>true, // Use if you want to hook in your own CSS compiler
            'font-family'=>true, 
            'google'=>true, // Disable google fonts. Won't work if you haven't defined your google api key
            'font-backup'=>false, // Select a backup non-google font in addition to a google font
            'font-style'=>true, // Includes font-style and weight. Can use font-style or font-weight to declare
            'subsets'=>true, // Only appears if google is true and subsets not set to false
            'font-size'=>true,
            'line-height'=>true,
            'text-align' => false,
            //'word-spacing'=>false, // Defaults to false
            'all_styles' => true,
            'color'=>true,
            'preview'=>true, // Disable the previewer
            'output' => array('body'),
            'subtitle'=> __("Choose Size and Style for paragraphs", 'virtue'),
            'default'=> array(
                'font-family'=>'',
                'color'=>"", 
                'font-style'=>'400',
                'font-size'=>'14px', 
                'line-height'=>'20px', ),
            ),
  ),
);
$this->sections[] = array(
    'icon' => 'icon-menu4',
    'icon_class' => 'icon-large',
    'title' => __('Menu Settings', 'virtue'),
    'desc' => "<div class='redux-info-field'><h3>".__('Primary Menu Options', 'virtue')."</h3></div>",
    'fields' => array(
      array(
            'id'=>'font_primary_menu',
            'type' => 'typography', 
            'title' => __('Primary Menu Font', 'virtue'),
            //'compiler'=>true, // Use if you want to hook in your own CSS compiler
            'font-family'=>true, 
            'google'=>true, // Disable google fonts. Won't work if you haven't defined your google api key
            'font-backup'=>false, // Select a backup non-google font in addition to a google font
            'font-style'=>true, // Includes font-style and weight. Can use font-style or font-weight to declare
            'subsets'=>true, // Only appears if google is true and subsets not set to false
            'font-size'=>true,
            'text-align' => false,
            'line-height'=>true,
            //'word-spacing'=>false, // Defaults to false
            //'all_styles' => true,
            'color'=>true,
            'preview'=>true, // Disable the previewer
            'output' => array('#nav-main ul.sf-menu a, .nav-main ul.sf-menu a'),
            'subtitle'=> __("Choose Size and Style for primary menu", 'virtue'),
            'default'=> array(
                'font-family'=>'Lato',
                'color'=>"", 
                'font-style'=>'400',
                'font-size'=>'12px', 
                'line-height'=>'18px', ),
            ),
    array(
            'id'=>'primarymenu_hover_color',
            'type' => 'color',
            'title' => __('Hover and Active Font Color', 'virtue'), 
            'default' => '',
            'transparent'=>false,
            'validate' => 'color',
            ),
    array(
            'id'=>'primarymenu_hover_bg_color',
            'type' => 'color',
            'title' => __('Hover and Active Background Color', 'virtue'), 
            'default' => '',
            'transparent'=>false,
            'validate' => 'color',
            ),
    array(
            'id'=>'info_menu_secondary_font',
            'type' => 'info',
            'desc' => __('Secondary Menu Options', 'virtue'),
            ),
    array(
            'id'=>'font_secondary_menu',
            'type' => 'typography', 
            'title' => __('Secondary Menu Font', 'virtue'),
            //'compiler'=>true, // Use if you want to hook in your own CSS compiler
            'font-family'=>true, 
            'google'=>true, // Disable google fonts. Won't work if you haven't defined your google api key
            'font-backup'=>false, // Select a backup non-google font in addition to a google font
            'font-style'=>true, // Includes font-style and weight. Can use font-style or font-weight to declare
            'subsets'=>true, // Only appears if google is true and subsets not set to false
            'font-size'=>true,
            'text-align' => false,
            'line-height'=>true,
            //'word-spacing'=>false, // Defaults to false
            //'all_styles' => true,
            'color'=>true,
            'preview'=>true, // Disable the previewer
            'output' => array('#nav-second ul.sf-menu a'),
            'subtitle'=> __("Choose Size and Style for secondary menu", 'virtue'),
            'default'=> array(
                'font-family'=>'Lato',
                'color'=>"", 
                'font-style'=>'400',
                'font-size'=>'18px', 
                'line-height'=>'22px', ),
            ),
    array(
            'id'=>'secondarymenu_hover_color',
            'type' => 'color',
            'title' => __('Secondary Hover and Active Font Color', 'virtue'), 
            'default' => '',
            'transparent'=>false,
            'validate' => 'color',
            ),
    array(
            'id'=>'secondarymenu_hover_bg_color',
            'type' => 'color',
            'title' => __('Secondary Hover and Active Background Color', 'virtue'), 
            'default' => '',
            'transparent'=>false,
            'validate' => 'color',
            ),
    array(
            'id'=>'secondary_menu_size',
            'type' => 'select',
            'title' => __('Secondary Menu Item Size', 'virtue'), 
            'subtitle' => __("Choose how many menu items fit in the menu.", 'virtue'),
            'options' => array('25%' => __('Four Items', 'virtue'), '20%' => __('Five Items', 'virtue'), '16.5%' => __('Six Items', 'virtue'), '14.2%' => __('Seven Items', 'virtue'), '12.5%' => __('Eight Items', 'virtue')),
            'default' => '16.5%',
            'width' => 'width:60%',
            ),
    array(
            'id'=>'info_dropdown_menu_settings',
            'type' => 'info',
            'desc' => __('Dropdown Menu Style', 'virtue'),
            ),
    array(
            'id'=>'dropdown_font_color',
            'type' => 'color',
            'title' => __('Dropdown Font Color', 'virtue'), 
            'default' => '',
            'transparent'=>false,
            'validate' => 'color',
            ),
    array(
            'id'=>'dropdown_background_color',
            'type' => 'color',
            'title' => __('Dropdown Background Color', 'virtue'), 
            'default' => '',
            'transparent'=>false,
            'validate' => 'color',
            ),
    array(
            'id'=>'dropdown_border_color',
            'type' => 'color',
            'title' => __('Dropdown Border Color', 'virtue'), 
            'default' => '',
            'transparent'=>true,
            'validate' => 'color',
            ),

    array(
            'id'=>'info_menu_mobile_font',
            'type' => 'info',
            'desc' => __('Mobile Menu Options', 'virtue'),
            ),
    array(
            'id'=>'show_mobile_btn',
            'type' => 'switch', 
            'title' => __('Mobile Menu only show button', 'virtue'),
            "default"       => 0,
            ),
    array(
            'id'=>'font_mobile_menu',
            'type' => 'typography', 
            'title' => __('Mobile Menu Font', 'virtue'),
            //'compiler'=>true, // Use if you want to hook in your own CSS compiler
            'font-family'=>true, 
            'google'=>true, // Disable google fonts. Won't work if you haven't defined your google api key
            'font-backup'=>false, // Select a backup non-google font in addition to a google font
            'font-style'=>true, // Includes font-style and weight. Can use font-style or font-weight to declare
            'subsets'=>true, // Only appears if google is true and subsets not set to false
            'font-size'=>true,
            'line-height'=>true,
            'text-align' => false,
            //'word-spacing'=>false, // Defaults to false
            //'all_styles' => true,
            'color'=>true,
            'preview'=>true, // Disable the previewer
            'output' => array('.kad-nav-inner .kad-mnav, .kad-mobile-nav .kad-nav-inner li a', '.nav-trigger-case'),
            'subtitle'=> __("Choose Size and Style for Mobile Menu", 'virtue'),
            'default'=> array(
                'font-family'=>'Lato',
                'color'=>"", 
                'font-style'=>'400',
                'font-size'=>'16px', 
                'line-height'=>'20px', ),
            ),
    array(
            'id'=>'mobilemenu_hover_color',
            'type' => 'color',
            'title' => __('Mobile Hover and Active Font Color', 'virtue'), 
            'default' => '',
            'transparent'=>false,
            'validate' => 'color',
            ),
    array(
            'id'=>'mobilemenu_hover_bg_color',
            'type' => 'color',
            'title' => __('Mobile Hover and Active Background Color', 'virtue'), 
            'default' => '',
            'transparent'=>false,
            'validate' => 'color',
            ),
    ),
);
$this->sections[] = array(
    'icon' => 'icon-bubbles',
    'icon_class' => 'icon-large',
    'title' => __('Language Settings', 'virtue'),
    'desc' => "<div class='redux-info-field'><h3>".__('Quick Language Settings', 'virtue')."</h3></div>",
    'fields' => array(
      array(
            'id'=>'mobile_menu_text',
            'type' => 'text',
            'title' => __('Mobile Menu Title', 'virtue'),
            'subtitle' => __('Standard: Menu', 'virtue'),
            ),
      array(
            'id'=>'search_placeholder_text',
            'type' => 'text',
            'title' => __('Search Placeholder Text', 'virtue'),
            'subtitle' => __('Standard: Search"', 'virtue'),
            ),
      array(
            'id'=>'cart_placeholder_text',
            'type' => 'text',
            'title' => __('Topbar Cart Total Text', 'virtue'),
            'subtitle' => __('Standard: Your Cart', 'virtue'),
            ),
      array(
            'id'=>'sold_placeholder_text',
            'type' => 'text',
            'title' => __('Product Sold Text', 'virtue'),
            'subtitle' => __('Standard: Sold', 'virtue'),
            ),
      array(
            'id'=>'sale_placeholder_text',
            'type' => 'text',
            'title' => __('Product Sale Text', 'virtue'),
            'subtitle' => __('Standard: Sale', 'virtue'),
            ),
      array(
            'id'=>'post_readmore_text',
            'type' => 'text',
            'title' => __('Post READ MORE text', 'virtue'),
            'subtitle' => __('Standard: Read More', 'virtue'),
            ),
      array(
            'id'=>'post_by_text',
            'type' => 'text',
            'title' => __('Post Author BY text', 'virtue'),
            'subtitle' => __('Standard: by', 'virtue'),
            ),
      array(
            'id'=>'post_incat_text',
            'type' => 'text',
            'title' => __('Post Category POSTED IN text', 'virtue'),
            'subtitle' => __('Standard: posted in:', 'virtue'),
            ),
      array(
            'id'=>'filter_all_text',
            'type' => 'text',
            'title' => __('Dynamic filter All text', 'virtue'),
            'subtitle' => __('Standard: All', 'virtue'),
            ),
        array(
            'id'=>'shop_filter_text',
            'type' => 'text',
            'title' => __('Mobile dynamic Filter Products text', 'virtue'),
            'subtitle' => __('Standard: Filter Products', 'virtue'),
            ),
        array(
            'id'=>'portfolio_filter_text',
            'type' => 'text',
            'title' => __('Mobile dynamic Filter Projects text', 'virtue'),
            'subtitle' => __('Standard: Filter Projects', 'virtue'),
            ),
      array(
            'id'=>'description_tab_text',
            'type' => 'text',
            'title' => __('Product Page: Description tab text', 'virtue'),
            'subtitle' => __('Standard: Description', 'virtue'),
            ),
      array(
            'id'=>'description_header_text',
            'type' => 'text',
            'title' => __('Product Page: Description header text', 'virtue'),
            'subtitle' => __('Standard: Product Description', 'virtue'),
            ),
      array(
            'id'=>'additional_information_tab_text',
            'type' => 'text',
            'title' => __('Product Page: Additional Information tab text', 'virtue'),
            'subtitle' => __('Standard: Additional Information', 'virtue'),
            ),
      array(
            'id'=>'additional_information_header_text',
            'type' => 'text',
            'title' => __('Product Page: Additional Information Header text', 'virtue'),
            'subtitle' => __('Standard: Additional Information', 'virtue'),
            ),
      array(
            'id'=>'video_tab_text',
            'type' => 'text',
            'title' => __('Product Page: Product Video tab text', 'virtue'),
            'subtitle' => __('Standard: Product Video', 'virtue'),
            ),
      array(
            'id'=>'video_title_text',
            'type' => 'text',
            'title' => __('Product Page: Product Video Header text', 'virtue'),
            'subtitle' => __('Standard: Product Video', 'virtue'),
            ),
      array(
            'id'=>'reviews_tab_text',
            'type' => 'text',
            'title' => __('Product Page: Reviews tab text', 'virtue'),
            'subtitle' => __('Standard: Reviews', 'virtue'),
            ),
      array(
            'id'=>'related_products_text',
            'type' => 'text',
            'title' => __('Product Page: Related Products text', 'virtue'),
            'subtitle' => __('Standard: Related Products', 'virtue'),
            ),
      array(
            'id'=>'lightbox_loading_text',
            'type' => 'text',
            'title' => __('LightBox: Loading text', 'virtue'),
            'subtitle' => __('Standard: Loading...', 'virtue'),
            ),
      array(
            'id'=>'lightbox_of_text',
            'type' => 'text',
            'title' => __('LightBox: of text', 'virtue'),
            'subtitle' => __('Standard: of', 'virtue'),
            ),
      array(
            'id'=>'lightbox_error_text',
            'type' => 'text',
            'title' => __('LightBox: Error text', 'virtue'),
            'subtitle' => __('Standard: The Image could not be loaded.', 'virtue'),
            ),
    ),
);
$this->sections[] = array(
    'icon' => 'icon-link4',
    'icon_class' => 'icon-large',
    'title' => __('Breadcrumbs', 'virtue'),
    'desc' => "<div class='redux-info-field'><h3>".__('Sitewide Breadcrumbs', 'virtue')."</h3></div>",
    'fields' => array(
      array(
            'id'=>'show_breadcrumbs_shop',
            'type' => 'switch', 
            'title' => __('Show Breadcrumbs in Woocommerce Pages and Categories?', 'virtue'),
            'subtitle' => __('Choose to show or hide breadcrumbs on your Woocommerce pages and Categories', 'virtue'),
            "default" => 0,
            ),
      array(
            'id'=>'show_breadcrumbs_product',
            'type' => 'switch', 
            'title' => __('Show Breadcrumbs on Products?', 'virtue'),
            'subtitle' => __('Choose to show or hide breadcrumbs on your Woocommerce products', 'virtue'),
            "default" => 0,
            ),
      array(
            'id'=>'show_breadcrumbs_post',
            'type' => 'switch', 
            'title' => __('Show Breadcrumbs on Blog Post?', 'virtue'),
            'subtitle' => __('Choose to show or hide breadcrumbs on your single blog post', 'virtue'),
            "default" => 0,
            ),
      array(
            'id'=>'show_breadcrumbs_portfolio',
            'type' => 'switch', 
            'title' => __('Show Breadcrumbs on Portfolio Post?', 'virtue'),
            'subtitle' => __('Choose to show or hide breadcrumbs on your single portfolio posts', 'virtue'),
            "default" => 0,
            ),
      array(
            'id'=>'show_breadcrumbs_page',
            'type' => 'switch', 
            'title' => __('Show Breadcrumbs on Pages & Categories?', 'virtue'),
            'subtitle' => __('Choose to show or hide breadcrumbs on your pages and categories', 'virtue'),
            "default" => 0,
            ),
      array(
            'id'=>'home_breadcrumb_text',
            'type' => 'text',
            'title' => __('Home title for breadcrumbs', 'virtue'),
            'subtitle' => __('Standard: Home', 'virtue'),
            ),
      array(
            'id'=>'blog_link',
            'type' => 'select',
            'data' => 'pages',
            'width' => 'width:60%',
            'title' => __('All Blog Post Page', 'virtue'), 
            'subtitle' => __('This sets the link for your main blog page, for breadcrumbs. Use only if your blog page is not your home page.', 'virtue'),
            ),
      array(
            'id'=>'shop_breadcrumbs',
            'type' => 'switch', 
            'title' => __('Show Shop page in breadcrumbs?', 'virtue'),
            'subtitle' => __('Choose to show or hide the shop page in breadcrumbs on your site', 'virtue'),
            "default" => 0,
            ),
    ),
);
$this->sections[] = array(
    'icon' => 'icon-wrench',
    'icon_class' => 'icon-large',
    'title' => __('Misc Settings', 'virtue'),
    'desc' => "<div class='redux-info-field'><h3>".__('Misc Settings', 'virtue')."</h3></div>",
    'fields' => array(
        array(
            'id'=>'page_comments',
            'type' => 'switch', 
            'title' => __('Allow Comments on Pages', 'virtue'),
            'subtitle' => __('Turn on to allow comments on Pages', 'virtue'),
            "default" => 0,
            ),
      array(
            'id'=>'testimonial_single_nav',
            'type' => 'switch', 
            'title' => __('Arrrow navigation for single testimonial post?', 'virtue'),
            "default" => 0,
            ),
        array(
            'id'=>'testimonial_page',
            'type' => 'select',
            'data' => 'pages',
            'width' => 'width:60%',
            'title' => __('Grid Link for testimonial navigation', 'virtue'),
            'required' => array('testimonial_single_nav','=','1'),
            ),
      array(
            'id'=>'hide_image_border',
            'type' => 'switch', 
            'title' => __('Hide Image Border', 'virtue'),
            'subtitle' => __('Choose to show or hide image border', 'virtue'),
            "default" => 1,
            ),
        array(
            'id'=>'select2_select',
            'type' => 'switch', 
            'title' => __('Select2 Select', 'virtue'),
            'subtitle' => __('Turn on or off the select2 select', 'virtue'),
            "default" => 1,
            ),     
        array(
            'id'=>'virtue_custom_favicon',
            'type' => 'media', 
            'preview'=> true,
            'title' => __('Custom Favicon', 'virtue'),
            'subtitle' => __('Upload a 16px x 16px png/gif/ico image that will represent your website favicon.', 'virtue'),
            ),
        array(
            'id'=>'contact_email',
            'type' => 'text',
            'title' => __('Contact Form Email', 'virtue'),
            'subtitle' => __('Sets the email for the contact page email form.', 'virtue'),
            'validate' => 'email',
            'msg' => __('Enter a valid email address.', 'virtue'),
            'default' => 'test@test.com'
            ),  
        array(
            'id'=>'footer_text',
            'type' => 'textarea',
            'title' => __('Footer Copyright Text', 'virtue'), 
            'subtitle' => __('Write your own copyright text here. You can use the following shortcodes in your footer text: [copyright] [site-name] [the-year]', 'virtue'),
            'default' => '[copyright] [the-year] [site-name] [theme-credit]',
            ),
        array(
            'id'=>'info_search_sidebars',
            'type' => 'info',
            'desc' => __('Search Results Sidebars', 'virtue'),
            ),
        array(
            'id'=>'search_sidebar',
            'type' => 'select',
            'title' => __('Search Results - choose Sidebar', 'virtue'), 
            'data' => 'sidebars',
            'default' => 'sidebar-primary',
            'width' => 'width:60%',
            ),
        array(
            'id'=>'info_sidebars',
            'type' => 'info',
            'desc' => __('Create Sidebars', 'virtue'),
            ),
        array(
            'id'=>'cust_sidebars',
            'type' => 'multi_text',
            'title' => __('Create Custom Sidebars', 'virtue'),
            'subtitle' => __('Type new sidebar name into textbox', 'virtue'),
            'default' =>__('Extra Sidebar', 'virtue'),
            ),
        array(
            'id'=>'info_pagewidth',
            'type' => 'info',
            'desc' => __('Limit Max Page width', 'virtue'),
            ),
        array(
            'id'=>'page_max_width',
            'type' => 'switch', 
            'title' => __('Limit Max Page to 940px', 'virtue'),
            "default" => 0,
            ),
        array(
            'id'=>'info_smoothscrolling',
            'type' => 'info',
            'desc' => __('Smooth Scrolling', 'virtue'),
            ),
        array(
            'id'=>'smooth_scrolling',
            'type' => 'switch', 
            'title' => __('Enable Smooth Scrolling', 'virtue'),
            'subtitle' => __('This enables the styled scroll bar.', 'virtue'),
            "default" => 0,
            ), 
        array(
            'id'=>'smooth_scrolling_hide',
            'type' => 'switch', 
            'title' => __('Enable Auto Hide', 'virtue'),
            'subtitle' => __('This hides the scroll bar when not scrolling.', 'virtue'),
            "default" => 0,
            ), 
         array(
            'id'=>'smooth_scrolling_background',
            'type' => 'switch', 
            'title' => __('Hide Scroll background', 'virtue'),
            'subtitle' => __('This hides the scroll bar background.', 'virtue'),
            "default" => 0,
            ), 
        array(
            'id'=>'info_wpgallerys',
            'type' => 'info',
            'desc' => __('Wordpress Galleries', 'virtue'),
            ),
        array(
            'id'=>'virtue_gallery',
            'type' => 'switch', 
            'title' => __('Enable Virtue Galleries to override Wordpress', 'virtue'),
            'subtitle' => __('Disable this if using a plugin to customize galleries, for example jetpack tiled gallery.', 'virtue'),
            "default" => 1,
            ),
        array(
            'id'=>'virtue_gallery_masonry',
            'type' => 'switch', 
            'title' => __('Use Masonry Feature on Virtue Galleries', 'virtue'),
            'subtitle' => __('This allows for dynamic gallery grids with images of different height', 'virtue'),
            "default" => 1,
            ),
        array(
            'id'=>'gallery_captions',
            'type' => 'switch', 
            'title' => __('Show captions on Virtue Galleries', 'virtue'),
            'subtitle' => __('This sets the defualt caption setting to true.', 'virtue'),
            "default" => 0,
            ),
        array(
            'id'=>'info_animation_in',
            'type' => 'info',
            'desc' => __('Site Scroll Animation in', 'virtue'),
            ),
        array(
            'id'=>'virtue_animate_in',
            'type' => 'switch', 
            'title' => __('Enable Animation In', 'virtue'),
            'subtitle' => __('Disable this if you want to remove all the appear animation', 'virtue'),
            "default" => 1,
            ),
    ),
);
$this->sections[] = array(
    'icon' => 'icon-tools',
    'icon_class' => 'icon-large',
    'title' => __('Advanced Settings', 'virtue'),
    'desc' => "<div class='redux-info-field'><h3>".__('SEO General Options', 'virtue')."</h3></div>",
    'fields' => array(
        array(
            'id'=>'google_analytics',
            'type' => 'text',
            'title' => __('Google Analytics Tracking ID', 'virtue'),
            'subtitle' => __('Paste your Google Analytics Tracking ID Here. (example: UA-########-#)', 'virtue'),
            ),
        array(
            'id'=>'seo_switch',
            'type' => 'switch', 
            'title' => __('Turn on Virtue SEO?', 'virtue'),
            'subtitle' => __('Choose if you would like to use Virtue Theme SEO options, for full seo support use a plugin', 'virtue'),
            "default" => 0,
            ), 
        array(
            'id'=>'seo_sitetitle',
            'type' => 'text',
            'title' => __('Site Title', 'virtue'),
            'subtitle' => __('Optimal Format: Brand Name | Primary Keyword and Secondary Keyword', 'virtue'),
            'required' => array('seo_switch','=','1'),
            ),
            array(
            'id'=>'seo_sitedescription',
            'type' => 'textarea',
            'title' => __('Site Description', 'virtue'), 
            'subtitle' => __('Optimal Length: Roughly 155 Characters', 'virtue'),
            'default' => '',
            'required' => array('seo_switch','=','1'),
            ),
            array(
            'id'=>'info_CSS',
            'type' => 'info',
            'desc' => __('Custom CSS Box', 'virtue'),
            ),
             array(
            'id'=>'custom_css',
            'type' => 'textarea',
            'title' => __('Custom CSS', 'virtue'), 
            'subtitle' => __('Quickly add some CSS to your theme by adding it to this block.', 'virtue'),
            //'validate' => 'css',
            ),
    ),
);
}
          public function setArguments() {
            $theme = wp_get_theme();
            $this->args = array(
            'dev_mode' => false,
            'update_notice' => false,
            'customizer' => false,
            'dev_mode_icon_class' => 'icon-large',
            'opt_name' => 'virtue_premium',
            'system_info_icon_class' => 'icon-large',
            'display_name' => $theme->get('Name'),
            'display_version' => $theme->get('Version'),
            'google_api_key' => 'AIzaSyALkgUvb8LFAmrsczX56ZGJx-PPPpwMid0',
            'import_icon' => 'icon-storage',
            'import_icon_class' => 'icon-large',
            'menu_title' => __('Theme Options', 'virtue'),
            'page_title' => __('Theme Options', 'virtue'),
            'page_slug' => 'kad_options',
            'default_show' => false,
            'default_mark' => '',
            'admin_bar' => false,  
            'page_type' => 'menu',
            'page_position' => 49,
            'page_icon' => "kad_logo_header",
            'footer_credit' => __('Thank you for using the Virtue Theme by <a href="http://kadencethemes.com/" target="_blank">Kadence Themes</a>.', 'virtue'),
            );
           $this->args['share_icons']['facebook'] = array(
            'link' => 'https://www.facebook.com/KadenceThemes',
            'title' => 'Follow Kadence Themes on Facebook', 
            'icon' => 'icon-facebook2',
            );

          }
     }
        new Redux_Framework_Virtue_config();

}

function kadence_override_redux_icons_css() {
  wp_dequeue_style( 'redux-css' );
  wp_register_style('redux-custom-css', get_template_directory_uri() . '/themeoptions/options/css/style.css', false, 210);    
  wp_enqueue_style('redux-custom-css');
  wp_dequeue_style( 'select2-css');
}
// This example assumes your opt_name is set to redux_demo, replace with your opt_name value
add_action('redux-enqueue-virtue_premium', 'kadence_override_redux_icons_css');

