. * * @package ReduxFrameworkLegacy * @subpackage Field_Checkbox * @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( 'ReduxFrameworkLegacy_checkbox' ) ) { /** * Main ReduxFrameworkLegacy_checkbox class * * @since 1.0.0 */ class ReduxFrameworkLegacy_checkbox { /** * 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 = null ) { $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() { if ( ! empty( $this->field['data'] ) && empty( $this->field['options'] ) ) { if ( empty( $this->field['args'] ) ) { $this->field['args'] = array(); } $this->field['options'] = $this->parent->get_wordpress_data( $this->field['data'], $this->field['args'] ); if ( empty( $this->field['options'] ) ) { return; } } $this->field['data_class'] = ( isset( $this->field['multi_layout'] ) ) ? 'data-' . $this->field['multi_layout'] : 'data-full'; if ( ! empty( $this->field['options'] ) && ( is_array( $this->field['options'] ) || is_array( $this->field['default'] ) ) ) { echo ''; } elseif ( empty( $this->field['data'] ) ) { 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-field-checkbox-css', ReduxFrameworkLegacy::$_url . 'inc/fields/checkbox/field_checkbox.css', array(), time(), 'all' ); } wp_enqueue_script( 'redux-field-checkbox-js', ReduxFrameworkLegacy::$_url . 'inc/fields/checkbox/field_checkbox' . ReduxLegacy_Functions::isMin() . '.js', array( 'jquery', 'redux-js' ), time(), true ); } } }