Initial Commit
This commit is contained in:
141
inc/functions/sunrise.php
Normal file
141
inc/functions/sunrise.php
Normal file
@ -0,0 +1,141 @@
|
||||
<?php
|
||||
/**
|
||||
* Sunrise Functions
|
||||
*
|
||||
* @package WP_Ultimo\Functions
|
||||
* @since 2.0.0
|
||||
*/
|
||||
|
||||
// Exit if accessed directly
|
||||
defined('ABSPATH') || exit;
|
||||
|
||||
/**
|
||||
* General helper functions for sunrise.
|
||||
*
|
||||
* @author Arindo Duque
|
||||
* @category Admin
|
||||
* @package WP_Ultimo/Sunrise
|
||||
* @version 2.0.11
|
||||
*/
|
||||
function wu_should_load_sunrise() {
|
||||
|
||||
return \WP_Ultimo\Sunrise::should_load_sunrise();
|
||||
|
||||
} // end wu_should_load_sunrise;
|
||||
|
||||
/**
|
||||
* Get a setting value, when te normal APIs are not available.
|
||||
*
|
||||
* Should only be used if we're running in sunrise.
|
||||
*
|
||||
* @since 2.0.0
|
||||
*
|
||||
* @param string $setting Setting to get.
|
||||
* @param mixed $default Default value.
|
||||
* @return mixed
|
||||
*/
|
||||
function wu_get_setting_early($setting, $default = false) {
|
||||
|
||||
if (did_action('wp_ultimo_load')) {
|
||||
|
||||
_doing_it_wrong('wu_get_setting_early', __('Regular setting APIs are already available. You should use wu_get_setting() instead.', 'wp-ultimo'), '2.0.0');
|
||||
|
||||
} // end if;
|
||||
|
||||
$settings_key = \WP_Ultimo\Settings::KEY;
|
||||
|
||||
$settings = get_network_option(null, 'wp-ultimo_' . $settings_key);
|
||||
|
||||
return wu_get_isset($settings, $setting, $default);
|
||||
|
||||
} // end wu_get_setting_early;
|
||||
|
||||
/**
|
||||
* Set a setting value, when te normal APIs are not available.
|
||||
*
|
||||
* Should only be used if we're running in sunrise.
|
||||
*
|
||||
* @since 2.0.20
|
||||
*
|
||||
* @param string $key Setting to save.
|
||||
* @param mixed $value Setting value.
|
||||
*/
|
||||
function wu_save_setting_early($key, $value) {
|
||||
|
||||
if (did_action('wp_ultimo_load')) {
|
||||
|
||||
_doing_it_wrong('wu_save_setting_early', __('Regular setting APIs are already available. You should use wu_save_setting() instead.', 'wp-ultimo'), '2.0.20');
|
||||
|
||||
} // end if;
|
||||
|
||||
$settings_key = \WP_Ultimo\Settings::KEY;
|
||||
|
||||
$settings = get_network_option(null, 'wp-ultimo_' . $settings_key);
|
||||
|
||||
$settings[$key] = $value;
|
||||
|
||||
return update_network_option(null, 'wp-ultimo_' . $settings_key, $settings);
|
||||
|
||||
} // end wu_save_setting_early;
|
||||
|
||||
/**
|
||||
* Get the security mode key used to disable security mode
|
||||
*
|
||||
* @since 2.0.20
|
||||
*/
|
||||
function wu_get_security_mode_key(): string {
|
||||
|
||||
$hash = md5((string) get_network_option(null, 'admin_email'));
|
||||
|
||||
return substr($hash, 0, 6);
|
||||
|
||||
} // end wu_get_security_mode_key;
|
||||
|
||||
/**
|
||||
* Load te dev tools, if they exist.
|
||||
*
|
||||
* @since 2.0.11
|
||||
*
|
||||
* @param boolean $load If we should load it or not.
|
||||
* @return string The path to the dev tools folder.
|
||||
*/
|
||||
function wu_load_dev_tools($load = true) {
|
||||
|
||||
if (defined('WP_ULTIMO_SUNRISE_FILE')) {
|
||||
/*
|
||||
* If the vendor folder exists, we are
|
||||
* for sure, inside a dev environment.
|
||||
*/
|
||||
$autoload_file = dirname((string) WP_ULTIMO_SUNRISE_FILE, 2) . '/vendor/autoload.php';
|
||||
|
||||
if (file_exists($autoload_file)) {
|
||||
|
||||
$load && require_once $autoload_file;
|
||||
|
||||
return $autoload_file;
|
||||
|
||||
} // end if;
|
||||
|
||||
} // end if;
|
||||
|
||||
return '';
|
||||
|
||||
} // end wu_load_dev_tools;
|
||||
|
||||
/**
|
||||
* Early substitute for wp_kses_data before it exists.
|
||||
*
|
||||
* Sanitize content with allowed HTML KSES rules.
|
||||
*
|
||||
* This function expects unslashed data.
|
||||
*
|
||||
* @since 2.1.0
|
||||
*
|
||||
* @param string $data Content to filter, expected to not be escaped.
|
||||
* @return string Filtered content.
|
||||
*/
|
||||
function wu_kses_data($data) {
|
||||
|
||||
return function_exists('wp_kses_data') ? wp_kses_data($data) : $data;
|
||||
|
||||
} // end wu_kses_data;
|
Reference in New Issue
Block a user