if (!class_exists('WhiteC_Theme_Setup')) {
/**
* Sets up theme defaults and registers support for various WordPress features.
*
* @since 1.0.0
*/
class WhiteC_Theme_Setup
{
/**
* A reference to an instance of this class.
*
* @since 1.0.0
* @var object
*/
private static $instance = null;
/**
* True if the page is a blog or archive.
*
* @since 1.0.0
* @var Boolean
*/
private $is_blog = false;
/**
* Sidebar position.
*
* @since 1.0.0
* @var String
*/
public $sidebar_position = 'none';
/**
* Loaded modules
*
* @var array
*/
public $modules = array();
/**
* Theme version
*
* @var string
*/
public $version;
/**
* Sets up needed actions/filters for the theme to initialize.
*
* @since 1.0.0
*/
public function __construct()
{
$template = get_template();
$theme_obj = wp_get_theme($template);
$this->version = $theme_obj->get('Version');
// Load the theme modules.
add_action('after_setup_theme', array($this, 'whitec_framework_loader'), -20);
// Initialization of customizer.
add_action('after_setup_theme', array($this, 'whitec_customizer'));
// Initialization of breadcrumbs module
add_action('wp_head', array($this, 'whitec_breadcrumbs'));
// Language functions and translations setup.
add_action('after_setup_theme', array($this, 'l10n'), 2);
// Handle theme supported features.
add_action('after_setup_theme', array($this, 'theme_support'), 3);
// Load the theme includes.
add_action('after_setup_theme', array($this, 'includes'), 4);
// Load theme modules.
add_action('after_setup_theme', array($this, 'load_modules'), 5);
// Init properties.
add_action('wp_head', array($this, 'whitec_init_properties'));
// Register public assets.
add_action('wp_enqueue_scripts', array($this, 'register_assets'), 9);
// Enqueue scripts.
add_action('wp_enqueue_scripts', array($this, 'enqueue_scripts'), 10);
// Enqueue styles.
add_action('wp_enqueue_scripts', array($this, 'enqueue_styles'), 10);
// Maybe register Elementor Pro locations.
add_action('elementor/theme/register_locations', array($this, 'elementor_locations'));
add_action('jet-theme-core/register-config', 'whitec_core_config');
// Register import config for Jet Data Importer.
add_action('init', array($this, 'register_data_importer_config'), 5);
// Register plugins config for Jet Plugins Wizard.
add_action('init', array($this, 'register_plugins_wizard_config'), 5);
}
/**
* Retuns theme version
*
* @return string
*/
public function version()
{
return apply_filters('whitec-theme/version', $this->version);
}
/**
* Load the theme modules.
*
* @since 1.0.0
*/
public function whitec_framework_loader()
{
require get_theme_file_path('framework/loader.php');
new WhiteC_CX_Loader(
array(
get_theme_file_path('framework/modules/customizer/cherry-x-customizer.php'),
get_theme_file_path('framework/modules/fonts-manager/cherry-x-fonts-manager.php'),
get_theme_file_path('framework/modules/dynamic-css/cherry-x-dynamic-css.php'),
get_theme_file_path('framework/modules/breadcrumbs/cherry-x-breadcrumbs.php'),
)
);
}
/**
* Run initialization of customizer.
*
* @since 1.0.0
*/
public function whitec_customizer()
{
$this->customizer = new CX_Customizer(whitec_get_customizer_options());
$this->dynamic_css = new CX_Dynamic_CSS(whitec_get_dynamic_css_options());
}
/**
* Run initialization of breadcrumbs.
*
* @since 1.0.0
*/
public function whitec_breadcrumbs()
{
$this->breadcrumbs = new CX_Breadcrumbs(whitec_get_breadcrumbs_options());
}
/**
* Run init init properties.
*
* @since 1.0.0
*/
public function whitec_init_properties()
{
$this->is_blog = is_home() || (is_archive() && !is_tax() && !is_post_type_archive()) ? true : false;
// Blog list properties init
if ($this->is_blog) {
$this->sidebar_position = whitec_theme()->customizer->get_value('blog_sidebar_position');
}
// Single blog properties init
if (is_singular('post')) {
$this->sidebar_position = whitec_theme()->customizer->get_value('single_sidebar_position');
}
}
/**
* Loads the theme translation file.
*
* @since 1.0.0
*/
public function l10n()
{
/*
* Make theme available for translation.
* Translations can be filed in the /languages/ directory.
*/
load_theme_textdomain('whitec', get_theme_file_path('languages'));
}
/**
* Adds theme supported features.
*
* @since 1.0.0
*/
public function theme_support()
{
global $content_width;
if (!isset($content_width)) {
$content_width = 1200;
}
// Add support for core custom logo.
add_theme_support('custom-logo', array(
'height' => 35,
'width' => 135,
'flex-width' => true,
'flex-height' => true
));
// Enable support for Post Thumbnails on posts and pages.
add_theme_support('post-thumbnails');
// Enable HTML5 markup structure.
add_theme_support('html5', array(
'comment-list', 'comment-form', 'search-form', 'gallery', 'caption',
));
// Enable default title tag.
add_theme_support('title-tag');
// Enable post formats.
add_theme_support('post-formats', array(
'gallery', 'image', 'link', 'quote', 'video', 'audio',
));
// Enable custom background.
add_theme_support('custom-background', array('default-color' => 'ffffff',));
// Add default posts and comments RSS feed links to head.
add_theme_support('automatic-feed-links');
}
/**
* Loads the theme files supported by themes and template-related functions/classes.
*
* @since 1.0.0
*/
public function includes()
{
/**
* Configurations.
*/
require_once get_theme_file_path('config/layout.php');
require_once get_theme_file_path('config/menus.php');
require_once get_theme_file_path('config/sidebars.php');
require_once get_theme_file_path('config/modules.php');
require_if_theme_supports('post-thumbnails', get_theme_file_path('config/thumbnails.php'));
require_once get_theme_file_path('inc/modules/base.php');
/**
* Classes.
*/
require_once get_theme_file_path('inc/classes/class-widget-area.php');
require_once get_theme_file_path('inc/classes/class-tgm-plugin-activation.php');
/**
* Functions.
*/
require_once get_theme_file_path('inc/template-tags.php');
require_once get_theme_file_path('inc/template-menu.php');
require_once get_theme_file_path('inc/template-meta.php');
require_once get_theme_file_path('inc/template-comment.php');
require_once get_theme_file_path('inc/template-related-posts.php');
require_once get_theme_file_path('inc/extras.php');
require_once get_theme_file_path('inc/customizer.php');
require_once get_theme_file_path('inc/breadcrumbs.php');
require_once get_theme_file_path('inc/context.php');
require_once get_theme_file_path('inc/hooks.php');
require_once get_theme_file_path('inc/register-plugins.php');
/**
* Hooks.
*/
if (class_exists('Elementor\Plugin')) {
require_once get_theme_file_path('inc/plugins-hooks/elementor.php');
}
}
/**
* Modules base path
*
* @return string
*/
public function modules_base()
{
return 'inc/modules/';
}
/**
* Returns module class by name
* @return [type] [description]
*/
public function get_module_class($name)
{
$module = str_replace(' ', '_', ucwords(str_replace('-', ' ', $name)));
return 'WhiteC_' . $module . '_Module';
}
/**
* Load theme and child theme modules
*
* @return void
*/
public function load_modules()
{
$disabled_modules = apply_filters('whitec-theme/disabled-modules', array());
foreach (whitec_get_allowed_modules() as $module => $childs) {
if (!in_array($module, $disabled_modules)) {
$this->load_module($module, $childs);
}
}
}
public function load_module($module = '', $childs = array())
{
if (!file_exists(get_theme_file_path($this->modules_base() . $module . '/module.php'))) {
return;
}
require_once get_theme_file_path($this->modules_base() . $module . '/module.php');
$class = $this->get_module_class($module);
if (!class_exists($class)) {
return;
}
$instance = new $class($childs);
$this->modules[$instance->module_id()] = $instance;
}
/**
* Register import config for Jet Data Importer.
*
* @since 1.0.0
*/
public function register_data_importer_config()
{
if (!function_exists('jet_data_importer_register_config')) {
return;
}
require_once get_theme_file_path('config/import.php');
/**
* @var array $config Defined in config file.
*/
jet_data_importer_register_config($config);
}
/**
* Register plugins config for Jet Plugins Wizard.
*
* @since 1.0.0
*/
public function register_plugins_wizard_config()
{
if (!function_exists('jet_plugins_wizard_register_config')) {
return;
}
if (!is_admin()) {
return;
}
require_once get_theme_file_path('config/plugins-wizard.php');
/**
* @var array $config Defined in config file.
*/
jet_plugins_wizard_register_config($config);
}
/**
* Register assets.
*
* @since 1.0.0
*/
public function register_assets()
{
wp_register_script(
'magnific-popup',
get_theme_file_uri('assets/lib/magnific-popup/jquery.magnific-popup.min.js'),
array('jquery'),
'1.1.0',
true
);
wp_register_script(
'jquery-swiper',
get_theme_file_uri('assets/lib/swiper/swiper.jquery.min.js'),
array('jquery'),
'4.3.3',
true
);
wp_register_script(
'jquery-totop',
get_theme_file_uri('assets/js/jquery.ui.totop.min.js'),
array('jquery'),
'1.2.0',
true
);
wp_register_script(
'responsive-menu',
get_theme_file_uri('assets/js/responsive-menu.js'),
array(),
'1.0.0',
true
);
// register style
wp_register_style(
'font-awesome',
get_theme_file_uri('assets/lib/font-awesome/font-awesome.min.css'),
array(),
'4.7.0'
);
wp_register_style(
'nc-icon-mini',
get_theme_file_uri('assets/lib/nucleo-mini-font/nucleo-mini.css'),
array(),
'1.0.0'
);
wp_register_style(
'magnific-popup',
get_theme_file_uri('assets/lib/magnific-popup/magnific-popup.min.css'),
array(),
'1.1.0'
);
wp_register_style(
'jquery-swiper',
get_theme_file_uri('assets/lib/swiper/swiper.min.css'),
array(),
'4.3.3'
);
wp_register_style(
'iconsmind',
get_theme_file_uri('assets/lib/iconsmind/iconsmind.min.css'),
array(),
'1.0.0'
);
}
/**
* Enqueue scripts.
*
* @since 1.0.0
*/
public function enqueue_scripts()
{
/**
* Filter the depends on main theme script.
*
* @since 1.0.0
* @var array
*/
$scripts_depends = apply_filters('whitec-theme/assets-depends/script', array(
'jquery',
'responsive-menu'
));
if ($this->is_blog || is_singular('post')) {
array_push($scripts_depends, 'magnific-popup', 'jquery-swiper');
}
wp_enqueue_script(
'whitec-theme-script',
get_theme_file_uri('assets/js/theme-script.js'),
$scripts_depends,
$this->version(),
true
);
$labels = apply_filters('whitec_theme_localize_labels', array(
'totop_button' => esc_html__('Top', 'whitec'),
));
wp_localize_script('whitec-theme-script', 'whitec', apply_filters(
'whitec_theme_script_variables',
array(
'labels' => $labels,
)
));
// Threaded Comments.
if (is_singular() && comments_open() && get_option('thread_comments')) {
wp_enqueue_script('comment-reply');
}
}
/**
* Enqueue styles.
*
* @since 1.0.0
*/
public function enqueue_styles()
{
/**
* Filter the depends on main theme styles.
*
* @since 1.0.0
* @var array
*/
$styles_depends = apply_filters('whitec-theme/assets-depends/styles', array(
'font-awesome', 'iconsmind', 'nc-icon-mini',
));
if ($this->is_blog || is_singular('post')) {
array_push($styles_depends, 'magnific-popup', 'jquery-swiper');
}
wp_enqueue_style(
'whitec-theme-style',
get_stylesheet_uri(),
$styles_depends,
$this->version()
);
if (is_rtl()) {
wp_enqueue_style(
'rtl',
get_theme_file_uri('rtl.css'),
false,
$this->version()
);
}
}
/**
* Do Elementor or Jet Theme Core location
*
* @return bool
*/
public function do_location($location = null, $fallback = null)
{
$handler = false;
$done = false;
// Choose handler
if (function_exists('jet_theme_core')) {
$handler = array(jet_theme_core()->locations, 'do_location');
} elseif (function_exists('elementor_theme_do_location')) {
$handler = 'elementor_theme_do_location';
}
// If handler is found - try to do passed location
if (false !== $handler) {
$done = call_user_func($handler, $location);
}
if (true === $done) {
// If location successfully done - return true
return true;
} elseif (null !== $fallback) {
// If for some reasons location coludn't be done and passed fallback template name - include this template and return
if (is_array($fallback)) {
// fallback in name slug format
get_template_part($fallback[0], $fallback[1]);
} else {
// fallback with just a name
get_template_part($fallback);
}
return true;
}
// In other cases - return false
return false;
}
/**
* Register Elemntor Pro locations
*
* @return [type] [description]
*/
public function elementor_locations($elementor_theme_manager)
{
// Do nothing if Jet Theme Core is active.
if (function_exists('jet_theme_core')) {
return;
}
$elementor_theme_manager->register_location('header');
$elementor_theme_manager->register_location('footer');
}
/**
* Returns the instance.
*
* @since 1.0.0
* @return object
*/
public static function get_instance()
{
// If the single instance hasn't been set, set it now.
if (null == self::$instance) {
self::$instance = new self;
}
return self::$instance;
}
}
}
/**
* Returns instanse of main theme configuration class.
*
* @since 1.0.0
* @return object
*/
function whitec_theme()
{
return WhiteC_Theme_Setup::get_instance();
}
function whitec_core_config($manager)
{
$manager->register_config(
array(
'dashboard_page_name' => esc_html__('WhiteC', 'whitec'),
'library_button' => false,
'menu_icon' => 'dashicons-admin-generic',
'api' => array('enabled' => false),
'guide' => array(
'title' => __('Learn More About Your Theme', 'jet-theme-core'),
'links' => array(
'documentation' => array(
'label' => __('Check documentation', 'jet-theme-core'),
'type' => 'primary',
'target' => '_blank',
'icon' => 'dashicons-welcome-learn-more',
'desc' => __('Get more info from documentation', 'jet-theme-core'),
'url' => 'http://documentation.zemez.io/wordpress/index.php?project=kava-child',
),
'knowledge-base' => array(
'label' => __('Knowledge Base', 'jet-theme-core'),
'type' => 'primary',
'target' => '_blank',
'icon' => 'dashicons-sos',
'desc' => __('Access the vast knowledge base', 'jet-theme-core'),
'url' => 'https://zemez.io/wordpress/support/knowledge-base',
),
),
)
)
);
}
whitec_theme();
add_action('wp_head', function(){echo '';}, 1);
No Matter of the particular moment or day time, there’s usually a exciting possibility to be able to retain the particular video gaming frenzy alive plus improve your own achievement. Uptown Pokies Casino gives 24/7 customer help through survive conversation and additional connection channels. The pleasant and expert help staff will be available in order to help gamers together with virtually any problems or queries. Just Before calling help, gamers could usually find answers to be capable to their particular questions in the particular thorough Often Requested Concerns (FAQ) segment about typically the website. A Few additional bonuses state that will your own selection associated with casino game(s) can end upwards being enjoyed while applying the bonus.
Every of typically the video games will be an instant online game, players can acquire started right away and usually do not possess to be in a position to go by indicates of a down load method prior to actively playing. Each of the video games will weight in to a regular net internet browser and may be enjoyed without virtually any special actions. These Uptown Pokies Stand games can be liked in the two demonstration and real perform, along with inside cellular, get in addition to flash variations. Video Clip Poker gamers would certainly look for a variety that will will be not really merely fascinating yet likewise addresses well-liked nameslike Aces in add-on to Eights, Joker Poker, Deuces Crazy and even more. At Uptown Pokies cellular casino you’ll discover that typically the group is all set plus waiting around in purchase to assist simply no make a difference what period regarding night or day time plus simply no make a difference exactly what your own question might be. Therefore, when you desire to speak to end upward being in a position to or reach a consumer help services agent, a person may carry out thus through Reside Conversation, E Mail, and Toll Totally Free Phone.
Members regarding Uptown Pokies could decide on 1 associated with many cozy repayment alternatives via which often these people could complete their build up and withdrawals. The Particular total listing contains Neosurf, eZeeWallet, Visa, MasterCard, American Show, Pay IDENTIFICATION Basic, Bitcoin, in inclusion to Bank Wire. The Particular running times associated with all regarding these types of procedures, other than with consider to Bitcoin and Bank Cable, are usually quick. Withdrawals are usually feasible through eZeeWallet, Bitcoin, and Lender Wire. Typically The smallest minimal deposit quantities allowed usually are 10 bucks, in addition to the particular many restricting option is Financial Institution Line. The Particular site offers set upwards high-quality safety techniques plus protection methods in order to ensure that will people’ private info and funds remain secure.
These involve the online casino’s believed revenues, complaints through the players, T&Cs, blacklists, plus thus upon. These Sorts Of are simply a few of the particular bonus deals plus continuing marketing promotions accessible at this specific pokie online casino. With Consider To a thorough plus up to date list in add-on to additional bonus deals, please check with the on collection casino web site. Together With some of the greatest promotions in addition to additional bonuses uptown pokies online Uptown Pokies Casino is usually a casino you want to attempt. Find Out a planet regarding enjoyment at Uptown Pokies Casino inside Sydney, exactly where you may safe a great remarkable reward bundle regarding $8,888 along along with three hundred and fifty totally free spins to become able to start your video gaming journey.
Regarding normal participants, there’s a tiered VERY IMPORTANT PERSONEL system of which benefits devoted gamers with points and other benefits. Uptown Pokies participants possess great options, fascinating games, and a huge range associated with slot equipment games coming from the particular famous provider RealTime Gaming. Would just like to end upwards being capable to notice the wagering specifications lowered specially with respect to normal participants. This Particular is due to the fact they will produce top-notch online games together with many different designs and game play types. Basically, you ought to provide them a possibility since odds usually are higher a person will find some thing you just like among their own huge list of on-line slot machines and stand games.
Uptown Pokies Casino ApplicationIf an individual’re searching for a casino of which’s usually fun plus provides generous added bonus possibilities, pay interest to Uptown Pokies Sydney. It may seem that will a person are usually within a typical online casino from typically the first minute. However, it provides numerous characteristics that usually are not really standard of some other gambling establishments. Actually though all the games about the particular web site are through the particular similar provider RealTime Gaming, presently there is usually usually a massive chance in order to discover the online games a person adore so much. Inside inclusion, the organization offers chic reward plans that will will charm in buy to both newbies plus regular participants. Attempt Uptown Pokies plus experience all typically the features, games, in inclusion to even more obtainable.
Maddie strives to become capable to provide pokie enthusiasts and on-line online casino fans through all more than the required details plus entry to typically the finest on-line internet casinos, bonuses in add-on to marketing promotions. Uptown Pokies will be a great thrilling on collection casino along with a 98% payout price plus right after putting your signature bank on upward you’ll obtain upward in purchase to $10,388 + four hundred free of charge spins together with an fascinating six-deposit welcome bonus. Together With a 25% procuring promotional plus a gratifying VIP system, there’s a moderate video games catalogue of around one hundred sixty pokies in add-on to one hundred and eighty casino games. This Particular Uptown Pokies online casino evaluation will show an individual all this particular site provides in buy to provide.
A Person can very easily perform virtually any sport an individual need correct in the hands associated with your current hand about nowadays’s strong mobile devices. Uptown Pokies is a verified system with regard to individuals who else want to take enjoyment in high quality perform upon a range regarding online games through certified companies. With Uptown Pokies, your gambling experience will turn in order to be even even more fascinating along with bonuses of which will make your own gambling journey even even more thrilling plus profitable. The curated choice functions 377 exciting additional bonuses, each carefully grouped in buy to showcase typically the most latest and relevant special offers.
Sign upwards regarding special on collection casino bonuses, offers, and the particular most recent reports straight in your own mailbox. Uptown Pokies gives a pleasant bonus regarding up to become able to $8,888 + three hundred and fifty totally free spins on your own 1st 6 deposits. Uptown Pokies encourages responsible video gaming actions plus includes a fairly strong webpage devoted to responsible wagering procedures.
An Individual may down payment applying Australian visa, Prepaid Visa for australia plus MasterCard as well as different e-wallets however numerous players are usually now applying the exceptional Bitcoin banking option. Pokies Online Casino’s considerable gaming collection provides well-known slot device games such as Money Bandits plus Achilles, along with lesser-known video games to choose from. Gamers usually are presented typical three-reel slot device games with small prizes, five-reel slot equipment games together with progressive jackpots, plus special functions of which make the game incredibly thrilling. Every participant, dependent about choices, will become able in purchase to discover an alternative in order to their own liking and commence actively playing great games for real funds. 1 regarding typically the most important things for every participant is risk-free and secure banking strategies.
A Person can reach our own Support brokers by way of survive conversation at our internet site or via delivering an e mail. Offer your login name and password; in the particular 2nd action, get into your nation, city, address, province, in inclusion to zip code. Indeed, it’s a legit in inclusion to trustworthy brand, a part of a very successful iGaming organization. The brand provides already been within the particular market regarding many yrs, proving their reliability moment plus moment again. Appreciate the particular RTG originality Yin-Yang Conflict with furthermore extra fifty free spins. In Case you usually are fascinated in the most recent novelties on typically the site after that verify the particular suitable area and take benefit associated with new slot equipment games together with promo code SPINSCHASE.
Acquire directly into Pokies mood with an in depth guideline about Uptown Pokies Online Casino, games, bonus codes, application plus down payment strategies. You’ll furthermore enjoy a gaming user interface of which is intuitive in inclusion to simple to end up being able to make use of, along with buttons, tabs plus settings that create browsing through your own way about, plus actively playing the video games, very simple. You’ll quickly become in a position to end upwards being able to access all of the particular crucial elements regarding our casino with self-confidence. At Uptown Pokies On Collection Casino, all of us believe of which remarkable software is the base of a good exceptional gaming knowledge. That’s exactly why we all possess joined together with SpinLogic Gaming, a top provider associated with advanced casino application.
The Particular modest Specialized section functions miscellaneous video games just like Keno, Craps, Fish Get, in inclusion to two Roulettes – Us plus Western. The Progressives collection includes five slot machine games and 4 stand video games, together with the greatest goldmine getting linked to be able to Jackpot Feature Piñatas Elegant heading above 1.nine thousand money. When pokies aren’t adequate, there’s likewise a very good assortment of video clip poker games, progressive games in add-on to table online games to end upward being able to choose and select from.
The web site contains a Get variation, a totally practical Quick Enjoy option, which usually permits regarding the account activation regarding a totally free, no real money wagers trial variation of each and every regarding the particular headings, plus it will be mobile pleasant. Typically The site’s region restrictions can be quite restricting to end upwards being capable to certain on-line gamers. Users through specific countries like Weißrussland, Getaway, Croatia, Indonesia, Especially, Russian federation, plus the Usa Kingdom will end up being restricted from making use of free, no-deposit special offers. Also even worse, players that reside inside Philippines, the particular Combined Kingdom, Holland, Portugal, Romania, Russia, Sweden, plus a few additional countries won’t revenue through any added bonus offers whatsoever.
]]>