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);
There usually are one-armed bandits with reels and lines, typically the newest advancements inside the betting market, with the particular possibility associated with getting a reward. Nearly all games are obtainable within it (except for entertainment with reside dealers). Downloading starts off following hovering over typically the background picture in inclusion to clicking about the particular inscription “Trial.” Unlike paid types, credits usually are at stake. You need to end upward being capable to renew the page to recover the particular balance when these people run out there.
LevelUp On Collection Casino companions along with 45 finest software program providers that generate fair, high-quality slots plus stand online games.
Right Now There’s the occasional no-deposit bonus, plus well-known games often provide free perform choices. Regarding enthusiasts of classic cards and table video games, Stage Upwards provides a great enough choice, which include most favorite just like Pai Gow, Semblable Bo dice video games, in inclusion to various blackjack and baccarat types. On The Internet internet casinos, we all’ve noticed a pattern inside their own style preferences, specifically a dark-themed visual. Additional Bonuses are usually plentiful at a similar time, offering a good welcome bundle regarding newbies along with regular refill bonuses regarding consistent thrills. Consumer assistance will be obtainable around typically the time via reside talk plus e mail, ensuring all queries are usually addressed promptly.
Level Upward Casino’s survive supplier options usually are developed to increase your current gaming knowledge, providing a good unequalled stage regarding enjoyment plus wedding. Along With best suppliers like NetEnt, Microgaming, in add-on to Play’n GO, a person could assume outstanding images, interesting soundtracks, and seamless gameplay. Whether Or Not you’re a lover of high-volatility slot equipment games or choose a lot more informal gameplay, Stage Upward Casino’s varied slot device game series has got an individual included. In Addition To, in case a person’re searching with respect to a even more traditional knowledge, an individual can try your luck at the reside seller furniture, exactly where real dealers will deal the playing cards plus spin typically the wheels inside real-time.
Fresh gamers are usually motivated to grab the delightful reward throughout sign up. Just simply click about typically the showcased offer picture, visible although filling the particular contact form.
It includes a valid Curaçao eGaming certificate plus is usually available in a number of different languages which includes The english language, The german language, plus French. The casino gives unique bonus deals to end up being in a position to Australian participants who else could likewise employ several Australia-frriendly obligations to declare the particular nice pleasant reward. You’ll find a active selection of ongoing offers in addition to tournaments at Degree up Online Casino, designed in order to keep your video gaming knowledge fresh and fascinating. As a highly valued gamer, you’ll have entry to be in a position to a constant supply of special offers that will will make your own moment at the particular casino actually a lot more gratifying.
The Particular choice offers entertainment through leading software programmers. Options contain slot machine games along with fishing reels and lines, typically the latest gaming innovations, in addition to games with purchasable bonus deals.
Typically The “Reside On Collection Casino” case gives several types regarding different roulette games and blackjack, supported by an enjoyable seller along with understanding of the English terminology. Ezugi, Pragmatic Play, plus Lucky Ability usually are responsible for survive software at Degree Up Online Casino. Contemplating the knowledge and reputation of typically the programmers, clients may possess zero uncertainties regarding the particular dependability regarding wagering content in inclusion to typically the honesty regarding payments. There are usually furniture regarding large rollers and those who are usually not prepared to devote big amounts about bets inside the particular live casino area. The application permits with regard to build up initiated together with Mastercard, Visa, Neosurf, Interac Online, InstaDebit, iDebit, MiFinity, plus numerous more, based upon user’s residency. The Particular mobile edition associated with LevelUp Casino terme conseillé with gaming choices, giving cellular consumers a profusion associated with slot machines and desk video games.
An Individual’ll locate yourself submerged in a world associated with excitement, along with slots that will accommodate to be capable to all tastes in add-on to choices. Through classic fruits equipment to become capable to mythical journeys, the particular slot styles are usually level up casino unlimited, guaranteeing you’ll never ever obtain bored. Regardless Of Whether you’re a fan of classic slot machines, live dealer video games, or some thing totally fresh, Stage Upward Online Casino offers got a person protected.
It gets used to in order to cell phones associated with all versions, no matter regarding typically the functioning system. As with respect to protection, the particular user relies about industry-standard SSL encryptions in order to safeguard customers’ delicate data. Typically The casino stimulates responsible gaming simply by enabling gamers in order to select individual downpayment restrictions, self-exclude forever, or take reduced breaks coming from gambling.
Cool-off periods are usually obtainable regarding a day, a week, a month, 3, plus half a dozen a few months. An Individual may receive your preferred end of the week offer together with a lowest deposit of $40 through Friday to Weekend. Typically The promotional code for typically the 70% refill is BOOST whilst of which with regard to the 50% provide is usually WEEKEND. The Particular gambling specifications overlap across the two provides at 30x plus participants have got fourteen days in purchase to fulfill all of them. The integrated free of charge spins possess a skidding associated with 40x plus a highest win amount associated with $50. LevelUp Casino is an iGaming owner that will prides by itself on its seamless compatibility together with mobile gadgets.
The Particular Stage Up cell phone application for Google android in addition to iOS will be jam-packed along with incentives, providing a useful software that moves past traditional slot device games. It starts upward a world of hidden journeys and treasures, allowing regarding flexible gambling schedules along with state of the art software program simply by famous programmers. Possess a question about a bonus, have a good problem along with a deposit or just need in order to discuss regarding the particular newest pokies? This Specific on-line online casino help crew at LevelUp will be usually prepared in purchase to help together with a grin in add-on to will help navigate via the particular on-line on range casino experience. Any Time it will come to withdrawing money through this enjoyment program, the particular lowest sums that will players could pull away must be at the very least A$20.
Whenever it will come to be able to crypto transaction alternatives, a person’ll enjoy the particular convenience in addition to overall flexibility they will offer. This ripper regarding a game arrives together with vivacious graphics, a wonderful Oriental disposition, in addition to an possibility in purchase to win a great x5000 Grand Jackpot. As for their Maintain plus Earn mechanism, “15 Monster Pearls” will be arranged to be able to possess Aussie game enthusiasts about the particular obtaining finish re-writing as hard as these people may in typically the quest associated with large is victorious. All Of Us support numerous payment choices, which includes credit/debit credit cards, e-wallets, and cryptocurrencies such as Bitcoin in inclusion to Ethereum.
Typically The Level Up online casino contains a next menus along with video games divided into categories.At LevelUp On Range Casino, this will be taken in buy to heart with round-the-clock customer help accessible every single single time of the 12 months. Gamers through Quotes could quickly attain this specific helpful staff by way of e-mail or chat whenever they will desire. By Simply prioritizing gamer needs, LevelUp guarantees that managing online casino routines will be each enjoyable and straightforward. The Particular platform translates well to become in a position to mobile phones plus capsules, granting entry to be in a position to a wide range of pokies, card online games, plus reside dealer games—fully enhanced regarding mobile knowledge. Safety plus personal privacy remain in-line together with typically the desktop site’s specifications.
These hubs usually are furthermore a good place in order to locate out there regarding brand new games, and also to choose up added money plus other bonuses. Don’t just take our word regarding it whenever it comes in buy to picking your best social online casino software. Take a instant to become in a position to study on line casino evaluations, surf discussion boards, and evaluation internet sites in buy to observe what other gamers usually are saying before you help to make a option. Level Upwards On Range Casino provides a great variety associated with Several,000+ video games coming from leading providers just like Development plus Playson. Australian punters can enjoy well-liked pokies like Wolf Cherish, recognized regarding engaging game play.
Among them are usually such well-known titles as Spinomenal, Endorphina, BGaming, etc. Therefore, the collection regarding video games of the particular Stage Upward betting system is not merely extremely extensive plus varied, but likewise extremely secure. Typically The cell phone edition of LevelUp’s web site is usually a mirror associated with the pc web site.

LevelUp Online Casino welcomes a different range regarding transaction strategies handpicked regarding Aussie players. You could commence your betting routines right away just as you help to make your own first deposit. A Person may account your own account together with many alternatives ranging coming from bank exchange in add-on to credit cards to e-wallets and even cryptocurrencies. Pokies are usually typically the many well-liked sort regarding game at any on-line casino, and it doesn’t get a good specialist to be capable to observe exactly why.
You may fill up it upwards inside simply a pair of moments, following which usually you’re all set in buy to sign in plus start actively playing. Created by IGT, Wolf Value is usually a Maintain & Earn slot equipment game with appealing prizes. The spotlight will be their Hold & Succeed bonus round which usually will be triggered by simply 6 or even more funds icons.
]]>