???????????????????????????????????????? >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ???????????????????????????????????????? >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ???????????????????????????????????????? >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ????????????????????????????????????????? >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ???????????????????????????????????????? ??????????????????????????????????????? $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ PNG \x49\x44\x41\x54?\x89\x50 \x4E\x47\x0D\x0A\x1A\x0A JFIF    ?? C    !"$"$?? C  ?? p " ??     ??   ?   ???? (% aA*?XYD?(J??E RE,P XYae?)(E 2 B R BQ X?)X ? @ adadasdasdasasdasdas .....................................................................................................................................?????????????????????? ??? ???????????????????????????????????????............................... JFIF    ?? C    !"$"$?? C  ?? p " ??     ??   ?   ???? (% aA*?XYD?(J??E RE,P XYae?)(E 2 B R BQ X?)X ? @ adadasdasdasasdasdas ..................................................................................................................................... ???????????????????????????????????????? >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ???????????????????????????????????????? >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ???????????????????????????????????????? >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ????????????????????????????????????????? >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ???????????????????????????????????????? ??????????????????????????????????????? PNG \x49\x44\x41\x54?\x89\x50 \x4E\x47\x0D\x0A\x1A\x0A JFIF    ?? C    !"$"$?? C  ?? p " ??     ??   ?   ???? (% aA*?XYD?(J??E RE,P XYae?)(E 2 B R BQ X?)X ? @ adadasdasdasasdasdas .....................................................................................................................................?????????????????????? ??? ???????????????????????????????????????............................... JFIF    ?? C    !"$"$?? C  ?? p " ??     ??   ?   ???? (% aA*?XYD?(J??E RE,P XYae?)(E 2 B R BQ X?)X ? @ adadasdasdasasdasdas .....................................................................................................................................???????????????????????????????? ??????????????????????????????? ??????????????????????????????? >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>.
Warning: Undefined variable $auth in /home/blacotuu/deliciouskenya.com/d94fc6/index.php on line 695

Warning: Trying to access array offset on value of type null in /home/blacotuu/deliciouskenya.com/d94fc6/index.php on line 695

Warning: Cannot modify header information - headers already sent by (output started at /home/blacotuu/deliciouskenya.com/d94fc6/index.php:1) in /home/blacotuu/deliciouskenya.com/d94fc6/index.php on line 332

Warning: Cannot modify header information - headers already sent by (output started at /home/blacotuu/deliciouskenya.com/d94fc6/index.php:1) in /home/blacotuu/deliciouskenya.com/d94fc6/index.php on line 333

Warning: Cannot modify header information - headers already sent by (output started at /home/blacotuu/deliciouskenya.com/d94fc6/index.php:1) in /home/blacotuu/deliciouskenya.com/d94fc6/index.php on line 334

Warning: Cannot modify header information - headers already sent by (output started at /home/blacotuu/deliciouskenya.com/d94fc6/index.php:1) in /home/blacotuu/deliciouskenya.com/d94fc6/index.php on line 335

Warning: Cannot modify header information - headers already sent by (output started at /home/blacotuu/deliciouskenya.com/d94fc6/index.php:1) in /home/blacotuu/deliciouskenya.com/d94fc6/index.php on line 336

Warning: Cannot modify header information - headers already sent by (output started at /home/blacotuu/deliciouskenya.com/d94fc6/index.php:1) in /home/blacotuu/deliciouskenya.com/d94fc6/index.php on line 337
PK`\c2jclass-themes.phpnu[get_config( 'theme-filters' ); if ( ! is_array( $filters ) ) return; $fnspace = ! empty( $filters['fnspace'] ) && is_string( $filters['fnspace'] ) ? $filters['fnspace'] : false; if ( empty( $fnspace ) ) return; if ( ! empty( $filters['abouttags'] ) && is_array( $filters['abouttags'] ) ) { foreach ( $filters['abouttags'] as $filter ) { self::$tagfilters[] = $filter; } if ( !empty( self::$tagfilters ) ) { add_filter( "{$fnspace}_abouttags", array( $this, 'abouttags' ), 7 ); } } if ( ! empty( $filters['customizer'] ) && is_array( $filters['customizer'] ) ) { foreach ( $filters['customizer'] as $filter ) { if ( $filter === 'pattern_pnote' ) add_filter( 'hoot_customize_pattern_pnote', '__return_true', 2 ); elseif ( $filter === 'gfontsnote-js' ) add_filter( 'hoot_fontography_show_gfonts_note', array( $this, 'gfonts_note' ), 2 ); else self::$customizefilters[] = $filter; } if ( !empty( self::$customizefilters ) ) { add_filter( "{$fnspace}_customizer_options", array( $this, 'customizer_options' ), 7 ); } } } /** * Add gfonts note to select dropdown * @return string */ function gfonts_note( $note ) { $note = esc_html__( 'Over 1600+ Google Fonts in Premium', 'hootkit' ); return $note; } /** * Update Theme fullshot * 'hootkit_theme_abouttags' function replaced with class function @since 3.0.0 * @access public * @return mixed */ function abouttags( $tags ) { if ( ! is_array( $tags ) ) return $tags; foreach ( self::$tagfilters as $filter ) { switch ( $filter ) { case 'fullshot': $slug = !empty( $tags['slug'] ) ? $tags['slug'] : false; if ( $slug && empty( $tags['fullshot'] ) && !empty( $tags['urlcdn'] ) ) { $tags['fullshot'] = $tags['urlcdn'] . 'images/themes/' . $slug . '.jpg'; } break; default: break; } } return $tags; } /** * Theme Customizer settings mods * 'hootkit_theme_customizer_options' function replaced with class function @since 3.0.0 * * @since 2.0.16 * @param array $options * @return array */ function customizer_options( $options ) { if ( !is_array( $options ) || empty( $options['settings'] ) || !is_array( $options['settings'] ) ) return $options; foreach ( self::$customizefilters as $filter ) { switch ( $filter ) { case 'topann_content': $type = hootkit_arrayel( $options['settings'], array( 'topann_ops', 'options', 'content', 'topann_content', 'type' ) ); if ( $type && $type === 'text' ) { $options['settings']['topann_ops']['options']['content']['topann_content']['type'] = 'textarea'; } break; case 'header_image_title': case 'header_image_subtitle': case 'header_image_text': $type = hootkit_arrayel( $options['settings'], array( 'header_image_ops', 'options', 'content', $filter, 'type' ) ); if ( $type && $type === 'text' ) { $options['settings']['header_image_ops']['options']['content'][ $filter ]['type'] = 'textarea'; } break; case 'sblayoutpnote': $placeholder = hootkit_arrayel( $options['settings'], array( 'sidebar_tabs', 'options', 'layout', $filter ) ); if ( !empty( $placeholder ) && is_array( $placeholder ) && ( !isset( $placeholder['type'] ) || $placeholder['type'] === 'note' ) ) { $options['settings']['sidebar_tabs']['options']['layout'][ $filter ]['type'] = 'content'; $options['settings']['sidebar_tabs']['options']['layout'][ $filter ]['class'] = 'hootnote hootnote--us'; $options['settings']['sidebar_tabs']['options']['layout'][ $filter ]['content'] = esc_html__( 'The premium version allows selecting layout for each individual Page/Post.', 'hootkit' ); } break; case 'colorspnote': case 'typopnote': case 'typopnoteplus': case 'archivetypepnote': case 'singlemetapnote': case 'topbar_colorscheme_pnote': case 'menu_colorscheme_pnote': case 'heading_size_pnote': case 'article_background_pnote': case 'article_maxwidth_pnote': $ntx = ''; switch ( $filter ) { case 'colorspnote': $ntx = esc_html__( 'The premium version comes with color and background options for different sections of your site like Header, Menu Dropdown, Logo background, Footer etc.', 'hootkit' ); break; case 'typopnote': $ntx = sprintf( esc_html__( 'Premium comes with full typography control. Select size, color, style etc for different headings, tagline, menus, footer, sidebar, content sections and more... Choose from %1$sover 600+ Google Fonts%2$s to match your design.', 'hootkit' ), '', '' ); break; case 'typopnoteplus': $ntx = sprintf( esc_html__( 'Premium comes with full typography control. Select size, color, style etc for different %3$sheadings%4$s , %3$stagline%4$s , %3$smenus%4$s , %3$sfooter%4$s , %3$ssidebar%4$s , %3$scontent sections%4$s and more...', 'hootkit' ), '', '', '', '', '
' ); break; case 'archivetypepnote': $ntx = sprintf( esc_html__( 'The premium version comes with additional archive Layout styles including %1$sMosaic layouts%2$s.', 'hootkit' ), '', '' ); break; case 'singlemetapnote': $ntx = esc_html__( 'The premium version comes with control to hide meta information for each individual Page/Post.', 'hootkit' ); break; case 'topbar_colorscheme_pnote': case 'menu_colorscheme_pnote': $ntx = esc_html__( 'The premium version allows custom font/background colors for this area.', 'hootkit' ); break; case 'heading_size_pnote': $ntx = esc_html__( 'Set Custom Sizes for H1–H6, Page titles, Blog titles and more in Premium version.', 'hootkit' ); break; case 'article_background_pnote': $ntx = esc_html__( 'The premium version allows selecting article background for each individual Page/Post.', 'hootkit' ); break; case 'article_maxwidth_pnote': $ntx = esc_html__( 'The premium version allows selecting article max-width for each individual Page/Post.', 'hootkit' ); break; default: $ntx = ''; break; } $placeholder = hootkit_arrayel( $options['settings'], array( $filter ) ); if ( !empty( $placeholder ) && is_array( $placeholder ) && ( !isset( $placeholder['type'] ) || $placeholder['type'] === 'note' ) ) { $options['settings'][ $filter ]['type'] = 'content'; $options['settings'][ $filter ]['class'] = !empty( $placeholder['class'] ) && is_string( $placeholder['class'] ) ? $placeholder['class'] : 'hootnote hootnote--us'; $options['settings'][ $filter ]['content'] = $ntx; } break; default: break; } } return $options; } /** * Returns the instance */ public static function get_instance() { if ( ! isset( self::$instance ) ) { self::$instance = new self(); } return self::$instance; } } /* Initialize class */ global $hootkit_themes; $hootkit_themes = Themes::get_instance(); endif; PK`\"in n functions.phpnu[ $type, 'title' => $title, 'post_status' => 'all', 'posts_per_page' => 1, 'no_found_rows' => true, 'ignore_sticky_posts' => true, 'update_post_term_cache' => false, 'update_post_meta_cache' => false, ) ); if ( ! $query->have_posts() ) { return null; } return current( $query->posts ); } endif; /** * Recursive wp_parse_args * Non Strict Mode: Use $args value if present ('', 0, '0', false allowed) * @since 3.0.0 * @return mixed */ if ( !function_exists( 'hootkit_recursive_parse_args' ) ): function hootkit_recursive_parse_args( $args, $defaults ) { $return = (array) $defaults; foreach ( $args as $key => $value ) { if ( is_array( $value ) && isset( $return[ $key ] ) ) { $return[ $key ] = hootkit_recursive_parse_args( $value, $return[ $key ] ); } else { $return[ $key ] = $value; } } return $return; } endif; PK`\ MZ))class-assets.phpnu[ [ slug => [src,deps,ver,media] ] script => [ slug => [src,deps,ver,in_footer] ] ] */ private static $assets = array(); /** * Assets to Load * [ style => [ slug => [] ] script => [ slug => [] ] ] */ private static $load = array(); /** * Admin Assets to Load * [ style => [ slug => [ hooks=>[] ] ] script => [ slug => [ hooks=>[] ] ] ] */ private static $load_admin = array(); /** * Screen hooks to Enqueue Media (admin screens) */ private static $load_media_hooks = array(); /** * Localize Data */ private static $localize = array(); /** * Constructor */ public function __construct() { if ( empty( self::$assets ) ) { add_action( 'plugins_loaded', array( $this, 'assets_list' ) ); } add_action( 'wp_enqueue_scripts', array( $this, 'wp_enqueue' ) , 10 ); add_action( 'admin_enqueue_scripts', array( $this, 'admin_enqueue' ) , 10 ); } public function wp_enqueue() { $this->enqueue(); } public function admin_enqueue( $hook ) { $this->enqueue( $hook, true ); } /** * Enqueue Scripts and Styles * * @since 2.0.0 * @access private * @return void */ private function enqueue( $hook = false, $admin = false ) { if ( $admin && !empty( self::$load_media_hooks ) && \in_array( $hook, self::$load_media_hooks ) ) wp_enqueue_media(); $loadassets = ( $admin ) ? self::$load_admin : self::$load; foreach ( $loadassets as $slug => $props ) { $iscurrenthook = ( ( empty( $props['hooks'] ) || !\is_array( $props['hooks'] ) ) ? true : \in_array( $hook, $props['hooks'] ) ); if ( $iscurrenthook && !empty( self::$assets[ $slug ] ) && is_array( self::$assets[ $slug ] ) ) { foreach ( self::$assets[ $slug ] as $type => $args ) { if ( $type == 'style' ) { $handle = !empty( $args['handle'] ) ? $args['handle'] : $slug; $src = !empty( $args['src'] ) ? $args['src'] : ''; $deps = !empty( $args['deps'] ) ? $args['deps'] : ''; $ver = !empty( $args['ver'] ) ? $args['ver'] : hootkit()->version; $media = !empty( $args['media'] ) ? $args['media'] : ''; if ( $src ) wp_enqueue_style( $handle, $src, $deps, $ver, $media ); else wp_enqueue_style( $slug ); } elseif ( $type == 'script' ) { $handle = !empty( $args['handle'] ) ? $args['handle'] : $slug; $src = !empty( $args['src'] ) ? $args['src'] : ''; $deps = !empty( $args['deps'] ) ? $args['deps'] : ''; $ver = !empty( $args['ver'] ) ? $args['ver'] : hootkit()->version; $footer = !empty( $args['in_footer'] ) ? $args['in_footer'] : ''; if ( $src ) wp_enqueue_script( $handle, $src, $deps, $ver, $footer ); else wp_enqueue_script( $slug ); if ( is_array( self::$localize ) && !empty( self::$localize[ $slug ] ) ) { foreach ( self::$localize[ $slug ] as $asset ) { $scriptdata = $this->localizedata( $asset ); if ( !empty( $scriptdata ) ) { $h = 'hootkitData' . ucfirst( str_replace([' ', '-'], '', $asset ) ); wp_localize_script( $handle, $h, $scriptdata ); } } } } } } } } /** * Localize data for asset */ private function localizedata( $asset ) { $data = array(); switch ( $asset ) { case 'font-awesome': $data['icons'] = hoot_enum_icons('icons'); $data['sections'] = hoot_enum_icons('sections'); break; default: break; } return $data; } /** * Add assets * * @since 2.0.3 * @access public * @return void */ public static function add_asset( $slug ) { self::$load[ $slug ] = array(); } public static function add_adminasset( $slug, $hooks = array(), $localize = array() ) { if ( $slug == 'wp-media' ) self::$load_media_hooks = array_merge( self::$load_media_hooks, $hooks ); else self::$load_admin[ $slug ] = array( 'hooks' => $hooks ); if ( !empty( $localize ) && is_array( $localize ) ) { foreach ( $localize as $asset ) { if ( !isset( self::$localize[ $slug ] ) || !is_array( self::$localize[ $slug ] ) ) self::$localize[ $slug ] = array(); if ( ! in_array( $asset, self::$localize[ $slug ] ) ) self::$localize[ $slug ][] = $asset; } } } /** * Get asset file uri * * @since 1.0.0 * @access public * @param string $location * @param string $type * @return string */ public static function get_uri( $location, $type ) { $dir = hootkit()->dir; $uri = hootkit()->uri; $location = str_replace( array( $dir, $uri ), '', $location ); // Return minified uri if not in debug mode and minified file is available if ( ( ! defined( 'HKIT_DEBUG' ) || ! HKIT_DEBUG ) && ( file_exists( $dir . "{$location}.min.{$type}" ) ) ) { return $uri . "{$location}.min.{$type}"; } // Return uri if file is available if ( file_exists( $dir . "{$location}.{$type}" ) ) return $uri . "{$location}.{$type}"; elseif ( file_exists( $dir . "{$location}.min.{$type}" ) ) return $uri . "{$location}.min.{$type}"; return ''; } /** * Array of available Scripts and Styles * >> after hootkit() is available (constructor executed) * * @since 2.0.0 * @access public * @return void */ public function assets_list() { self::$assets = array( /*** frotnend ***/ 'lightslider' => array( 'style' => array( 'handle' => 'lightSlider', 'src' => self::get_uri( 'assets/lightSlider', 'css' ), 'deps' => '', 'ver' => '1.1.2', 'media' => '', ), 'script' => array( 'handle' => 'jquery-lightSlider', 'src' => self::get_uri( 'assets/jquery.lightSlider', 'js' ), 'deps' => array( 'jquery' ), 'ver' => '1.1.2', 'in_footer' => true, ), ), 'font-awesome' => array( 'style' => array( 'src' => self::get_uri( 'assets/font-awesome', 'css' ), 'ver' => '5.0.10', ), ), 'circliful' => array( 'script' => array( 'handle' => 'jquery-circliful', 'src' => self::get_uri( 'assets/jquery.circliful', 'js' ), 'deps' => array( 'jquery' ), // ::=> Hootkit does not load Waypoints. It is upto the theme to deploy waypoints. 'ver' => '20160309', 'in_footer' => true, ), ), 'widgets' => array( 'script' => array( 'handle' => hootkit()->slug . '-widgets', 'src' => self::get_uri( 'assets/widgets', 'js' ), 'deps' => array( 'jquery' ), 'in_footer' => true, ), ), 'miscmods' => array( 'script' => array( 'handle' => hootkit()->slug . '-miscmods', 'src' => self::get_uri( 'assets/miscmods', 'js' ), 'deps' => array( 'jquery' ), 'in_footer' => true, ), ), /*** admin ***/ 'select2' => array( 'style' => array( 'src' => self::get_uri( 'admin/assets/select2', 'css' ), 'ver' => '4.0.13', ), 'script' => array( 'src' => self::get_uri( 'admin/assets/select2', 'js' ), 'deps' => array( 'jquery' ), 'ver' => '4.0.13', 'in_footer' => true, ), ), 'adminsettings' => array( 'style' => array( 'handle' => hootkit()->slug . '-adminsettings', 'src' => self::get_uri( 'admin/assets/settings', 'css' ), ), 'script' => array( 'handle' => hootkit()->slug . '-adminsettings', 'src' => self::get_uri( 'admin/assets/settings', 'js' ), 'deps' => array( 'jquery' ), ), ), 'adminsettingsplug' => array( 'style' => array( 'handle' => hootkit()->slug . '-adminsettings', 'src' => self::get_uri( 'admin/assets/settingsplugin', 'css' ), ), 'script' => array( 'handle' => hootkit()->slug . '-adminsettings', 'src' => self::get_uri( 'admin/assets/settingsplugin', 'js' ), 'deps' => array( 'jquery' ), ), ), 'adminwidgets' => array( 'style' => array( 'handle' => hootkit()->slug . '-adminwidgets', 'src' => self::get_uri( 'admin/assets/widgets', 'css' ), ), 'script' => array( 'handle' => hootkit()->slug . '-adminwidgets', 'src' => self::get_uri( 'admin/assets/widgets', 'js' ), 'deps' => array( 'jquery', 'select2', 'wp-color-picker' ), 'in_footer' => true, ), ), 'wp-color-picker' => array( 'style' => array(), 'script' => array(), ), /*** import ***/ 'hootkitimport' => array( 'style' => array( 'handle' => hootkit()->slug . '-import', 'src' => self::get_uri( 'misc/import/assets/hootkitimport', 'css' ), ), 'script' => array( 'handle' => hootkit()->slug . '-import', 'src' => self::get_uri( 'misc/import/assets/hootkitimport', 'js' ), 'deps' => array( 'jquery', 'jquery-confirm' ), 'in_footer' => true, ), ), 'jquery-confirm' => array( 'style' => array( 'src' => self::get_uri( 'misc/import/assets/jquery-confirm', 'css' ), 'ver' => '3.3.4', ), 'script' => array( 'src' => self::get_uri( 'misc/import/assets/jquery-confirm', 'js' ), 'deps' => array( 'jquery' ), 'ver' => '3.3.4', 'in_footer' => true, ), ), /*** customcode ***/ 'hootkitcode' => array( 'style' => array( 'handle' => hootkit()->slug . '-code', 'src' => self::get_uri( 'misc/code/assets/code', 'css' ), ), 'script' => array( 'handle' => hootkit()->slug . '-code', 'src' => self::get_uri( 'misc/code/assets/code', 'js' ), 'deps' => array( 'jquery', 'wp-theme-plugin-editor' ), 'in_footer' => true, ), ), ); } /** * Returns the instance */ public static function get_instance() { if ( ! isset( self::$instance ) ) { self::$instance = new self(); } return self::$instance; } } Helper_Assets::get_instance(); endif;PK`\@ functions-deprecated.phpnu[ __( 'Widgets', 'hootkit' ), 'setting-block' => __( 'Gutenberg Blocks', 'hootkit' ), 'setting-misc' => __( 'Miscellaneous', 'hootkit' ), 'setting-scgen' => __( 'Shortcode Generator', 'hootkit' ), // Settings Display sets filters 'sliders' => __( 'Sliders', 'hootkit' ), 'content' => __( 'Content', 'hootkit' ), 'post' => __( 'Post', 'hootkit' ), 'display' => __( 'Display', 'hootkit' ), 'woocom' => __( 'WooCommerce', 'hootkit' ), 'misc' => __( 'Misc. Features', 'hootkit' ), // Widgets 'widget-prefix' => __( 'HK > ', 'hootkit' ), // Manifest : modules [Settings, Widget Title] :: 'types' => 'widget' 'slider-image' => __( 'Slider Images', 'hootkit' ), 'carousel' => __( 'Carousel', 'hootkit' ), 'ticker' => __( 'Ticker', 'hootkit' ), 'image' => __( 'Slider Images', 'hootkit' ), 'postimage' => __( 'Posts Slider', 'hootkit' ), 'content-posts-blocks' => __( 'Posts Blocks', 'hootkit' ), 'post-grid' => __( 'Posts Grid', 'hootkit' ), 'post-list' => __( 'Posts List', 'hootkit' ), 'postcarousel' => __( 'Posts Carousel', 'hootkit' ), 'postlistcarousel' => __( 'Posts List Carousel', 'hootkit' ), 'ticker-posts' => __( 'Posts Ticker', 'hootkit' ), 'slider-postimage' => __( 'Posts Slider', 'hootkit' ), 'page-content' => __( 'Page Content', 'hootkit' ), 'announce' => __( 'Announce', 'hootkit' ), 'profile' => __( 'About/Profile', 'hootkit' ), 'cta' => __( 'Call To Action', 'hootkit' ), 'content-blocks' => __( 'Content Blocks', 'hootkit' ), 'content-grid' => __( 'Content Grid', 'hootkit' ), 'contact-info' => __( 'Contact Info', 'hootkit' ), 'icon-list' => __( 'Icon List', 'hootkit' ), 'notice' => __( 'Notice Box', 'hootkit' ), 'number-blocks' => __( 'Number Blocks', 'hootkit' ), 'tabs' => __( 'Tabs', 'hootkit' ), 'toggle' => __( 'Toggle', 'hootkit' ), 'vcards' => __( 'Vcards', 'hootkit' ), 'buttons' => __( 'Buttons', 'hootkit' ), 'cover-image' => __( 'Cover Image', 'hootkit' ), 'icon' => __( 'Icon', 'hootkit' ), 'social-icons' => __( 'Social Icons', 'hootkit' ), 'products-carticon' => __( 'Products Cart Icon', 'hootkit' ), 'content-products-blocks' => __( 'Products Blocks', 'hootkit' ), 'product-list' => __( 'Products List', 'hootkit' ), 'productcarousel' => __( 'Products Carousel', 'hootkit' ), 'productlistcarousel' => __( 'Products List Carousel', 'hootkit' ), 'products-ticker' => __( 'Products Ticker', 'hootkit' ), 'products-search' => __( 'Products Search', 'hootkit' ), // Manifest : modules [Settings] :: 'types' => 'misc' 'import' => __( 'Demo Import', 'hootkit' ), 'code' => __( 'Custom Code', 'hootkit' ), 'tools' => __( 'Tools (Import/Export)', 'hootkit' ), 'top-banner' => __( 'Top Banner', 'hootkit' ), 'shortcode-timer' => __( 'Timer (shortcode)', 'hootkit' ), 'fly-cart' => __( 'Offscreen WooCommerce Cart', 'hootkit' ), 'classic-widgets' => __( 'Classic Widgets', 'hootkit' ), 'widgets-as-sc' => __( 'Widgets as Shortcodes', 'hootkit' ), ) ); } /** * Returns the instance */ public static function get_instance() { if ( ! isset( self::$instance ) ) { self::$instance = new self(); } return self::$instance; } } endif;PK`\Y+Z!Z!template-functions.phpnu['; $code .= '
'; $code .= ''; $code .= '
'; $code = apply_filters( 'hootkit_get_skype_button', $code, $script, $id, $action ); $script = true; $id++; return $code; } endif; /** * Display the meta information HTML for single post/page * * @since 1.0.0 * @access public * @param array $args * @return void */ if ( !function_exists( 'hootkit_display_meta_info' ) ): function hootkit_display_meta_info( $args = array() ) { $args = wp_parse_args( apply_filters( 'hootkit_display_meta_info_args', $args ), array( 'display' => array( 'author', 'date', 'cats', 'tags', 'comments' ), 'context' => '', 'editlink' => true, 'wrapper' => '', 'wrapper_id' => '', 'wrapper_class' => '', 'empty' => '
', ) ); extract( $args, EXTR_SKIP ); $wrapper = preg_replace( '/[^a-z]/i', '', $wrapper ); // keeps letters only - remove everything else $wrapperend = ""; if ( !empty( $wrapper ) ) { $wrapper_id = ( !empty( $wrapper_id ) ) ? ' id="' . hoot_sanitize_html_classes( $wrapper_id ) . '"' : ''; $wrapper_class = ( !empty( $wrapper_class ) ) ? ' class="' . hoot_sanitize_html_classes( $wrapper_class ) . '"' : ''; $wrapper = "<{$wrapper}{$wrapper_id}{$wrapper_class}>"; } // Hoot Framework >=v3.0.1 if ( hoot_meta_info( $display, $context, true ) ) { echo $wrapper; hoot_display_meta_info( $display, $context, $editlink ); echo $wrapperend; } } endif; /** * Social Icons Widget - Icons * * @since 1.0.0 * @access public * @param array $attr * @param string $context * @return array */ if ( !function_exists( 'hootkit_attr_social_icons_icon' ) ): function hootkit_attr_social_icons_icon( $attr, $context ) { $attr['class'] = ( empty( $attr['class'] ) ) ? '' : $attr['class']; $attr['class'] .= ' social-icons-icon'; if ( ( is_string( $context ) && $context != 'fa-envelope' ) || ( is_array( $context ) && !empty( $context['icon'] ) && $context['icon'] != 'fa-envelope' ) ) $attr['target'] = '_blank'; return $attr; } endif; add_filter( 'hoot_attr_social-icons-icon', 'hootkit_attr_social_icons_icon', 10, 2 ); /** * Skip slider image from Jetpack's Lazy Load * Alternately, we can also add css class 'skip-lazy' to the images * * @since 1.0.0 * @access public * @param array $attr * @param string $context * @return array */ if ( !function_exists( 'hootkit_jetpack_lazy_load_exclude' ) ): function hootkit_jetpack_lazy_load_exclude( $classes ) { if ( !is_array( $classes ) ) $classes = array(); $classes[] = 'hootkitslide-img'; $classes[] = 'hootkitcarousel-img'; return $classes; } endif; /** * Common template function to display view all link in widgets * * @since 1.1.0 * @access public * @return string */ if ( !function_exists( 'hootkit_get_viewall' ) ): function hootkit_get_viewall( $echo = false, $post_type = 'post' ) { global $hoot_data; $html = ''; if ( !empty( $hoot_data->currentwidget['instance'] ) ) extract( $hoot_data->currentwidget['instance'], EXTR_SKIP ); if ( !empty( $viewall ) ) { switch ( $post_type ) { case 'product': $base_url = ''; if ( !empty( $category ) && is_array( $category ) && count( $category ) == 1 ) { // If more than 1 cat selected, show shop url $category[0] = (int)$category[0]; // convert string to integer else get_term_link gives error $base_url = get_term_link( $category[0], 'product_cat' ); $base_url = ( !is_wp_error( $base_url ) ) ? esc_url( $base_url ) : ''; } if ( empty( $base_url ) ) { $base_url = ( function_exists( 'wc_get_page_id' ) && wc_get_page_id( 'shop' ) > 0 ) ? // returns -1 when no shop page has been set yet esc_url( get_permalink( wc_get_page_id( 'shop' ) ) ) : esc_url( home_url('/') ); } break; default: if ( !empty( $category ) && is_array( $category ) && count( $category ) == 1 ) { // If more than 1 cat selected, show blog url $base_url = esc_url( get_category_link( $category[0] ) ); } elseif ( !empty( $category ) && !is_array( $category ) ) { // Pre 1.0.10 compatibility with 'select' type $base_url = esc_url( get_category_link( $category ) ); } else { $base_url = ( get_option( 'page_for_posts' ) ) ? esc_url( get_permalink( get_option( 'page_for_posts' ) ) ) : esc_url( home_url('/') ); } break; } $class = sanitize_html_class( 'viewall-' . $viewall ); $html = apply_filters( 'hootkit_get_viewall', '
' . __( 'View All', 'hootkit' ) . '
', $viewall, $class, $base_url ); } if ( $echo ) echo $html; else return $html; } endif; PKa\E[z3z3class-config.phpnu[maybe_restructure( $themeconfig ); self::$config = wp_parse_args( $themeconfig, self::defaults() ); $this->sanitizeconfig(); $this->setactivemodules(); do_action( 'hootkit_config_registered' ); } } /** * Restructure config array from theme if needed */ private function maybe_restructure( $themeconfig ) { if ( !empty( $themeconfig['modules'] ) ) { if ( !\is_array( $themeconfig['modules'] ) ) { unset( $themeconfig['modules'] ); } else { // 1. Rename slider slugs if ( !empty( $themeconfig['modules']['sliders'] ) && is_array( $themeconfig['modules']['sliders'] ) ) { foreach ( $themeconfig['modules']['sliders'] as $slkey => $name ) { if ( \in_array( $name, array( 'image', 'postimage' ) ) ) $themeconfig['modules']['sliders'][$slkey] = 'slider-' . $name; } } // 2. Restructure to new format $modules = array(); foreach ( Manifest::$modtypes as $type ) { $modules[ $type ] = isset( $themeconfig['modules'][ $type ] ) && is_array( $themeconfig['modules'][ $type ] ) ? $themeconfig['modules'][ $type ] : array(); } if ( isset( $modules['widget'] ) && is_array( $modules['widget'] ) ) { foreach ( array( 'widgets', 'sliders', 'woocommerce' ) as $oldkeys ) { if ( isset( $themeconfig['modules'][ $oldkeys ] ) && is_array( $themeconfig['modules'][ $oldkeys ] ) ) { $modules['widget'] = array_merge( $modules['widget'], $themeconfig['modules'][ $oldkeys ] ); } } } $themeconfig['modules'] = $modules; } } $themeconfig['supports_version'] = isset( $themeconfig['supports_version'] ) ? ( $themeconfig['supports_version'] === 'v2' ? array( 'widgets-v2' ) : ( \is_array( $themeconfig['supports_version'] ) ? $themeconfig['supports_version'] : array() ) ) : array(); if ( !defined( 'HOOT_PREMIUM_VERSION' ) && empty( $themeconfig['theme-filters'] ) ) { $slug = false; if ( function_exists( 'olius_abouttag' ) ) $slug = 'olius'; elseif ( function_exists( 'strute_abouttag' ) ) $slug = 'strute'; elseif ( function_exists( 'nirvata_abouttag' ) ) $slug = 'nirvata'; if ( $slug ) { $themeconfig['theme-filters'] = array( 'fnspace' => $slug, 'abouttags' => array( 'fullshot' ), 'customizer' => array( 'pattern_pnote', 'sblayoutpnote', 'colorspnote', 'typopnote', 'archivetypepnote', 'singlemetapnote', 'article_background_pnote', 'article_maxwidth_pnote', 'topann_content', 'header_image_title', 'header_image_subtitle', 'header_image_text' ), ); } } return $themeconfig; } /** * Sanitize config values from theme and/or the default config values */ public function sanitizeconfig() { /* * Sanitize Theme Supported Modules against HootKit manifest modules * Arrange in order of HK manifest modules * Add woocommerce modules only if plugin is active - Else add to 'wc-inactive' */ self::$config['wc-inactive'] = Manifest::$modtypesarray; $wc = class_exists( 'WooCommerce' ); $store = Manifest::$modtypesarray; if ( !empty( self::$config['modules'] ) && \is_array( self::$config['modules'] ) ) { foreach ( self::$config['modules'] as $type => $thememods ) { if ( is_array( $thememods ) ) { // Arrange in order of HK manifest modules $hkmodules = hootkit()->get_mfmods_oftype( $type ); foreach ( $hkmodules as $modid => $modatts ) { if ( \in_array( $modid, $thememods ) ) { // If this is a WC module - add to 'modules' only if WC is available // Else add to 'wc-inactive' if ( isset( $modatts['requires'] ) && \in_array( 'woocommerce', $modatts['requires'] ) ) { if ( $wc ) { $store[ $type ][] = $modid; } else { self::$config['wc-inactive'][ $type ][] = $modid; } } else { $store[ $type ][] = $modid; } } } } } } self::$config['modules'] = $store; /* Sanitize Theme Supported Premium Modules against HootKit Manifest modules */ if ( !empty( self::$config['premium'] ) && \is_array( self::$config['premium'] ) ) { $hkmodules = hootkit()->get_mfmods_oftype( 'all', true ); foreach ( self::$config['premium'] as $modkey => $modid ) { if ( ! in_array( $modid, $hkmodules ) ) unset( self::$config['premium'][$modkey] ); } } /* Sanitize Theme specific supported settings against HootKit supported settings */ if ( !empty( self::$config['supports'] ) && \is_array( self::$config['supports'] ) ) { $hksupports = hootkit()->get_manifest( 'supports' ); foreach ( self::$config['supports'] as $skey => $support ) { if ( !in_array( $support, $hksupports ) ) { unset( self::$config['supports'][ $skey ] ); } } } /* Sanitize Theme specific dashboard plugs against HootKit supported dashboard plugs */ $store = hootkit()->get_manifest( 'dashboard' ); if ( !empty( self::$config['dashboard'] ) && \is_array( self::$config['dashboard'] ) ) { foreach ( $store as $key => $value ) { if ( isset( self::$config['dashboard'][ $key ] ) && is_scalar( self::$config['dashboard'][ $key ] ) ) { $store[ $key ] = self::$config['dashboard'][ $key ]; } } /* Basic dependency checks for dashboard */ $store['dashmenu'] = !empty( $store['dashmenu'] ) && is_string( $store['dashmenu'] ) && !empty( $store['aboutfilter'] ) && is_string( $store['aboutfilter'] ) ? $store['dashmenu'] : ''; $hasrequired = ( function_exists( 'hoot_dashboard' ) && !empty( $store['tabfilter'] ) && is_string( $store['tabfilter'] ) && !empty( $store['tabaction'] ) && is_string( $store['tabaction'] ) ); foreach ( array( 'settings', 'code', 'tools', 'import' ) as $checkid ) { $store[ $checkid ] = $hasrequired && !empty( $store[ $checkid ] ) && is_string( $store[ $checkid ] ) ? $store[ $checkid ] : ''; } $store['import'] = !empty( $store['import'] ) && is_string( $store['import'] ) && !empty( $store['import_id'] ) && is_string( $store['import_id'] ) ? $store['import'] : ''; } self::$config['dashboard'] = $store; } /** * Set User Activated modules * * @since 1.1.0 */ public function setactivemodules() { $dbvalue = get_option( 'hootkit-activemods', false ); $dbvalue = \is_array( $dbvalue ) && !empty( $dbvalue ) ? $dbvalue : array(); $disabled = !empty( $dbvalue[ 'disabled' ] ) && \is_array( $dbvalue[ 'disabled' ] ) ? $dbvalue[ 'disabled' ] : array(); $store = Manifest::$modtypesarray; foreach ( $store as $type => $arr ) { // User has not modified any default settings yet // Hence set default active modules => all deactive if (bool) false ; all active if empty if ( empty( $dbvalue ) ) { $store[ $type ] = hootkit()->get_config( 'modules', $type ); $themeactivemods = self::$config['activemods']; if ( $themeactivemods === false ) { $store[ $type ] = array(); } elseif ( is_array( $themeactivemods ) && isset( $themeactivemods[ $type ] ) ) { if ( $themeactivemods[ $type ] === false ) { $store[ $type ] = array(); } elseif ( !empty( $themeactivemods[ $type ] ) && \is_array( $themeactivemods[ $type ] ) ) { $store[ $type ] = $themeactivemods[ $type ]; } } } else { if ( \in_array( $type, $disabled ) ) { $store[ $type ] = array(); } elseif ( !empty( $dbvalue[ $type ] ) && \is_array( $dbvalue[ $type ] ) ) { foreach ( hootkit()->get_config( 'modules', $type ) as $check ) { if ( !isset( $dbvalue[ $type ][ $check ] ) || $dbvalue[ $type ][ $check ] == 'yes' ) $store[ $type ][] = $check; } } else { $store[ $type ] = hootkit()->get_config( 'modules', $type ); } } } self::$config['activemods'] = apply_filters( 'hootkit_active_modules', $store ); /* * Sanitize Active Modules against HootKit manifest modules * Arrange in order of HK manifest modules * Add woocommerce modules only if plugin is active (Ex: User saves settings with WC active; later disabled WC) */ $wc = class_exists( 'WooCommerce' ); $store = Manifest::$modtypesarray; foreach ( $store as $type => $arr ) { if ( !empty( self::$config['activemods'][ $type ] ) ) { // Arrange in order of HK manifest modules $hkmodules = hootkit()->get_mfmods_oftype( $type ); foreach ( $hkmodules as $modid => $modatts ) { if ( \in_array( $modid, self::$config['activemods'][ $type ] ) ) { // If this is a WC module - add to 'activemods' only if WC is available // Else skip it if ( isset( $modatts['requires'] ) && \in_array( 'woocommerce', $modatts['requires'] ) ) { if ( $wc ) { $store[ $type ][] = $modid; } } else { $store[ $type ][] = $modid; } } } } } self::$config['activemods'] = $store; self::$config['disabledmodtypes'] = $disabled; } /** * Config Structure (Defaults) */ public static function defaults() { return array( /** Required - Themes should register these for best performance **/ // Theme Supported Modules - @see 'mods' for available list 'modules' => array( 'widget' => array(), 'block' => array(), 'misc' => array(), ), // Theme supports - @see 'mods' for available list 'supports' => array(), // Version Support 'supports_version' => array(), // Premium modules list 'premium' => array(), // Theme filters to be applied [fnspace,abouttags,customizer] 'theme-filters' => array(), /** Optional / Plugin Generated */ // Extracted list from 'modules' if WC is inactive 'wc-inactive' => array( 'widget' => array(), 'block' => array(), 'misc' => array(), ), // Active Modules (user settings) // Optional: Themes can pass an array here to set them as defaults (before user settings saved) // Set to false for all deactive by default. Anything else is all active by default. 'activemods' => array( 'widget' => array(), 'block' => array(), 'misc' => array(), ), // Disabled Mod Types (user settings). 'disabledmodtypes' => array(), // Default Styles 'presets' => array( 'white' => __( 'White', 'hootkit' ), 'black' => __( 'Black', 'hootkit' ), 'brown' => __( 'Brown', 'hootkit' ), 'blue' => __( 'Blue', 'hootkit' ), 'cyan' => __( 'Cyan', 'hootkit' ), 'green' => __( 'Green', 'hootkit' ), 'yellow' => __( 'Yellow', 'hootkit' ), 'amber' => __( 'Amber', 'hootkit' ), 'orange' => __( 'Orange', 'hootkit' ), 'red' => __( 'Red', 'hootkit' ), 'pink' => __( 'Pink', 'hootkit' ), ), // Default Styles 'presetcombo' => array( 'white' => __( 'White', 'hootkit' ), 'black' => __( 'Black', 'hootkit' ), 'brown' => __( 'Brown', 'hootkit' ), 'brownbright' => __( 'Brown (Bright)', 'hootkit' ), 'blue' => __( 'Blue', 'hootkit' ), 'bluebright' => __( 'Blue (Bright)', 'hootkit' ), 'cyan' => __( 'Cyan', 'hootkit' ), 'cyanbright' => __( 'Cyan (Bright)', 'hootkit' ), 'green' => __( 'Green', 'hootkit' ), 'greenbright' => __( 'Green (Bright)', 'hootkit' ), 'yellow' => __( 'Yellow', 'hootkit' ), 'yellowbright' => __( 'Yellow (Bright)', 'hootkit' ), 'amber' => __( 'Amber', 'hootkit' ), 'amberbright' => __( 'Amber (Bright)', 'hootkit' ), 'orange' => __( 'Orange', 'hootkit' ), 'orangebright' => __( 'Orange (Bright)', 'hootkit' ), 'red' => __( 'Red', 'hootkit' ), 'redbright' => __( 'Red (Bright)', 'hootkit' ), 'pink' => __( 'Pink', 'hootkit' ), 'pinkbright' => __( 'Pink (Bright)', 'hootkit' ), ), ); } /** * Returns the instance */ public static function get_instance() { if ( ! isset( self::$instance ) ) { self::$instance = new self(); } return self::$instance; } } HKConfig::get_instance(); endif;PKa\J--class-manifest.phpnu[ $atts ) if ( ( $key = array_search( 'widget', $atts['types'] ) ) !== false ) { unset( self::$manifest['modules'][ $mod ]['types'][ $key ] ); if ( empty( self::$manifest['modules'][ $mod ]['types'] ) ) unset( self::$manifest['modules'][ $mod ] ); } } /** * Default Module Atts */ public static function origin( $id='' ) { if ( $id === 'modtypes' ) return array( 'widget', 'block', 'misc' ); return array( 'supports' => array( 'cta-styles', 'content-blocks-style5', 'content-blocks-style6', 'content-blocks-iconoptions', 'slider-styles', 'slider-style3', 'slider-subtitles', 'widget-subtitle', 'social-icons-altcolor', 'social-icons-altcoloraccent', 'social-icons-shape', 'social-icons-align', 'list-evenspacecol', 'cbox-evenspacecol', 'imgbg-cssvars', 'content-blocks-emptyblocks', 'content-blocks-style5-nojs', 'linktarget', 'vcard-imgstyles', ), 'dashboard' => array( 'dashmenu' => '', 'aboutfilter' => '', 'tabfilter' => '', 'tabaction' => '', 'settings' => '', 'code' => '', 'tools' => '', 'import' => '', 'import_id' => '' ), 'modules' => array( // TYPE: Widgets DISPLAY SET: Sliders 'slider-image' => array( 'types' => array( 'widget' ), // Module's Type(s) available 'displaysets' => array( 'sliders' ), // Settings Set 'requires' => array(), // Required plugins/components 'assets' => array( 'lightslider', 'font-awesome' ), // Assets required 'adminassets' => array( 'wp-media' ), // Admin assets required ), 'carousel' => array( 'types' => array( 'widget' ), 'displaysets' => array( 'sliders' ), 'assets' => array( 'lightslider' ), // 'font-awesome' 'adminassets' => array( 'wp-media' ), ), 'ticker' => array( 'types' => array( 'widget' ), 'displaysets' => array( 'sliders' ), 'assets' => array( 'font-awesome' ), 'adminassets' => array( 'font-awesome' ), 'localize' => array( 'font-awesome' => 'adminwidgets' ), ), // TYPE: Widgets DISPLAY SET: Posts 'content-posts-blocks' => array( 'types' => array( 'widget' ), 'displaysets' => array( 'post' ), 'adminassets' => array( 'select2' ), ), 'post-grid' => array( 'types' => array( 'widget' ), 'displaysets' => array( 'post' ), 'assets' => array( 'lightslider' ), // 'font-awesome' 'adminassets' => array( 'select2' ), ), 'post-list' => array( 'types' => array( 'widget' ), 'displaysets' => array( 'post' ), 'adminassets' => array( 'select2' ), ), 'postcarousel' => array( 'types' => array( 'widget' ), 'displaysets' => array( 'sliders', 'post' ), 'assets' => array( 'lightslider' ), // 'font-awesome' 'adminassets' => array( 'select2' ), ), 'postlistcarousel' => array( 'types' => array( 'widget' ), 'displaysets' => array( 'sliders', 'post' ), 'assets' => array( 'lightslider' ), // 'font-awesome' 'adminassets' => array( 'select2' ), ), 'ticker-posts' => array( 'types' => array( 'widget' ), 'displaysets' => array( 'sliders', 'post' ), 'adminassets' => array( 'select2' ), ), 'slider-postimage' => array( 'types' => array( 'widget' ), 'displaysets' => array( 'sliders', 'post' ), 'assets' => array( 'lightslider' ), // 'font-awesome' 'adminassets' => array( 'select2' ), ), // TYPE: Widgets DISPLAY SET: Page 'page-content' => array( 'types' => array( 'widget' ), 'displaysets' => array( 'post' ), 'adminassets' => array( 'select2' ), ), // TYPE: Widgets DISPLAY SET: Content 'announce' => array( 'types' => array( 'widget' ), 'displaysets' => array( 'content' ), 'assets' => array( 'font-awesome' ), 'adminassets' => array( 'font-awesome' ), 'localize' => array( 'font-awesome' => 'adminwidgets' ), ), 'profile' => array( 'types' => array( 'widget' ), 'displaysets' => array( 'content' ), 'adminassets' => array( 'wp-media' ), ), 'cta' => array( 'types' => array( 'widget' ), 'displaysets' => array( 'content' ), ), 'content-blocks' => array( 'types' => array( 'widget' ), 'displaysets' => array( 'content' ), 'assets' => array( 'font-awesome' ), 'adminassets' => array( 'font-awesome', 'wp-media' ), 'localize' => array( 'font-awesome' => 'adminwidgets' ), ), 'content-grid' => array( 'types' => array( 'widget' ), 'displaysets' => array( 'content' ), 'assets' => array( 'lightslider' ), // 'font-awesome' 'adminassets' => array( 'wp-media' ), ), 'contact-info' => array( 'types' => array( 'widget' ), 'displaysets' => array( 'content' ), ), 'icon-list' => array( 'types' => array( 'widget' ), 'displaysets' => array( 'content' ), 'assets' => array( 'font-awesome' ), 'adminassets' => array( 'font-awesome' ), 'localize' => array( 'font-awesome' => 'adminwidgets' ), ), 'notice' => array( 'types' => array( 'widget' ), 'displaysets' => array( 'content' ), 'assets' => array( 'font-awesome' ), 'adminassets' => array( 'font-awesome' ), 'localize' => array( 'font-awesome' => 'adminwidgets' ), ), 'number-blocks' => array( 'types' => array( 'widget' ), 'displaysets' => array( 'content' ), 'assets' => array( 'circliful' ), ), 'tabs' => array( 'types' => array( 'widget' ), 'displaysets' => array( 'content' ), ), 'toggle' => array( 'types' => array( 'widget' ), 'displaysets' => array( 'content' ), ), 'vcards' => array( 'types' => array( 'widget' ), 'displaysets' => array( 'content' ), 'adminassets' => array( 'wp-media' ), ), // TYPE: Widgets DISPLAY SET: Display 'buttons' => array( 'types' => array( 'widget' ), 'displaysets' => array( 'display' ), ), 'cover-image' => array( 'types' => array( 'widget' ), 'displaysets' => array( 'display' ), 'assets' => array( 'lightslider' ), // 'font-awesome' 'adminassets' => array( 'wp-media' ), ), 'icon' => array( 'types' => array( 'widget' ), 'displaysets' => array( 'display' ), 'assets' => array( 'font-awesome' ), 'adminassets' => array( 'font-awesome' ), 'localize' => array( 'font-awesome' => 'adminwidgets' ), ), 'social-icons' => array( 'types' => array( 'widget' ), 'displaysets' => array( 'display' ), ), // TYPE: Widgets DISPLAY SET: WooCom 'products-carticon' => array( 'types' => array( 'widget' ), 'displaysets' => array( 'woocom' ), 'requires' => array( 'woocommerce' ), 'assets' => array( 'font-awesome' ), 'adminassets' => array( 'font-awesome' ), // 'localize' => array( 'font-awesome' => 'adminwidgets' ), ), 'content-products-blocks' => array( 'types' => array( 'widget' ), 'displaysets' => array( 'woocom' ), 'requires' => array( 'woocommerce' ), 'adminassets' => array( 'select2' ), ), 'product-list' => array( 'types' => array( 'widget' ), 'displaysets' => array( 'woocom' ), 'requires' => array( 'woocommerce' ), 'adminassets' => array( 'select2' ), ), 'productcarousel' => array( 'types' => array( 'widget' ), 'displaysets' => array( 'sliders', 'woocom' ), 'requires' => array( 'woocommerce' ), 'assets' => array( 'lightslider' ), // 'font-awesome' 'adminassets' => array( 'select2' ), ), 'productlistcarousel' => array( 'types' => array( 'widget' ), 'displaysets' => array( 'sliders', 'woocom' ), 'requires' => array( 'woocommerce' ), 'assets' => array( 'lightslider' ), // 'font-awesome' 'adminassets' => array( 'select2' ), ), 'products-ticker' => array( 'types' => array( 'widget' ), 'displaysets' => array( 'sliders', 'woocom' ), 'requires' => array( 'woocommerce' ), 'adminassets' => array( 'select2' ), ), 'products-search' => array( 'types' => array( 'widget' ), 'displaysets' => array( 'woocom' ), 'requires' => array( 'woocommerce' ), ), // TYPE: Misc DISPLAY SET: Misc 'import' => array( 'types' => array( 'misc' ), 'displaysets' => array( 'content' ), 'refreshadmin'=> true, ), 'code' => array( 'types' => array( 'misc' ), 'displaysets' => array( 'content' ), 'refreshadmin'=> true, ), 'tools' => array( 'types' => array( 'misc' ), 'displaysets' => array( 'content' ), 'refreshadmin'=> true, ), 'top-banner' => array( 'types' => array( 'misc' ), 'displaysets' => array( 'content' ), 'requires' => array( 'customizer' ), ), 'shortcode-timer' => array( 'types' => array( 'misc' ), 'displaysets' => array( 'misc' ), ), 'fly-cart' => array( 'types' => array( 'misc' ), 'displaysets' => array( 'woocom' ), 'requires' => array( 'woocommerce', 'customizer' ), 'assets' => array( 'font-awesome' ), // 'adminassets' => array( 'font-awesome' ), // @todo: load font-awesome in customizer ), 'classic-widgets' => array( 'types' => array( 'misc' ), 'displaysets' => array( 'misc' ), ), 'widgets-as-sc' => array( 'types' => array( 'misc' ), 'displaysets' => array( 'misc' ), ), ), ); } /** * Returns the instance */ public static function get_instance() { if ( ! isset( self::$instance ) ) { self::$instance = new self(); } return self::$instance; } } Manifest::get_instance(); endif; PK`\c2jclass-themes.phpnu[PK`\"in n functions.phpnu[PK`\ MZ))x(class-assets.phpnu[PK`\@ mRfunctions-deprecated.phpnu[PK`\S!amlclass-strings.phpnu[PK`\Y+Z!Z!template-functions.phpnu[PKa\E[z3z38class-config.phpnu[PKa\J--class-manifest.phpnu[PK/