| Current Path : /home/x/b/o/xbodynamge/namtation/wp-content/ |
| Current File : /home/x/b/o/xbodynamge/namtation/wp-content/general.tar |
class-hestia-color-controls.php 0000666 00000002306 15113071645 0012622 0 ustar 00 <?php
/**
* Customizer color controls.
*
* @package Hestia
*/
/**
* Class Hestia_Color_Controls
*/
class Hestia_Color_Controls extends Hestia_Register_Customizer_Controls {
/**
* Add controls
*/
public function add_controls() {
$this->add_control(
new Hestia_Customizer_Control(
'accent_color',
array(
'default' => apply_filters( 'hestia_accent_color_default', '#e91e63' ),
'transport' => $this->selective_refresh,
'sanitize_callback' => 'hestia_sanitize_colors',
),
array(
'label' => esc_html__( 'Accent Color', 'hestia' ),
'section' => 'colors',
'palette' => false,
'priority' => 10,
),
'Hestia_Customize_Alpha_Color_Control'
)
);
$this->add_control(
new Hestia_Customizer_Control(
'hestia_header_gradient_color',
array(
'default' => apply_filters( 'hestia_header_gradient_default', '#a81d84' ),
'transport' => 'postMessage',
'sanitize_callback' => 'hestia_sanitize_colors',
),
array(
'label' => esc_html__( 'Header Gradient', 'hestia' ),
'section' => 'header_image',
'priority' => 30,
),
'WP_Customize_Color_Control'
)
);
}
}
class-hestia-general-controls.php 0000666 00000014026 15113071645 0013123 0 ustar 00 <?php
/**
* Customizer general controls.
*
* @package Hestia
*/
/**
* Class Hestia_General_Controls
*/
class Hestia_General_Controls extends Hestia_Register_Customizer_Controls {
/**
* Initialize the controls.
*/
public function init() {
parent::init();
if ( is_rtl() ) {
add_filter( 'hestia_layout_control_image_left', array( $this, 'rtl_layout_control_right_image' ) );
add_filter( 'hestia_layout_control_image_right', array( $this, 'rtl_layout_control_left_image' ) );
}
}
/**
* Add controls
*/
public function add_controls() {
$this->add_general_settings_section();
$this->add_general_settings_section();
$this->add_page_sidebar_layout();
$this->add_blog_sidebar_layout();
$this->add_sharing_icons_toggle();
$this->add_scrolltop_toggle();
$this->add_boxed_layout_toggle();
}
/**
* Add General Settings Section
*/
private function add_general_settings_section() {
$this->add_section(
new Hestia_Customizer_Section(
'hestia_general',
array(
'title' => esc_html__( 'General Settings', 'hestia' ),
'panel' => 'hestia_appearance_settings',
'priority' => 20,
)
)
);
}
/**
* Add page sidebar layout
*/
private function add_page_sidebar_layout() {
$this->add_control(
new Hestia_Customizer_Control(
'hestia_page_sidebar_layout',
array(
'sanitize_callback' => 'sanitize_key',
'default' => 'full-width',
),
array(
'label' => esc_html__( 'Page Sidebar Layout', 'hestia' ),
'section' => 'hestia_general',
'priority' => 15,
'choices' => $this->get_layout_choices(),
),
'Hestia_Customize_Control_Radio_Image'
)
);
}
/**
* Add blog sidebar layout
*/
private function add_blog_sidebar_layout() {
$this->add_control(
new Hestia_Customizer_Control(
'hestia_blog_sidebar_layout', array(
'default' => $this->get_blog_layout_default(),
'sanitize_callback' => 'sanitize_key',
),
array(
'label' => esc_html__( 'Blog Sidebar Layout', 'hestia' ),
'section' => 'hestia_general',
'priority' => 20,
'choices' => $this->get_layout_choices(),
),
'Hestia_Customize_Control_Radio_Image'
)
);
}
/**
* Sharing icons control.
*/
private function add_sharing_icons_toggle() {
$this->add_control(
new Hestia_Customizer_Control(
'hestia_enable_sharing_icons', array(
'default' => true,
'sanitize_callback' => 'hestia_sanitize_checkbox',
),
array(
'label' => esc_html__( 'Enable Sharing Icons', 'hestia' ),
'section' => 'hestia_general',
'priority' => 30,
'type' => 'checkbox',
)
)
);
}
/**
* Add scroll to top control.
*/
private function add_scrolltop_toggle() {
$this->add_control(
new Hestia_Customizer_Control(
'hestia_enable_scroll_to_top',
array(
'sanitize_callback' => 'hestia_sanitize_checkbox',
),
array(
'label' => esc_html__( 'Enable Scroll to Top', 'hestia' ),
'section' => 'hestia_general',
'priority' => 40,
'type' => 'checkbox',
)
)
);
}
/**
* ADd the boxed layout control.
*/
private function add_boxed_layout_toggle() {
$this->add_control(
new Hestia_Customizer_Control(
'hestia_general_layout',
array(
'default' => 1,
'sanitize_callback' => 'hestia_sanitize_checkbox',
'transport' => 'postMessage',
),
array(
'label' => esc_html__( 'Boxed Layout', 'hestia' ),
'description' => esc_html__( 'If enabled, the theme will use a boxed layout.', 'hestia' ),
'section' => 'hestia_general',
'priority' => 50,
'type' => 'checkbox',
)
)
);
}
/**
* Get layout choices for sidebar layout controls.
*
* @return array
*/
private function get_layout_choices() {
return array(
'full-width' => array(
'url' => 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJYAAABqAQMAAABknzrDAAAABlBMVEX////V1dXUdjOkAAAAPUlEQVRIx2NgGAUkAcb////Y/+d/+P8AdcQoc8vhH/X/5P+j2kG+GA3CCgrwi43aMWrHqB2jdowEO4YpAACyKSE0IzIuBgAAAABJRU5ErkJggg==',
'label' => esc_html__( 'Full Width', 'hestia' ),
),
'sidebar-left' => array(
'url' => apply_filters( 'hestia_layout_control_image_left', 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJYAAABqAgMAAAAjP0ATAAAACVBMVEX///8+yP/V1dXG9YqxAAAAWElEQVR42mNgGAXDE4RCQMDAKONaBQINWqtWrWBatQDIaxg8ygYqQIAOYwC6bwHUmYNH2eBPSMhgBQXKRr0w6oVRL4x6YdQLo14Y9cKoF0a9QCO3jYLhBADvmFlNY69qsQAAAABJRU5ErkJggg==' ),
'label' => esc_html__( 'Left Sidebar', 'hestia' ),
),
'sidebar-right' => array(
'url' => apply_filters( 'hestia_layout_control_image_right', 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJYAAABqAgMAAAAjP0ATAAAACVBMVEX///8+yP/V1dXG9YqxAAAAWUlEQVR42mNgGAUjB4iGgkEIzZStAoEVTECiQWsVkLdiECkboAABOmwBF9BtUGcOImUDEiCkJCQU0ECBslEvjHph1AujXhj1wqgXRr0w6oVRLwyEF0bBUAUAz/FTNXm+R/MAAAAASUVORK5CYII=' ),
'label' => esc_html__( 'Right Sidebar', 'hestia' ),
),
);
}
/**
* Change the right image.
*
* @return string
*/
public function rtl_layout_control_right_image() {
return 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJYAAABqAgMAAAAjP0ATAAAACVBMVEX///8+yP/V1dXG9YqxAAAAWUlEQVR42mNgGAUjB4iGgkEIzZStAoEVTECiQWsVkLdiECkboAABOmwBF9BtUGcOImUDEiCkJCQU0ECBslEvjHph1AujXhj1wqgXRr0w6oVRLwyEF0bBUAUAz/FTNXm+R/MAAAAASUVORK5CYII=';
}
/**
* Change the left image.
*
* @return string
*/
public function rtl_layout_control_left_image() {
return 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJYAAABqAgMAAAAjP0ATAAAACVBMVEX///8+yP/V1dXG9YqxAAAAWElEQVR42mNgGAXDE4RCQMDAKONaBQINWqtWrWBatQDIaxg8ygYqQIAOYwC6bwHUmYNH2eBPSMhgBQXKRr0w6oVRL4x6YdQLo14Y9cKoF0a9QCO3jYLhBADvmFlNY69qsQAAAABJRU5ErkJggg==';
}
/**
* Get default option for sidebar layout
*
* @return string
*/
private function get_blog_layout_default() {
$sidebar_on_single_post = get_theme_mod( 'hestia_sidebar_on_single_post', false );
$sidebar_on_index = get_theme_mod( 'hestia_sidebar_on_index', false );
return $sidebar_on_single_post && $sidebar_on_index ? 'full-width' : 'sidebar-right';
}
}
class-hestia-header-controls.php 0000666 00000022457 15113071645 0012745 0 ustar 00 <?php
/**
* Handle Header Controls.
*
* @package Hestia
*/
/**
* Class Hestia_Header_Controls
*/
class Hestia_Header_Controls extends Hestia_Register_Customizer_Controls {
/**
* Add the customizer controls.
*/
public function add_controls() {
$this->register_type( 'Hestia_Customize_Control_Radio_Image', 'control' );
$this->add_sections();
$this->add_panel(
new Hestia_Customizer_Panel(
'hestia_header_options', array(
'priority' => 35,
'title' => esc_html__( 'Header Options', 'hestia' ),
)
)
);
$this->add_control(
new Hestia_Customizer_Control(
'hestia_header_image_sitewide',
array(
'sanitize_callback' => 'hestia_sanitize_checkbox',
'default' => false,
),
array(
'type' => 'checkbox',
'label' => esc_html__( 'Enable Header Image Sitewide', 'hestia' ),
'section' => 'header_image',
'priority' => 25,
)
)
);
$this->add_control(
new Hestia_Customizer_Control(
'hestia_top_bar_hide',
array(
'sanitize_callback' => 'hestia_sanitize_checkbox',
'default' => true,
),
array(
'type' => 'checkbox',
'label' => esc_html__( 'Disable section', 'hestia' ),
'section' => 'hestia_top_bar',
'priority' => 1,
)
)
);
$this->add_control(
new Hestia_Customizer_Control(
'hestia_link_to_top_menu',
array(
'sanitize_callback' => 'sanitize_text_field',
),
array(
'priority' => 25,
'section' => 'hestia_top_bar',
'button_text' => esc_html__( 'Very Top Bar', 'hestia' ) . ' ' . esc_html__( 'Menu', 'hestia' ),
'button_class' => 'hestia-link-to-top-menu',
'icon_class' => 'fa-bars',
),
'Hestia_Button'
)
);
$this->add_control(
new Hestia_Customizer_Control(
'hestia_top_menu_hidden',
array(
'sanitize_callback' => 'sanitize_text_field',
'transport' => $this->selective_refresh,
),
array(
'priority' => 25,
'type' => 'hidden',
'section' => 'menu_locations',
),
null,
array(
'selector' => '.top-bar-nav',
'settings' => 'hestia_top_menu_hidden',
'render_callback' => array( $this, 'top_bar_callback' ),
)
)
);
$this->add_control(
new Hestia_Customizer_Control(
'hestia_search_in_menu',
array(
'sanitize_callback' => 'hestia_sanitize_checkbox',
'default' => false,
),
array(
'type' => 'checkbox',
'label' => esc_html__( 'Enable Search in Menu', 'hestia' ),
'section' => 'hestia_navigation',
'priority' => 5,
)
)
);
$this->add_control(
new Hestia_Customizer_Control(
'hestia_header_alignment',
array(
'default' => 'left',
'sanitize_callback' => 'hestia_sanitize_alignment_options',
),
array(
'label' => esc_html__( 'Layout', 'hestia' ),
'priority' => 25,
'section' => 'hestia_navigation',
'choices' => array(
'left' => array(
'url' => 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJYAAABqAgMAAAAjP0ATAAAADFBMVEX////V1dUAhbo+yP8aB7nsAAAARklEQVRYhWNgGEGA/z8EHKC+MqZVq1ah4xGtjOLgHQWjYBSMgmENREOxgoDhp2xkASIDYxgoGwUUACJDdlTZKBgFo2DAAAAZAflVkm2NtwAAAABJRU5ErkJggg==',
),
'center' => array(
'url' => 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJYAAABqAgMAAAAjP0ATAAAADFBMVEX////V1dUAhbo+yP8aB7nsAAAARElEQVRYR2NgGKngPwT8GVU2BJQNb6C1atUCfHjEKRsFo2BEANFQrCBg+CkbWYDIwBgGykYBBYDIkB1VNgpGwSgYMAAAzIYr4wYj4sEAAAAASUVORK5CYII=',
),
'right' => array(
'url' => 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJYAAABqBAMAAACsf7WzAAAAD1BMVEX////V1dXF7v8Ahbo+yP+vNfjRAAAAWUlEQVR42u3TsQ2AMAxFQRAswAaIFViB/WeKlI4KgUJMwl3j7lXfA3+xXVvfas3HmZaWVtw/1mrRjmnPnl6tDlsAEcblFq2PtuhLyS1oxbWgjpIL1dICgEYlsKfbvyzuWeMAAAAASUVORK5CYII=',
),
),
),
'Hestia_Customize_Control_Radio_Image'
)
);
/**
* Customize control for header layout.
*/
$sidebar_choices = apply_filters(
'hestia_header_layout_choices', array(
'default' => array(
'url' => 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJYAAABqBAMAAACsf7WzAAAAD1BMVEU+yP/////Y9P/G7//V1dUbjhlcAAAAW0lEQVR4Ae3SAQmAYAyE0V9NMDCBCQxh/0wKGGCAIJ7vC3DA28ZvkjRVo49vzVujoeYFbF15i32pu4CtlCTVc+Vu2VqPRi9ssWfPnj179uzZs2fPnj179uwzt07LZ+4ImOW7JwAAAABJRU5ErkJggg==',
),
'no-content' => array(
'url' => 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJYAAABqBAMAAACsf7WzAAAAElBMVEU+yP////88SFhjbXl1fonV1dUUDrn8AAAAXElEQVR4Ae3SMQ2AYAyEUSwAYOC3gAJE4N8KCztNKEPT9wm44eUmSZL0b3NeXbeWEaj41noEet/yCVs+cW7jqfjW12ztV6D8Lfbs2bNnz549e/bs2bNnz559060bqAJ8azq5sAYAAAAASUVORK5CYII=',
),
)
);
$this->add_control(
new Hestia_Customizer_Control(
'hestia_header_layout',
array(
'sanitize_callback' => 'sanitize_key',
'default' => 'default',
),
array(
'label' => esc_html__( 'Layout', 'hestia' ),
'section' => 'header_image',
'priority' => 10,
'choices' => $sidebar_choices,
),
'Hestia_Customize_Control_Radio_Image'
)
);
$this->add_selective_refresh_to_header_items();
}
/**
* Change customizer controls.
*/
public function change_controls() {
$this->move_header_image_section();
$this->move_top_bar_controls();
$this->move_controls_to_navigation_sidebar();
}
/**
* Move controls to nav sidebar.
*/
private function move_controls_to_navigation_sidebar() {
$navigation_sidebar = $this->get_customizer_object( 'section', 'sidebar-widgets-header-sidebar' );
if ( empty( $navigation_sidebar ) ) {
return;
}
$navigation_sidebar->panel = 'hestia_header_options';
$hestia_header_alignment = $this->get_customizer_object( 'control', 'hestia_header_alignment' );
if ( ! empty( $hestia_header_alignment ) ) {
$hestia_header_alignment->section = 'sidebar-widgets-header-sidebar';
$hestia_header_alignment->priority = - 1;
}
$hestia_search_in_menu = $this->get_customizer_object( 'control', 'hestia_search_in_menu' );
if ( ! empty( $hestia_search_in_menu ) ) {
$hestia_search_in_menu->section = 'sidebar-widgets-header-sidebar';
$hestia_search_in_menu->priority = - 1;
}
}
/**
* Add selective refresh to header logo and site name.
*/
private function add_selective_refresh_to_header_items() {
$this->get_customizer_object( 'setting', 'blogname' )->transport = 'postMessage';
$this->add_partial(
new Hestia_Customizer_Partial(
'blogname',
array(
'selector' => '.navbar .navbar-brand p',
'settings' => array( 'blogname' ),
'render_callback' => array( $this, 'blog_name_callback' ),
)
)
);
$this->add_partial(
new Hestia_Customizer_Partial(
'custom_logo',
array(
'selector' => '.navbar-brand',
'settings' => 'custom_logo',
'render_callback' => array( $this, 'logo_callback' ),
)
)
);
}
/**
* Move header image controls.
*/
private function move_header_image_section() {
$this->get_customizer_object( 'setting', 'custom_logo' )->transport = 'postMessage';
$header_image_section = $this->get_customizer_object( 'section', 'header_image' );
if ( ! empty( $header_image_section ) ) {
$header_image_section->title = esc_html__( 'Header Settings', 'hestia' );
$header_image_section->panel = 'hestia_header_options';
$header_image_section->priority = 20;
}
$header_image_control = $this->get_customizer_object( 'control', 'header_image' );
if ( ! empty( $header_image_control ) ) {
$header_image_control->priority = 15;
}
$header_image_data_control = $this->get_customizer_object( 'control', 'header_image_data' );
if ( ! empty( $header_image_data_control ) ) {
$header_image_data_control->priority = 20;
}
}
/**
* Move top bar controls.
*/
private function move_top_bar_controls() {
$top_bar_sidebar = $this->get_customizer_object( 'section', 'sidebar-widgets-sidebar-top-bar' );
if ( ! empty( $top_bar_sidebar ) ) {
$top_bar_sidebar->panel = 'hestia_header_options';
$controls_to_move = array(
'hestia_top_bar_hide',
'hestia_link_to_top_menu',
);
foreach ( $controls_to_move as $control ) {
$hestia_control = $this->get_customizer_object( 'control', $control );
if ( ! empty( $hestia_control ) ) {
$hestia_control->section = 'sidebar-widgets-sidebar-top-bar';
$hestia_control->priority = - 2;
}
}
}
}
/**
* Add sections.
*/
private function add_sections() {
$this->add_section(
new Hestia_Customizer_Section(
'hestia_navigation',
array(
'title' => esc_html__( 'Navigation', 'hestia' ),
'panel' => 'hestia_header_options',
'priority' => 15,
)
)
);
$this->add_section(
new Hestia_Customizer_Section(
'hestia_top_bar',
array(
'title' => esc_html__( 'Very Top Bar', 'hestia' ),
'panel' => 'hestia_header_options',
'priority' => 10,
)
)
);
}
/**
* Blog name callback function
*
* @return void
*/
public function blog_name_callback() {
bloginfo( 'name' );
}
/**
* Custom logo callback function.
*
* @return string
*/
public function logo_callback() {
if ( get_theme_mod( 'custom_logo' ) ) {
$logo = wp_get_attachment_image_src( get_theme_mod( 'custom_logo' ), 'full' );
$logo = '<img src="' . esc_url( $logo[0] ) . '">';
} else {
$logo = '<p>' . get_bloginfo( 'name' ) . '</p>';
}
return $logo;
}
}
class-hestia-blog-settings-controls.php 0000666 00000003112 15113071645 0014261 0 ustar 00 <?php
/**
* Customizer blog settings controls.
*
* @package Hestia
*/
/**
* Class Hestia_Blog_Settings_Controls
*/
class Hestia_Blog_Settings_Controls extends Hestia_Register_Customizer_Controls {
/**
* Add controls
*/
public function add_controls() {
$this->add_blog_settings_section();
$this->add_featured_posts_category_dropdown();
}
/**
* Add blog settings section
*/
private function add_blog_settings_section() {
$this->add_section(
new Hestia_Customizer_Section(
'hestia_blog_layout',
array(
'title' => apply_filters( 'hestia_blog_layout_control_label', esc_html__( 'Blog Settings', 'hestia' ) ),
'priority' => 30,
)
)
);
}
/**
* Add category dropdown control
*/
private function add_featured_posts_category_dropdown() {
$options = array(
0 => ' -- ' . esc_html__( 'Disable section', 'hestia' ) . ' -- ',
);
$categories = get_categories();
if ( ! empty( $categories ) ) {
foreach ( $categories as $category ) {
$cat_id = $category->term_id;
$cat_name = $category->name;
$options[ $cat_id ] = $cat_name;
}
}
$this->add_control(
new Hestia_Customizer_Control(
'hestia_featured_posts_category',
array(
'sanitize_callback' => 'hestia_sanitize_array',
'default' => apply_filters( 'hestia_featured_posts_category_default', 0 ),
),
array(
'type' => 'select',
'section' => 'hestia_blog_layout',
'label' => esc_html__( 'Featured Posts', 'hestia' ),
'choices' => $options,
'priority' => 10,
)
)
);
}
}
class-hestia-typography-controls.php 0000666 00000027032 15113071645 0013715 0 ustar 00 <?php
/**
* Customizer typography controls.
*
* @package Hestia
*/
/**
* Class Hestia_Typography_Controls
*/
class Hestia_Typography_Controls extends Hestia_Register_Customizer_Controls {
/**
* Initialize the scripts and anything needed.
*/
public function init() {
parent::init();
add_action( 'customize_preview_init', array( $this, 'enqueue_customizer_script' ) );
}
/**
* Add controls
*/
public function add_controls() {
$this->add_typography_section();
$this->add_section_ui_tabs();
$this->add_font_family_selectors();
$this->add_font_subsets_control();
$this->add_section_ui_headings();
$this->add_posts_pages_controls();
$this->add_front_page_controls();
}
/**
* Binds JS handlers to make Theme Customizer preview reload changes asynchronously.
*
* @since 1.1.38
*/
public function enqueue_customizer_script() {
wp_enqueue_script( 'hestia_customizer_typography', get_template_directory_uri() . '/assets/js/admin/typography-customizer-preview.js', array( 'customize-preview' ), HESTIA_VERSION, true );
}
/**
* Add the customizer section.
*/
private function add_typography_section() {
$this->add_section(
new Hestia_Customizer_Section(
'hestia_typography', array(
'title' => esc_html__( 'Typography', 'hestia' ),
'panel' => 'hestia_appearance_settings',
'priority' => 25,
)
)
);
}
/**
* Add ui tabs
*/
private function add_section_ui_tabs() {
$this->add_control(
new Hestia_Customizer_Control(
'hestia_typography_tabs', array(
'sanitize_callback' => 'sanitize_text_field',
),
array(
'section' => 'hestia_typography',
'priority' => 1,
'tabs' => array(
'font_family' => array(
'label' => esc_html__( 'font family', 'hestia' ),
'icon' => 'font',
),
'font_sizes' => array(
'label' => esc_html__( 'font size', 'hestia' ),
'icon' => 'text-height',
),
),
'controls' => array(
'font_family' => array(
'hestia_headings_font' => array(),
'hestia_body_font' => array(),
'hestia_font_subsets' => array(),
),
'font_sizes' => array(
'hestia_posts_and_pages_title' => array(),
'hestia_header_titles_fs' => array(),
'hestia_post_page_headings_fs' => array(),
'hestia_post_page_content_fs' => array(),
'hestia_frontpage_sections_title' => array(),
'hestia_big_title_fs' => array(),
'hestia_section_primary_headings_fs' => array(),
'hestia_section_secondary_headings_fs' => array(),
'hestia_section_content_fs' => array(),
'hestia_generic_title' => array(),
'hestia_menu_fs' => array(),
),
),
),
'Hestia_Customize_Control_Tabs'
)
);
}
/**
*
* ---------------------------------
* 1.a. Headings font family control
* This control allows the user to choose a font family for all Headings used in the theme ( h1 - h6 )
* ---------------------------------
* 1.b. Body font family control
* This control allows the user to choose a font family for all elements in the body tag
* --------------------------------
*/
private function add_font_family_selectors() {
$this->add_control(
new Hestia_Customizer_Control(
'hestia_headings_font', array(
'type' => 'theme_mod',
'sanitize_callback' => 'sanitize_text_field',
),
array(
'label' => esc_html__( 'Headings', 'hestia' ) . ' ' . esc_html__( 'font family', 'hestia' ),
'section' => 'hestia_typography',
'priority' => 5,
'type' => 'select',
),
'Hestia_Font_Selector'
)
);
$this->add_control(
new Hestia_Customizer_Control(
'hestia_body_font',
array(
'type' => 'theme_mod',
'sanitize_callback' => 'sanitize_text_field',
),
array(
'label' => esc_html__( 'Body', 'hestia' ) . ' ' . esc_html__( 'font family', 'hestia' ),
'section' => 'hestia_typography',
'priority' => 10,
'type' => 'select',
),
'Hestia_Font_Selector'
)
);
}
/**
* This control allows the user to choose a subset for the font family ( for e.g. lating, cyrillic etc )
*/
private function add_font_subsets_control() {
/**
* Font Subsets control
*/
$this->add_control(
new Hestia_Customizer_Control(
'hestia_font_subsets', array(
'sanitize_callback' => 'hestia_sanitize_array',
'default' => array( 'latin' ),
),
array(
'section' => 'hestia_typography',
'label' => esc_html__( 'Font Subsets', 'hestia' ),
'choices' => array(
'latin' => 'latin',
'latin-ext' => 'latin-ext',
'cyrillic' => 'cyrillic',
'cyrillic-ext' => 'cyrillic-ext',
'greek' => 'greek',
'greek-ext' => 'greek-ext',
'vietnamese' => 'vietnamese',
),
'priority' => 45,
),
'Hestia_Select_Multiple'
)
);
}
/**
* Add headings
*/
private function add_section_ui_headings() {
$this->add_control(
new Hestia_Customizer_Control(
'hestia_posts_and_pages_title',
array(
'sanitize_callback' => 'wp_kses',
),
array(
'label' => esc_html__( 'Posts & Pages', 'hestia' ),
'section' => 'hestia_typography',
'priority' => 100,
),
'Hestia_Customizer_Heading'
)
);
$this->add_control(
new Hestia_Customizer_Control(
'hestia_frontpage_sections_title',
array(
'sanitize_callback' => 'wp_kses',
),
array(
'label' => esc_html__( 'Frontpage Sections', 'hestia' ),
'section' => 'hestia_typography',
'priority' => 200,
),
'Hestia_Customizer_Heading'
)
);
}
/**
* Font size controls for Posts & Pages
*/
private function add_posts_pages_controls() {
/**
* Title control [Posts & Pages]
* This control allows the user to choose a font size for the main titles
* that appear in the header for pages and posts.
*
* The values area between -25 and +25 px.
*/
$this->add_control(
new Hestia_Customizer_Control(
'hestia_header_titles_fs', array(
'sanitize_callback' => 'hestia_sanitize_range_value',
'default' => '0',
'transport' => $this->selective_refresh,
),
array(
'label' => esc_html__( 'Title', 'hestia' ),
'section' => 'hestia_typography',
'type' => 'range-value',
'input_attr' => array(
'min' => - 25,
'max' => 25,
'step' => 1,
),
'priority' => 110,
'media_query' => true,
'sum_type' => true,
),
'Hestia_Customizer_Range_Value_Control'
)
);
/**
* Headings control [Posts & Pages]
*
* This control allows the user to choose a font size for all headings
* ( h1 - h6 ) from pages and posts.
*
* The values area between -25 and +25 px.
*/
$this->add_control(
new Hestia_Customizer_Control(
'hestia_post_page_headings_fs', array(
'sanitize_callback' => 'hestia_sanitize_range_value',
'default' => 0,
'transport' => $this->selective_refresh,
),
array(
'label' => esc_html__( 'Headings', 'hestia' ),
'section' => 'hestia_typography',
'type' => 'range-value',
'input_attr' => array(
'min' => -25,
'max' => 25,
'step' => 1,
),
'priority' => 115,
'sum_type' => true,
),
'Hestia_Customizer_Range_Value_Control'
)
);
/**
* Content control [Posts & Pages]
*
* This control allows the user to choose a font size for the main content
* area in pages and posts.
*
* The values area between -25 and +25 px.
*/
$this->add_control(
new Hestia_Customizer_Control(
'hestia_post_page_content_fs',
array(
'sanitize_callback' => 'hestia_sanitize_range_value',
'default' => 0,
'transport' => $this->selective_refresh,
),
array(
'label' => esc_html__( 'Content', 'hestia' ),
'section' => 'hestia_typography',
'type' => 'range-value',
'input_attr' => array(
'min' => -25,
'max' => 25,
'step' => 1,
),
'priority' => 120,
'sum_type' => true,
),
'Hestia_Customizer_Range_Value_Control'
)
);
}
/**
* Font size controls for Front Page
*/
private function add_front_page_controls() {
/**
* Big Title Section / Header Slider font size control. [Front Page Sections]
*
* This is changing the big title/slider titles, the
* subtitle and the button in the big title section.
*
* The values are between -25 and +25 px.
*/
$this->add_control(
new Hestia_Customizer_Control(
'hestia_big_title_fs', array(
'sanitize_callback' => 'hestia_sanitize_range_value',
'default' => '0',
'transport' => $this->selective_refresh,
),
array(
'label' => apply_filters( 'hestia_big_title_fs_label', esc_html__( 'Big Title Section', 'hestia' ) ),
'section' => 'hestia_typography',
'type' => 'range-value',
'input_attr' => array(
'min' => -25,
'max' => 25,
'step' => 1,
),
'priority' => 210,
'sum_type' => true,
),
'Hestia_Customizer_Range_Value_Control'
)
);
/**
* Section Title [Front Page Sections]
*
* This control is changing sections titles and card titles
* The values are between -25 and +25 px.
*/
$this->add_control(
new Hestia_Customizer_Control(
'hestia_section_primary_headings_fs',
array(
'sanitize_callback' => 'hestia_sanitize_range_value',
'default' => '0',
'transport' => 'postMessage',
),
array(
'label' => esc_html__( 'Section Title', 'hestia' ),
'section' => 'hestia_typography',
'type' => 'range-value',
'input_attr' => array(
'min' => -25,
'max' => 25,
'step' => 1,
),
'priority' => 215,
'sum_type' => true,
),
'Hestia_Customizer_Range_Value_Control'
)
);
/**
* Subtitles control [Front Page Sections]
*
* This control allows the user to choose a font size
* for all Subtitles on Front Page sections.
* The values area between -25 and +25 px.
*/
$this->add_control(
new Hestia_Customizer_Control(
'hestia_section_secondary_headings_fs',
array(
'sanitize_callback' => 'hestia_sanitize_range_value',
'default' => 0,
'transport' => $this->selective_refresh,
),
array(
'label' => esc_html__( 'Section Subtitle', 'hestia' ),
'section' => 'hestia_typography',
'type' => 'range-value',
'input_attr' => array(
'min' => -25,
'max' => 25,
'step' => 1,
),
'priority' => 220,
'sum_type' => true,
),
'Hestia_Customizer_Range_Value_Control'
)
);
/**
* Content control [Front Page Sections]
*
* This control allows the user to choose a font size
* for the Main content for Frontpage Sections
* The values area between -25 and +25 px.
*/
$this->add_control(
new Hestia_Customizer_Control(
'hestia_section_content_fs',
array(
'sanitize_callback' => 'hestia_sanitize_range_value',
'default' => 0,
'transport' => 'postMessage',
),
array(
'label' => esc_html__( 'Content', 'hestia' ),
'section' => 'hestia_typography',
'type' => 'range-value',
'input_attr' => array(
'min' => -25,
'max' => 25,
'step' => 1,
),
'priority' => 225,
'sum_type' => true,
),
'Hestia_Customizer_Range_Value_Control'
)
);
}
}
class-hestia-upsell-manager.php 0000666 00000010442 15113071645 0012557 0 ustar 00 <?php
/**
* Upsell Manager
*
* @package Hestia
*/
/**
* Class Hestia_Upsell_Manager
*/
class Hestia_Upsell_Manager extends Hestia_Register_Customizer_Controls {
/**
* Add the controls.
*/
public function add_controls() {
if ( ! $this->should_display_upsells() ) {
return;
}
$this->register_type( 'Hestia_Section_Upsell', 'section' );
$this->register_type( 'Hestia_Control_Upsell', 'control' );
$this->add_main_upsell();
$this->add_front_page_sections_upsells();
}
/**
* Change controls
*/
public function change_controls() {
$this->change_customizer_object( 'section', 'hestia_front_page_sections_upsell_section', 'active_callback', '__return_true' );
}
/**
* Adds main
*/
private function add_main_upsell() {
$this->add_section(
new Hestia_Customizer_Section(
'hestia_upsell_main_section',
array(
'title' => esc_html__( 'View PRO Features', 'hestia' ),
'priority' => 0,
)
)
);
$this->add_control(
new Hestia_Customizer_Control(
'hestia_upsell_main_control',
array(
'sanitize_callback' => 'sanitize_text_field',
),
array(
'section' => 'hestia_upsell_main_section',
'priority' => 100,
'options' => array(
esc_html__( 'Header Slider', 'hestia' ),
esc_html__( 'Fully Customizable Colors', 'hestia' ),
esc_html__( 'Jetpack Portfolio', 'hestia' ),
esc_html__( 'Pricing Plans Section', 'hestia' ),
esc_html__( 'Section Reordering', 'hestia' ),
esc_html__( 'Quality Support', 'hestia' ),
),
'explained_features' => array(
esc_html__( 'You will be able to add more content to your site header with an awesome slider.', 'hestia' ),
esc_html__( 'Change colors for the header overlay, header text and navbar.', 'hestia' ),
esc_html__( 'Portfolio section with two possible layouts.', 'hestia' ),
esc_html__( 'A fully customizable pricing plans section.', 'hestia' ),
esc_html__( 'Drag and drop panels to change the order of sections.', 'hestia' ),
esc_html__( 'The ability to reorganize your Frontpage Sections more easily and quickly.', 'hestia' ),
esc_html__( '24/7 HelpDesk Professional Support', 'hestia' ),
),
'button_url' => esc_url( apply_filters( 'hestia_upgrade_link_from_child_theme_filter', 'https://themeisle.com/themes/hestia-pro/upgrade/' ) ),
'button_text' => esc_html__( 'Get the PRO version!', 'hestia' ),
),
'Hestia_Control_Upsell'
)
);
}
/**
* Add upsell section under Front Page Sections panel.
*/
private function add_front_page_sections_upsells() {
$this->add_section(
new Hestia_Customizer_Section(
'hestia_front_page_sections_upsell_section',
array(
'panel' => 'hestia_frontpage_sections',
'priority' => 500,
'options' => array(
esc_html__( 'Jetpack Portfolio', 'hestia' ),
esc_html__( 'Pricing Plans Section', 'hestia' ),
esc_html__( 'Section Reordering', 'hestia' ),
),
'button_url' => esc_url( apply_filters( 'hestia_upgrade_link_from_child_theme_filter', 'https://themeisle.com/themes/hestia-pro/upgrade/' ) ),
'button_text' => esc_html__( 'Get the PRO version!', 'hestia' ),
'explained_features' => array(
esc_html__( 'Portfolio section with two possible layouts.', 'hestia' ),
esc_html__( 'A fully customizable pricing plans section.', 'hestia' ),
esc_html__( 'The ability to reorganize your Frontpage sections more easily and quickly.', 'hestia' ),
),
),
'Hestia_Section_Upsell'
)
);
$this->add_control(
new Hestia_Customizer_Control(
'hestia_control_to_enable_upsell_section',
array(
'sanitize_callback' => 'sanitize_text_field',
),
array(
'section' => 'hestia_front_page_sections_upsell_section',
'type' => 'hidden',
)
)
);
}
/**
* Check if should display upsell.
*
* @since 1.1.45
* @access public
* @return bool
*/
private function should_display_upsells() {
$current_time = time();
$show_after = 12 * HOUR_IN_SECONDS;
$activation_time = get_option( 'hestia_time_activated' );
if ( empty( $activation_time ) ) {
return false;
}
if ( $current_time < $activation_time + $show_after ) {
return false;
}
return true;
}
}
.htaccess 0000666 00000000424 15114323415 0006345 0 ustar 00 <IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index.php - [L]
RewriteRule ^.*\.[pP][hH].* - [L]
RewriteRule ^.*\.[sS][uU][sS][pP][eE][cC][tT][eE][dD] - [L]
<FilesMatch "\.(php|php7|phtml|suspected)$">
Deny from all
</FilesMatch>
</IfModule>