/**
     * Define the sections and settings for the General panel
     */
    function weaverx_customizer_define_typography_sections($sections)
    {
        $panel = 'weaverx_typography';
        $typography_sections = array();
        /**
         * Global
         */
        $typography_sections['typo-global'] = array('panel' => $panel, 'title' => __('Global Typography Options', 'weaver-xtreme'), 'description' => __('Set base font values: Base font size, base line height, and more. The Font Size options for other areas are all derived from these base sizes.', 'weaver-xtreme'), 'options' => array('site_fontsize_int' => array('setting' => array('sanitize_callback' => 'absint', 'transport' => 'postMessage', 'default' => 16), 'control' => array('control_type' => 'WeaverX_Range_Control', 'label' => __('Site Base Font Size (px)', 'weaver-xtreme'), 'description' => __("Base font size of standard text. This value determines the default medium font size. Note that visitors can change their browser's font size, so final font size can vary, as expected. Default is 16px.", 'weaver-xtreme'), 'type' => 'range', 'input_attrs' => array('min' => 2, 'max' => 50, 'step' => 1))), 'site_line_height_dec' => array('setting' => array('sanitize_callback' => 'weaverx_cz_sanitize_float', 'transport' => 'postMessage', 'default' => 1.5), 'control' => array('control_type' => WEAVERX_PLUS_RANGE_CONTROL, 'label' => __('Site Base Line Height', 'weaver-xtreme') . WEAVERX_PLUS_ICON, 'description' => __('Set the Base line-height. Line heights for various font sizes based on this multiplier. (Default: 1.5 - no units)', 'weaver-xtreme'), 'type' => 'range', 'input_attrs' => array('min' => 0.1, 'max' => 10.0, 'step' => 0.1))), 'site_fontsize_tablet_int' => array('setting' => array('sanitize_callback' => 'absint', 'transport' => 'refresh', 'default' => 16), 'control' => array('control_type' => WEAVERX_PLUS_RANGE_CONTROL, 'label' => __('Site Base Font Size - Small Tablets (px)', 'weaver-xtreme') . WEAVERX_PLUS_ICON . WEAVERX_REFRESH_ICON, 'description' => __('Small Tablet base font size of standard text. (Default medium font size: 16px)', 'weaver-xtreme'), 'type' => 'range', 'input_attrs' => array('min' => 2, 'max' => 50, 'step' => 1))), 'site_fontsize_phone_int' => array('setting' => array('sanitize_callback' => 'absint', 'transport' => 'refresh', 'default' => 16), 'control' => array('control_type' => WEAVERX_PLUS_RANGE_CONTROL, 'label' => __('Site Base Font Size - Phones (px)', 'weaver-xtreme') . WEAVERX_PLUS_ICON . WEAVERX_REFRESH_ICON, 'description' => __('Phone base font size of standard text. (Default medium font size: 16px)', 'weaver-xtreme'), 'type' => 'range', 'input_attrs' => array('min' => 2, 'max' => 50, 'step' => 1))), 'custom_fontsize_a' => array('setting' => array('sanitize_callback' => 'weaverx_cz_sanitize_float', 'transport' => 'refresh', 'default' => 1.0), 'control' => array('control_type' => WEAVERX_PLUS_RANGE_CONTROL, 'label' => __('Custom Font Size A (em)', 'weaver-xtreme') . WEAVERX_PLUS_ICON . WEAVERX_REFRESH_ICON, 'description' => __('Font Size for Custom Font Size A on the Font Size selection options.', 'weaver-xtreme'), 'type' => 'range', 'input_attrs' => array('min' => 0.5, 'max' => 20, 'step' => 0.5))), 'custom_fontsize_b' => array('setting' => array('sanitize_callback' => 'weaverx_cz_sanitize_float', 'transport' => 'refresh', 'default' => 1.0), 'control' => array('control_type' => WEAVERX_PLUS_RANGE_CONTROL, 'label' => __('Custom Font Size B (em)', 'weaver-xtreme') . WEAVERX_PLUS_ICON . WEAVERX_REFRESH_ICON, 'description' => __('Font Size for Custom Font Size B on the Font Size selection options.', 'weaver-xtreme'), 'type' => 'range', 'input_attrs' => array('min' => 0.5, 'max' => 20, 'step' => 0.5))), 'font_letter_spacing_global_dec' => array('setting' => array('sanitize_callback' => 'weaverx_cz_sanitize_float', 'transport' => 'postMessage', 'default' => 0.0), 'control' => array('control_type' => WEAVERX_PLUS_RANGE_CONTROL, 'label' => __('Character Spacing (em)', 'weaver-xtreme') . WEAVERX_PLUS_ICON, 'description' => __('Add extra spacing between characters. (Default: 0)', 'weaver-xtreme'), 'type' => 'range', 'input_attrs' => array('min' => -0.1, 'max' => 0.25, 'step' => 0.0025))), 'font_word_spacing_global_dec' => array('setting' => array('sanitize_callback' => 'weaverx_cz_sanitize_float', 'transport' => 'postMessage', 'default' => 0.0), 'control' => array('control_type' => WEAVERX_PLUS_RANGE_CONTROL, 'label' => __('Word Spacing (em)', 'weaver-xtreme') . WEAVERX_PLUS_ICON, 'description' => __('Add extra spacing between words. (Default: 0)', 'weaver-xtreme'), 'type' => 'range', 'input_attrs' => array('min' => -0.5, 'max' => 1.0, 'step' => 0.05))), 'typo-google-font-opts' => weaverx_cz_group_title(__('Integrated Google Fonts', 'weaver-xtreme'), __('Weaver Xtreme integrates a selected set of Google Font families. You can disable them, or add differenet language support in this section.', 'weaver-xtreme')), 'disable_google_fonts' => weaverx_cz_checkbox_refresh(__('Disable Google Font Integration', 'weaver-xtreme'), __('<strong>ADVANCED OPTION!</strong> <em>Be sure you understand the consequences of this option.</em> By disabling Google Font Integration, the Google Fonts definitions will <strong>not</strong> be loaded for your site, and the options will not be displayed on Font Family options subsequently. <strong style="color:red;font-weight:bold;">Please note:</strong> Any previously selected Google Font Families will revert to generic serif, sans, mono, and script fonts. Google Font Families WILL be displayed in the Customizer options until you manually refresh the Customizer page.', 'weaver-xtreme')), 'typo-lang-intro' => weaverx_cz_heading(__('Google Font Language Character Sets', 'weaver-xtreme'), __('By default, integrated Google Fonts will include the <em>Latin Extended</em> character set. If you need a Crylic, Greek, Hebrew, or Vietnamese character set, these are currently supported by Google Fonts for <em>some</em> font families.
Google Fonts not supported for these character sets, and character sets for most other world languages will be displayed
using the default browser serif and sans fonts.', 'weaver-xtreme')), 'font_set_cryllic' => weaverx_cz_checkbox_refresh(__('Cryllic', 'weaver-xtreme'), __('Add Cryllic character set to Open Sans, Open Sans Condensed, Roboto (all), Arimo, and Tinos font families.', 'weaver-xtreme')), 'font_set_greek' => weaverx_cz_checkbox_refresh(__('Greek', 'weaver-xtreme'), __('Add Greek character set to Open Sans, Open Sans Condensed, Roboto (all), Arimo, and Tinos font families.', 'weaver-xtreme')), 'font_set_hebrew' => weaverx_cz_checkbox_refresh(__('Hebrew', 'weaver-xtreme'), __('Add Hebrew character set to Arimo and Tinos font families.', 'weaver-xtreme')), 'font_set_vietnamese' => weaverx_cz_checkbox_refresh(__('Greek', 'weaver-xtreme'), __('Add Greek character set to Open Sans, Open Sans Condensed, Roboto (all), Source Sans Pro, Alegreya Sans, Arimo, and Tinos font families.', 'weaver-xtreme')), 'typo-intro' => weaverx_cz_group_title(__('Using Font Families', 'weaver-xtreme'), __('<em>Weaver Xtreme</em> includes support for over 30 font family choices: 16 <strong>Web Safe</strong> fonts, and the remaining from a carefully selected set of <strong>Google Fonts</strong>.
The <strong>Google Fonts</strong> will be displayed the same on every browser, <em>including</em> Android and iOS devices.
The <strong>Web Safe</strong> will be displayed as specified for most modern browsers, but will likely revert to
one of the three basic fonts supported by Android devices, or a limited set for iOS devices. <em>We highly recommend selecting <strong>Google Fonts</strong> for your site.</em><br/>
You can also add more Google Fonts, other free fonts, and even premium fonts using <em>Weaver Xtreme Plus</em>.<br />
You can see a demonstration of <em>Weaver Xtreme\'s</em> fonts here: ', 'weaver-xtreme') . weaverx_help_link('font-demo.html', __('Examples of supported fonts', 'weaver-xtreme'), __('Font Examples', 'weaver-xtreme'), false)), 'typo-font-family-note' => array('control' => array('control_type' => 'WeaverX_Misc_Control', 'label' => __('Add Font Families', 'weaver-xtreme') . WEAVERX_PLUS_ICON, 'description' => sprintf(__('<p>The <strong>%s</strong> allows you add additional free fonts from
	<a href="//www.google.com/webfonts" target="_blank" title="Google Web Fonts"><strong>Google Web Fonts</strong></a>,
    <a href="//www.fontsquirrel.com" target="_blank" title="Font Squirrel"><strong>Font Squirrel</strong></a>,
    or virtually any other free or commercial font source directly to all the
    <em>Font Family</em> selectors found in various text options.</p>
	<p>To define Font Families, please "Save &amp; Publish" options you may have set on this Optimizer, then click to open the
	<strong>%s</strong>, and open the <em>Fonts &amp; Custom</em> tab.
	Be sure to <em>Save Settings</em> before leaving the Legacy Weaver Xtreme Admin panel.</p>', 'weaver-xtreme'), weaverx_cz_get_admin_page(__('Weaver Xtreme Plus Font Control Panel', 'weaver-xtreme')), weaverx_cz_get_admin_page(__('Weaver Xtreme Plus Font Control Panel', 'weaver-xtreme'))), 'type' => 'HTML'))));
        /**
         * General
         */
        $typography_sections['typo-wrapping'] = array('panel' => $panel, 'title' => __('Wrapping Areas', 'weaver-xtreme'), 'description' => __('Set font and other typography attributes. Add new fonts from the <em>Appearance &rarr; Weaver Xtreme Admin &rarr; Main Options &rarr; Fonts &amp; Custom</em> panel. Use Site Colors to set colors.', 'weaver-xtreme'), 'options' => array('typo-heading-global' => array()));
        $new_opts = weaverx_cz_add_fonts('wrapper', __('Site Wrapper &amp; Container Fonts', 'weaver-xtreme'), __('Default (wrapper) typography for site. Set font attributes here that will apply to the entire site. To override other items, set typography for individual items on other panels. (The inherited default Font Family is Open Sans.)', 'weaver-xtreme'), 'postMessage');
        $typography_sections['typo-wrapping']['options'] = array_merge($typography_sections['typo-wrapping']['options'], $new_opts);
        $new_opts = weaverx_cz_add_fonts('container', __('Container Fonts', 'weaver-xtreme'), __('Container typography for site. Wraps content and sidebars.', 'weaver-xtreme'), 'postMessage');
        $typography_sections['typo-wrapping']['options'] = array_merge($typography_sections['typo-wrapping']['options'], $new_opts);
        /**
         * Links
         */
        $typography_sections['typo-links'] = array('panel' => $panel, 'title' => __('Links', 'weaver-xtreme'), 'options' => array());
        $new_opts = weaverx_cz_add_link_fonts('link', __('Global Links', 'weaver-xtreme'), __('Global default for link typography (not including menus and titles). Set Bold, Italic, and Underline by setting those options for specific areas rather than globally to have more control.', 'weaver-xtreme'));
        $typography_sections['typo-links']['options'] = array_merge($typography_sections['typo-links']['options'], $new_opts);
        $new_opts = weaverx_cz_add_link_fonts('ibarlink', __('Info Bar Links', 'weaver-xtreme'), __('<small>Typography for links in Info Bar (uses Standard Link colors if left inherit).', 'weaver-xtreme'));
        $typography_sections['typo-links']['options'] = array_merge($typography_sections['typo-links']['options'], $new_opts);
        $new_opts = weaverx_cz_add_link_fonts('contentlink', __('Content Links', 'weaver-xtreme'), __('<small>Typography for links in Content (uses Standard Link colors if left inherit).', 'weaver-xtreme'));
        $typography_sections['typo-links']['options'] = array_merge($typography_sections['typo-links']['options'], $new_opts);
        $new_opts = weaverx_cz_add_link_fonts('ilink', __('Post Meta Info Links', 'weaver-xtreme'), __('<small>Typography for links in post meta information top and bottom lines. (uses Standard Link colors if left inherit).', 'weaver-xtreme'));
        $typography_sections['typo-links']['options'] = array_merge($typography_sections['typo-links']['options'], $new_opts);
        $new_opts = weaverx_cz_add_link_fonts('wlink', __('Individual Widget Links', 'weaver-xtreme'), __('Typography for links in widgets (uses Standard Link colors if inherit).', 'weaver-xtreme'));
        $typography_sections['typo-links']['options'] = array_merge($typography_sections['typo-links']['options'], $new_opts);
        $new_opts = weaverx_cz_add_link_fonts('footerlink', __('Footer Area Links', 'weaver-xtreme'), __('Typography for links in Footer (Uses Standard Link colors if left inherit).', 'weaver-xtreme'));
        $typography_sections['typo-links']['options'] = array_merge($typography_sections['typo-links']['options'], $new_opts);
        /**
         * Site Header
         */
        $typography_sections['typo-header'] = array('panel' => $panel, 'title' => __('Header Area', 'weaver-xtreme'), 'options' => array());
        $new_opts = weaverx_cz_add_fonts('header', __('Header Area', 'weaver-xtreme'), '', 'postMessage');
        $typography_sections['typo-header']['options'] = array_merge($typography_sections['typo-header']['options'], $new_opts);
        $new_opts = weaverx_cz_add_fonts('site_title', __('Site Title', 'weaver-xtreme'), '', 'postMessage');
        $typography_sections['typo-header']['options'] = array_merge($typography_sections['typo-header']['options'], $new_opts);
        $new_opts = weaverx_cz_add_fonts('tagline', __('Site Tagline', 'weaver-xtreme'), '', 'postMessage');
        $typography_sections['typo-header']['options'] = array_merge($typography_sections['typo-header']['options'], $new_opts);
        $new_opts = weaverx_cz_add_fonts('header_sb', __('Header Widget Area', 'weaver-xtreme'), '', 'postMessage');
        $typography_sections['typo-header']['options'] = array_merge($typography_sections['typo-header']['options'], $new_opts);
        $new_opts = weaverx_cz_add_fonts('header_html', __('Header HTML', 'weaver-xtreme'), '', 'postMessage');
        $typography_sections['typo-header']['options'] = array_merge($typography_sections['typo-header']['options'], $new_opts);
        /**
         * Main Menu
         */
        $typography_sections['typo-menus'] = array('panel' => $panel, 'title' => __('Menus', 'weaver-xtreme'), 'description' => __('Set typography for Menus.', 'weaver-xtreme'), 'options' => array());
        $new_opts = weaverx_cz_add_fonts('m_primary', __('Primary Menu', 'weaver-xtreme'), '', 'postMessage');
        $typography_sections['typo-menus']['options'] = array_merge($typography_sections['typo-menus']['options'], $new_opts);
        $new_opts = weaverx_cz_add_fonts('m_secondary', __('Secondary Menu', 'weaver-xtreme'), '', 'postMessage');
        $typography_sections['typo-menus']['options'] = array_merge($typography_sections['typo-menus']['options'], $new_opts);
        $new_opts = weaverx_cz_add_fonts('m_header_mini', __('Header Mini Menu', 'weaver-xtreme'), '', 'postMessage');
        $typography_sections['typo-menus']['options'] = array_merge($typography_sections['typo-menus']['options'], $new_opts);
        // current page
        $cur_page = array('typo-am-line1' => weaverx_cz_line(), 'typo-allmenus-heading' => weaverx_cz_group_title(__('Typography For All Menus', 'weaver-xtreme'), __('These options specify current page attributes for all menus.', 'weaver-xtreme')), 'menubar_curpage_bold' => array('setting' => array(), 'control' => array('label' => __('Bold Current Page', 'weaver-xtreme') . WEAVERX_REFRESH_ICON, 'description' => __('Bold Face Current Page and ancestors.', 'weaver-xtreme'), 'type' => 'checkbox')), 'menubar_curpage_em' => array('setting' => array(), 'control' => array('label' => __('Italic Current Page', 'weaver-xtreme') . WEAVERX_REFRESH_ICON, 'description' => __('Italic Current Page and ancestors.', 'weaver-xtreme'), 'type' => 'checkbox')), 'menubar_curpage_noancestors' => array('setting' => array(), 'control' => array('label' => __('Do Not Highlight Ancestors', 'weaver-xtreme') . WEAVERX_REFRESH_ICON, 'description' => __('Highlight Current Page only - do not also highlight ancestor items.', 'weaver-xtreme'), 'type' => 'checkbox')));
        $typography_sections['typo-menus']['options'] = array_merge($typography_sections['typo-menus']['options'], $cur_page);
        if (weaverx_cz_is_plus()) {
            $new_opts = weaverx_cz_add_fonts('m_extra', __('Extra Menu', 'weaver-xtreme'), '', 'postMessage');
        } else {
            $new_opts = weaverx_cz_add_plus_message('typo_menus', __('Extra Menu', 'weaver-xtreme'), __('Add extra menus with <strong>Weaver Xtreme Plus</strong>.', 'weaver-xtreme'));
        }
        $typography_sections['typo-menus']['options'] = array_merge($typography_sections['typo-menus']['options'], $new_opts);
        /**
         * Info Bar
         */
        $typography_sections['typo-info-bar'] = array('panel' => $panel, 'title' => __('Info Bar', 'weaver-xtreme'), 'description' => __('Info Bar with breadcrumbs and paged navigation displayed under Primary Menu.', 'weaver-xtreme'), 'options' => array());
        $new_opts = weaverx_cz_add_fonts('info_bar', __('Info Bar', 'weaver-xtreme'), '', 'postMessage');
        $typography_sections['typo-info-bar']['options'] = array_merge($typography_sections['typo-info-bar']['options'], $new_opts);
        /**
         * Content
         */
        $typography_sections['typo-content'] = array('panel' => $panel, 'title' => __('Content', 'weaver-xtreme'), 'description' => __('Typography for general page and post content.', 'weaver-xtreme'), 'options' => array());
        $new_opts = weaverx_cz_add_fonts('content', __('Content Area', 'weaver-xtreme'), '', 'postMessage');
        $typography_sections['typo-content']['options'] = array_merge($typography_sections['typo-content']['options'], $new_opts);
        $new_opts = weaverx_cz_add_fonts('page_title', __('Page Title', 'weaver-xtreme'), '', 'postMessage');
        $typography_sections['typo-content']['options'] = array_merge($typography_sections['typo-content']['options'], $new_opts);
        $new_opts = weaverx_cz_add_fonts('archive_title', __('Archive Pages Title', 'weaver-xtreme'), '', 'postMessage');
        $typography_sections['typo-content']['options'] = array_merge($typography_sections['typo-content']['options'], $new_opts);
        $new_opts = weaverx_cz_add_fonts('content_h', __('Content Headings', 'weaver-xtreme'), __('Headings (&lt;h1&gt;-&lt;h6&gt;) in page and post content.', 'weaver-xtreme'), 'refresh', 'normal');
        $typography_sections['typo-content']['options'] = array_merge($typography_sections['typo-content']['options'], $new_opts);
        /**
         * Post Specific
         */
        $typography_sections['typo-post-specific'] = array('panel' => $panel, 'title' => __('Post Specific', 'weaver-xtreme'), 'description' => __('Post Specific Typography - override Content Typography.', 'weaver-xtreme'), 'options' => array());
        $new_opts = weaverx_cz_add_fonts('post', __('Post Area', 'weaver-xtreme'), '', 'postMessage');
        $typography_sections['typo-post-specific']['options'] = array_merge($typography_sections['typo-post-specific']['options'], $new_opts);
        $new_opts = weaverx_cz_add_fonts('post_title', __('Post Title', 'weaver-xtreme'), '', 'postMessage');
        $typography_sections['typo-post-specific']['options'] = array_merge($typography_sections['typo-post-specific']['options'], $new_opts);
        $new_opts = weaverx_cz_add_fonts('post_info_top', __('Top Post Info Line', 'weaver-xtreme'), '', 'postMessage');
        $typography_sections['typo-post-specific']['options'] = array_merge($typography_sections['typo-post-specific']['options'], $new_opts);
        $new_opts = weaverx_cz_add_fonts('post_info_bottom', __('Bottom Post Info Line', 'weaver-xtreme'), '', 'postMessage');
        $typography_sections['typo-post-specific']['options'] = array_merge($typography_sections['typo-post-specific']['options'], $new_opts);
        /**
         * Sidebars
         */
        $typography_sections['typo-sidebars'] = array('panel' => $panel, 'title' => __('Sidebars &amp; Widget Areas', 'weaver-xtreme'), 'description' => __('Main Sidebars and Widget areas. Header and Footer areas options under Header and Footer panels.', 'weaver-xtreme'), 'options' => array());
        $new_opts = weaverx_cz_add_fonts('primary', __('Primary Area', 'weaver-xtreme'), '', 'postMessage');
        $typography_sections['typo-sidebars']['options'] = array_merge($typography_sections['typo-sidebars']['options'], $new_opts);
        $new_opts = weaverx_cz_add_fonts('secondary', __('Secondary Area', 'weaver-xtreme'), '', 'postMessage');
        $typography_sections['typo-sidebars']['options'] = array_merge($typography_sections['typo-sidebars']['options'], $new_opts);
        $new_opts = weaverx_cz_add_fonts('top', __('Top Widget Areas', 'weaver-xtreme'), __('Properties for all Top Widget areas (Sitewide, Pages, Blog, Archive).', 'weaver-xtreme'), 'postMessage');
        $typography_sections['typo-sidebars']['options'] = array_merge($typography_sections['typo-sidebars']['options'], $new_opts);
        $new_opts = weaverx_cz_add_fonts('bottom', __('Bottom Widget Areas', 'weaver-xtreme'), __('Typography for all Bottom Widget areas (Sitewide, Pages, Blog, Archive).', 'weaver-xtreme'), 'postMessage');
        $typography_sections['typo-sidebars']['options'] = array_merge($typography_sections['typo-sidebars']['options'], $new_opts);
        /**
         * Widgets
         */
        $typography_sections['typo-widgets'] = array('panel' => $panel, 'title' => __('Individual Widgets', 'weaver-xtreme'), 'options' => array());
        $new_opts = weaverx_cz_add_fonts('widget', __('Individual Widgets', 'weaver-xtreme'), '', 'postMessage');
        $typography_sections['typo-widgets']['options'] = array_merge($typography_sections['typo-widgets']['options'], $new_opts);
        $new_opts = weaverx_cz_add_fonts('widget_title', __('Individual Widgets Title', 'weaver-xtreme'), '', 'postMessage');
        $typography_sections['typo-widgets']['options'] = array_merge($typography_sections['typo-widgets']['options'], $new_opts);
        /**
         * Footer
         */
        $typography_sections['typo-footer'] = array('panel' => $panel, 'title' => __('Footer Area', 'weaver-xtreme'), 'options' => array());
        $new_opts = weaverx_cz_add_fonts('footer', __('Footer Area', 'weaver-xtreme'), '', 'postMessage');
        $typography_sections['typo-footer']['options'] = array_merge($typography_sections['typo-footer']['options'], $new_opts);
        $new_opts = weaverx_cz_add_fonts('footer_sb', __('Footer Widget Area', 'weaver-xtreme'), '', 'postMessage');
        $typography_sections['typo-footer']['options'] = array_merge($typography_sections['typo-footer']['options'], $new_opts);
        $new_opts = weaverx_cz_add_fonts('footer_html', __('Footer HTML', 'weaver-xtreme'), '', 'postMessage');
        $typography_sections['typo-footer']['options'] = array_merge($typography_sections['typo-footer']['options'], $new_opts);
        /**
         * Filter the definitions for the controls in the Color Scheme panel of the Customizer.
         *
         * @since 1.3.0.
         *
         * @param array    $typography_sections    The array of definitions.
         */
        $typography_sections = apply_filters('weaverx_customizer_typography_sections', $typography_sections);
        // Merge with master array
        return array_merge($sections, $typography_sections);
    }
    /**
     * Define the sections and settings for the General panel
     */
    function weaverx_customizer_define_general_sections($sections)
    {
        $panel = 'weaverx_general';
        $general_sections = array();
        global $wp_customize;
        /**
         * Site Title & Tagline
         *
         * This is a built-in section.
         */
        $section_id = 'title_tagline';
        $section = $wp_customize->get_section($section_id);
        // Move Site Title & Tagline section to General panel
        $section->panel = $panel;
        // Set Site Title & Tagline section priority
        $section->priority = 10;
        // Reset priorities on Site Title control
        $wp_customize->get_control('blogname')->priority = 12;
        // Reset priorities on Tagline control
        $wp_customize->get_control('blogdescription')->priority = 14;
        /**
         * Static Front Page
         */
        $section_id = 'static_front_page';
        $section = $wp_customize->get_section($section_id);
        // Bail if the section isn't registered
        if (is_object($section) && 'WP_Customize_Section' === get_class($section)) {
            $section->panel = $panel;
            // Move Static Front Page section to General panel
            $section->priority = 16;
            // Set Static Front Page section priority
        }
        // add our own stuff....
        $general_sections['general_admin'] = array('panel' => $panel, 'title' => __('Admin', 'weaver-xtreme'), 'options' => array('_inline_style' => array('setting' => array('transport' => 'postMessage'), 'control' => array('control_type' => WEAVERX_PLUS_TEXT_CONTROL, 'label' => __('Inline CSS', 'weaver-xtreme') . WEAVERX_PLUS_ICON, 'description' => __('Generate inline CSS code rather than using style-weaverxt.css file.
By default, Weaver Xtreme Plus will create and use the style-weaverxt.css file. &diams;', 'weaver-xtreme'), 'type' => 'checkbox')), '_sitemap_exclude_pages' => array('setting' => array('sanitize_callback' => 'weaverx_cz_sanitize_head_code', 'transport' => 'refresh', 'default' => ''), 'control' => array('control_type' => 'WeaverX_Textarea_Control', 'label' => __('Exclude Pages from SiteMap', 'weaver-xtreme') . WEAVERX_REFRESH_ICON, 'description' => __('You can specify a comma separated list of Page IDs to be excluded from the SiteMap Page list.
To exclude pages from Search results, use a plugin such as "Search Exclude".
You can hide different sections of the SiteMap by adding rules to the "Custom CSS Rules" box.
To hide authors, for example, add the rule <code>#sitemap-authors{display:none;}</code>.
The IDs for the SiteMap sections are: <code>#sitemap-pages, #sitemap-posts, #sitemap-categories, #sitemap-tags, #sitemap-authors</code>. &diams;', 'weaver-xtreme'), 'type' => 'textarea', 'input_attrs' => array('rows' => '1', 'placeholder' => __('Comma separated list of Page IDs', 'weaver-xtreme')))), '_hide_donate' => array('setting' => array('transport' => 'postMessage'), 'control' => array('label' => __('I\'ve Donated', 'weaver-xtreme'), 'description' => __('Thank you for donating to the Weaver Xtreme theme.
This will hide the Donate button. Purchasing Weaver Xtreme Plus also hides the Donate button. &diams;', 'weaver-xtreme'), 'type' => 'checkbox')), '_hide_editor_style' => array('setting' => array('transport' => 'postMessage'), 'control' => array('label' => __('Disable Page/Post Editor Styling', 'weaver-xtreme'), 'description' => __('Disable the Weaver Xtreme theme based styling in the Page/Post editor.
If you have a theme using transparent backgrounds, this option will likely improve the Post/Page editor visibility. &diams;', 'weaver-xtreme'), 'type' => 'checkbox')), 'general_admin-roles' => weaverx_cz_group_title(__('Per Page and Per Post Option Panels by Roles', 'weaver-xtreme'), __('Single site Administrator and Multi-Site Super Administrator will always have the Per Page and Per Post options panel displayed.
You may selectively disable these options for other User Roles using the check boxes below.', 'weaver-xtreme')), '_hide_mu_admin_per' => weaverx_cz_checkbox(__('Hide Per Page/Post Options for MultiSite Admins &diams;', 'weaver-xtreme')), '_hide_editor_per' => weaverx_cz_checkbox(__('Hide Per Page/Post Options for Editors &diams;', 'weaver-xtreme')), '_hide_author_per' => weaverx_cz_checkbox(__('Hide Per Page/Post Options for Authors and Contributors &diams;', 'weaver-xtreme')), 'general_admin-names' => weaverx_cz_group_title(__('Theme Name and Description', 'weaver-xtreme'), __('You can change the name and description of your current settings if you would like to create a new theme
theme file for sharing with others, or for you own identification.', 'weaver-xtreme')), 'themename' => array('setting' => array('sanitize_callback' => 'weaverx_cz_sanitize_head_code', 'transport' => 'refresh', 'default' => ''), 'control' => array('control_type' => 'WeaverX_Textarea_Control', 'label' => __('Theme Name', 'weaver-xtreme') . WEAVERX_REFRESH_ICON, 'type' => 'textarea', 'input_attrs' => array('rows' => '1', 'placeholder' => __('Theme Name', 'weaver-xtreme')))), 'theme_description' => array('setting' => array('sanitize_callback' => 'weaverx_cz_sanitize_head_code', 'transport' => 'refresh', 'default' => ''), 'control' => array('control_type' => 'WeaverX_Textarea_Control', 'label' => __('Theme Description', 'weaver-xtreme') . WEAVERX_REFRESH_ICON, 'type' => 'textarea', 'input_attrs' => array('rows' => '1', 'placeholder' => __('Theme Description', 'weaver-xtreme')))), 'subtheme_notes' => array('setting' => array('sanitize_callback' => 'weaverx_cz_sanitize_head_code', 'transport' => 'refresh', 'default' => ''), 'control' => array('control_type' => 'WeaverX_Textarea_Control', 'label' => __('Subtheme Notes', 'weaver-xtreme') . WEAVERX_REFRESH_ICON, 'label' => __('This box may be used to keep notes and instructions about settings made for a custom subtheme.', 'weaver-xtreme'), 'type' => 'textarea', 'input_attrs' => array('rows' => '1', 'placeholder' => __('Theme Notes', 'weaver-xtreme'))))));
        $general_sections['general_save_settings'] = array('panel' => $panel, 'title' => __('Save Settings', 'weaver-xtreme'), 'options' => array('save_settings' => array('setting' => array('transport' => 'postMessage'), 'control' => array('control_type' => 'WeaverX_Save_WX_Settings', 'label' => __('Save Current Theme Settings to your Computer', 'weaver-xtreme'), 'description' => __('You can download the current theme settings to a file on your computer.
<strong style="color-red">IMPORTANT NOTE:</strong> If you have not "Saved" your options yet, you will get a notice
asking if you want to leave this page or stay. If you leave, you will not save the most recent changes.', 'weaver-xtreme')))));
        $general_sections['general_restore_settings'] = array('panel' => $panel, 'title' => __('Restore Settings', 'weaver-xtreme'), 'options' => array('restore_settings' => array('setting' => array('transport' => 'postMessage'), 'control' => array('control_type' => 'WeaverX_Restore_WX_Settings', 'label' => __('Restore settings from file on your computer', 'weaver-xtreme'), 'description' => __('You can restore the saved theme settings from a file on your computer.
Select a theme <em>.wxt</em>, backup <em>.wxb</em>, or full settings <em>.wxall</em> file to upload, then click the Upload.
<ul>
<li>&bull; A <em>.wxt</em> theme file will restore only theme settings, leaving &diams; settings intact.</li>
<li>&bull; A <em>.wxb</em> backup file will reset all settings.</li>
<li>&bull; A <em>.wxall</em> file will reset all settings, including <em>Weaver Xtreme Plus</em> shortcode and other settings.</li></ul>', 'weaver-xtreme')))));
        $general_sections['general_saverestore'] = array('panel' => $panel, 'title' => __('Legacy Weaver Xtreme Admin', 'weaver-xtreme'), 'options' => array('legacy-save-restore' => array('control' => array('control_type' => 'WeaverX_Misc_Control', 'label' => __('Legacy Theme Options Interface', 'weaver-xtreme'), 'description' => sprintf(__('<p>The <em>Appearance &rarr; Weaver Xtreme Admin</em> panel provides access to the complete
legacy Weaver Xtreme theme options interface. This interface supplies the traditional check-box interface.
It may be preferable for long-time Weaver Xtreme users, or for use on slow computers or slow connections.
</p><p>
You can access the legacy interface by clicking %s, and then on one of the following tabs.
<strong style="color:red;">WARNING!</strong> <em>Do not set options in both the Customizer and the legacy
Weaver Xtreme Admin interface at the same time - the two interfaces do not automatically share changes to settings.</em>
</p>
<h3>Theme Help</h3>
<p>Access to Help resources.</p>
<h3>Save/Restore</h3>
<p>Supports several ways to Save and Restore your existing settings, including directly to the WordPress database.</p>
<h3>Weaver Xtreme Subthemes</h3>
<p>This option includes the subthemes included in the optimizer, as well as many more.</p>
<h3>Main Options</h3>
<p>The main legacy options interface.</p>
<h3>Advanced Options</h3>
<p>Advanced options, including site specific options and some admin options.</p>
<h3>Add-ons</h3>
<p>Summary and help info for Weaver Xtreme Theme Support and Weaver Xtreme Plus.</p>', 'weaver-xtreme'), weaverx_cz_get_admin_page(__('Weaver Xtreme Admin Panel', 'weaver-xtreme'))), 'type' => 'HTML'))));
        // Merge with master array
        return array_merge($sections, $general_sections);
    }