. * * @package ReduxFramework * @subpackage Field_Info * @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_info' ) ) { /** * Main ReduxFramework_info class * * @since 1.0.0 */ class ReduxFramework_info { /** * 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() { $defaults = array( 'title' => '', 'desc' => '', 'notice' => false, 'style' => '' ); $this->field = wp_parse_args( $this->field, $defaults ); if ( empty( $this->field['desc'] ) && ! empty( $this->field['default'] ) ) { $this->field['desc'] = $this->field['default']; unset( $this->field['default'] ); } if ( empty( $this->field['desc'] ) && ! empty( $this->field['subtitle'] ) ) { $this->field['desc'] = $this->field['subtitle']; unset( $this->field['subtitle'] ); } if ( empty( $this->field['desc'] ) ) { $this->field['desc'] = ""; } if ( empty( $this->field['raw_html'] ) ) { if ( $this->field['notice'] == true ) { $this->field['class'] .= ' redux-notice-field'; } else { $this->field['class'] .= ' redux-info-field'; } if ( empty( $this->field['style'] ) ) { $this->field['style'] = 'normal'; } $this->field['style'] = 'redux-' . $this->field['style'] . ' '; } $indent = ( isset( $this->field['sectionIndent'] ) && $this->field['sectionIndent'] ) ? ' form-table-section-indented' : ''; echo '
'; if ( ! empty( $this->field['raw_html'] ) && $this->field['raw_html'] ) { echo $this->field['desc']; } else { if ( isset( $this->field['title'] ) && ! empty( $this->field['title'] ) ) { $this->field['title'] = '' . $this->field['title'] . '
'; } if ( isset( $this->field['icon'] ) && ! empty( $this->field['icon'] ) && $this->field['icon'] !== true ) { echo '

'; } if ( isset( $this->field['raw'] ) && ! empty( $this->field['raw'] ) ) { echo $this->field['raw']; } if ( ! empty( $this->field['title'] ) || ! empty( $this->field['desc'] ) ) { echo '

' . $this->field['title'] . $this->field['desc'] . '

'; } } 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() { wp_enqueue_style( 'redux-field-info-css', ReduxFramework::$_url . 'inc/fields/info/field_info.css', time(), true ); } } }