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);
When it arrives to online casinos, rely on is every thing — plus Hellspin On Range Casino requires that critically. The program works beneath a Curacao eGaming License, a single associated with typically the the the higher part of recognized global licences in the on-line wagering globe. Coming From self-exclusion choices to deposit limitations, typically the casino makes sure your current gambling experience stays enjoyable and well balanced. Put to be in a position to of which a specialist 24/7 assistance group, plus you’ve received a safe space wherever you can appreciate real is victorious along with serenity of thoughts. HellSpin Casino Australia offers a large selection regarding bonus deals plus marketing promotions that enhance the particular gambling knowledge and supply participants along with additional opportunities to end upwards being capable to win.
In this particular, you’ll be rewarded together with additional bonuses dependent on your very own efforts and exercise within the particular on line casino. Yes, simply by launching typically the video games within trial mode a person could entry the free play edition associated with any kind of pokie. This permits a person in purchase to acquire in buy to realize typically the game plus try out all the in-game ui additional bonuses.
Typically The leading 25 players obtain real cash prizes, while the tournament winner walks aside with 3 hundred AUD. Despite The Very Fact That there’s a absence regarding the zero downpayment bonus, it’s not necessarily the particular circumstance for typically the VERY IMPORTANT PERSONEL program. This Particular will be a blessing for loyal gamers as their own moment along with the particular on the internet casino will be compensated with various sorts regarding jackpot awards. For players who are usually part regarding HellSpin Casino’s VIP system, committed VERY IMPORTANT PERSONEL help will be obtainable. VERY IMPORTANT PERSONEL participants take satisfaction in a customized level of service, together with entry to be in a position to a group regarding dedicated assistance employees that are usually trained to deal with their own distinctive requires plus asks for. Regardless Of Whether it’s assistance with a intricate problem, asks for for special marketing promotions, or individualized bonuses, VIP people usually are provided top priority remedy to make sure their own knowledge is high quality.
They Will In Fact Recognize Drawback TimeframesThey mentioned 24 hours regarding lender withdrawals, in add-on to that’s exactly exactly what I got. It doesn’t crash, but it doesn’t feel fully improved with respect to smaller monitors both. We All’re really remorseful in buy to listen to that will your experience at HellSpin Online Casino didn’t satisfy your current anticipation.We All’ve required even more info through a person in order to better realize exactly what happened. We All’re dedicated to fixing your current issue plus are usually obtainable to aid a person at any moment. The Particular receptive website will modify in purchase to suit your current cellular screen, no issue when you perform on a tiny or large smartphone. This Specific works perfectly zero make a difference which working program you’re using, making it optimum for the two apple iphone and Android os customers.
Please take note that there usually are withdrawal limitations of up to be in a position to €4,1000 each day, €16,000 each 7 days, or €50,500 each calendar month. Whilst typically the withdrawal limits may end upwards being higher, HellSpin gives far better phrases compared to become able to many other on-line internet casinos. Communicate, play, in addition to really feel the adrenaline excitment regarding a great traditional casino atmosphere coming from your house. On-line craps are usually other HellSpin casino online games of chance that will gamers could appreciate. Typically The online game aim is to precisely predict the particular benefit that will the particular present shooter will roll.
Typically The sport groups within the major lobby usually are All Online Games, Well-known, New, Strikes, Pokies, Added Bonus Purchase, and Quickly Online Games. A Person can furthermore observe video games simply by developer or use the particular research tabs to appearance up games. The game cards usually are introduced neatly along with the online game headings in inclusion to sport developers outlined beneath.
If an individual desire in order to play regarding legit cash, you must first complete typically the bank account verification process. If an individual observe that will a reside casino doesn’t need a good account verification after that we’ve received some bad news with respect to a person. It’s the vast majority of likely a program that will scam you plus you may drop your own money. Luckily, HellSpin is usually a trustworthy program of which a person could become assured inside.
As participants move upwards typically the VERY IMPORTANT PERSONEL tiers, the particular advantages keep on to develop, making the particular program a valuable feature for those who else would like to become able to get the many out there regarding their particular gambling knowledge. Participants at Hellspin On Range Casino Sydney have accessibility to multiple secure plus hassle-free payment alternatives. The Particular program helps different downpayment and withdrawal methods to end upward being capable to ensure smooth dealings.
It’s important, however, in order to constantly examine that will a person’re becoming a member of a licensed and safe web site — and Hellspin clicks all the particular proper bins. HellSpin’s Live Casino is created with respect to an online knowledge, enabling participants to end upwards being capable to talk with retailers plus additional players via talk. This Specific social element improves the gameplay, making it sense more such as a standard online casino hell spin login environment. The Particular high-definition streaming technologies assures a smooth experience, together with minimal separation plus clear visuals, additional enriching the particular total pleasure. Regarding fanatics regarding conventional on collection casino online games, HellSpin offers several variants associated with blackjack, different roulette games, in inclusion to baccarat. Gamers may appreciate options such as Western european Different Roulette Games and Multihand Black jack, accommodating diverse wagering limits in add-on to strategies.
Typically The minimal downpayment will be usually $10–$20 AUD, dependent about the approach. Just Before a person can funds out earnings for the particular first period at Hell Spin And Rewrite, you have got in order to validate your current player accounts. As Soon As this particular will be completed, an individual can request as many withdrawals as a person desire, plus they will be processed the exact same day time. If an individual are unable to locate the answers to become capable to your queries listed below the particular COMMONLY ASKED QUESTIONS section, you could obtain inside touch with a part associated with typically the customer support staff swiftly and painlessly. Within the area of accountable betting, Hell Spin On Range Casino does not have got very much in order to offer you. However, presently there usually are simply no resources or options in order to set betting restrictions upon your own account, which often is disappointing.
Somewhat unusually, Hell Spin On Range Casino will not offer you any kind of virtual stand games. Nevertheless, if a person like traditional online casino video games like Baccarat, blackjack, or roulette, a person perform possess typically the choice associated with enjoying the particular many reside supplier titles here instead. The online on line casino market offers taken advantage associated with this in buy to improve typically the convenience regarding gamers in order to these types of video games.
With Regard To players who prefer local apps, HellSpin provides dedicated apps for iOS and Android gadgets, available by way of the particular Application Store and Search engines Enjoy. Typically The cellular software will be smooth, quick, and user-friendly, supplying smooth accessibility to the entire sport catalogue, safe banking alternatives, marketing promotions, plus customer assistance. Regardless Of Whether at home or upon typically the move, Australian punters may take enjoyment in reduced real money gambling knowledge anytime, anywhere. HellSpin Online Casino Sydney stands out like a top vacation spot regarding online gambling enthusiasts, offering a great choice of real cash games, appealing bonuses, in addition to trustworthy customer support. Along With a strong dedication to be in a position to supplying a top-tier customer encounter, HellSpin On Range Casino will be typically the best selection with consider to Australian gamers seeking for enjoyment and typically the potential in purchase to win huge. HellSpin Casino Quotes gives an substantial selection associated with games and gambling choices that will accommodate in order to a large variety of player preferences.
Presently There usually are thousands associated with headings, which includes traditional slot machines, contemporary video slot device games, in add-on to slots that will offer you thrilling baitcasting reel technicians for example Bunch Will Pay, Megaways, or Ways-to-Win. As with respect to themes, an individual will discover just about virtually any that a person can imagine, whether an individual like luck-themed titles, slot machines designed upon videos, or any some other theme for example sporting activities, illusion, or horror. Inside the ‘Popular’ category within the particular reception, a person will locate well-known slot device games for example Sweet Bienestar, Publication associated with Lifeless, plus Deceased or In Existence 2. One sort associated with slot deficient in this article is usually intensifying jackpot slot machines, which is usually discouraging. You may make use of a selection of eWallets, lender playing cards, bank transactions, voucher methods, plus also cryptocurrencies in purchase to finance or cash out your own accounts. When it will come in order to banking at HellSpin Casino Sydney, punters have access to a extensive choice regarding protected, reliable repayment options.
Players can fund their particular balances making use of different strategies, like credit credit cards, e-wallets such as Skrill, and cryptocurrencies just like Bitcoin plus Litecoin. In Buy To down payment money, just log within in purchase to your own account, move to the particular banking section, choose your current preferred technique, and follow the particular requests. Placing Your Signature Bank To upward at Hell Rewrite Casino is usually very simple in inclusion to you’ll be carried out inside a jiffy. To Be Able To sign up, merely check out the particular HellSpin website plus click on upon typically the “Register” button.
]]>