.
*
* @package ReduxFramework
* @subpackage Field_Color
* @author Daniel J Griffiths (Ghost1227)
* @author Dovy Paukstys
* @version 3.0.0
*/
// Exit if accessed directly
if ( ! defined( 'ABSPATH' ) ) {
exit;
}
// Don't duplicate me!
if ( ! class_exists( 'ReduxFramework_color' ) ) {
/**
* Main ReduxFramework_color class
*
* @since 1.0.0
*/
class ReduxFramework_color {
/**
* Field Constructor.
* Required - must call the parent constructor, then assign field and value to vars, and obviously call the render field function
*
* @since 1.0.0
* @access public
* @return void
*/
function __construct( $field = array(), $value = '', $parent ) {
$this->parent = $parent;
$this->field = $field;
$this->value = $value;
}
/**
* Field Render Function.
* Takes the vars and outputs the HTML for the field in the settings
*
* @since 1.0.0
* @access public
* @return void
*/
public function render() {
echo '';
echo '';
if ( ! isset( $this->field['transparent'] ) || $this->field['transparent'] !== false ) {
$tChecked = "";
if ( $this->value == "transparent" ) {
$tChecked = ' checked="checked"';
}
echo '';
}
}
/**
* Enqueue Function.
* If this field requires any scripts, or css define this function and register/enqueue the scripts/css
*
* @since 1.0.0
* @access public
* @return void
*/
public function enqueue() {
if ($this->parent->args['dev_mode']) {
wp_enqueue_style( 'redux-color-picker-css' );
}
wp_enqueue_style( 'wp-color-picker' );
wp_enqueue_script(
'redux-field-color-js',
ReduxFramework::$_url . 'inc/fields/color/field_color' . Redux_Functions::isMin() . '.js',
array( 'jquery', 'wp-color-picker', 'redux-js' ),
time(),
true
);
}
public function output() {
$style = '';
if ( ! empty( $this->value ) ) {
$mode = ( isset( $this->field['mode'] ) && ! empty( $this->field['mode'] ) ? $this->field['mode'] : 'color' );
$style .= $mode . ':' . $this->value . ';';
if ( ! empty( $this->field['output'] ) && is_array( $this->field['output'] ) ) {
$css = Redux_Functions::parseCSS( $this->field['output'], $style, $this->value );
$this->parent->outputCSS .= $css;
}
if ( ! empty( $this->field['compiler'] ) && is_array( $this->field['compiler'] ) ) {
$css = Redux_Functions::parseCSS( $this->field['compiler'], $style, $this->value );
$this->parent->compilerCSS .= $css;
}
}
}
}
}