/
var
/
www
/
barefootlaw.org
/
wp-content
/
plugins
/
pdf-poster
/
admin
/
framework
/
functions
/
Upload File
HOME
<?php if ( ! defined( 'ABSPATH' ) ) { die; } // Cannot access directly. /** * * WP Customize custom panel * * @since 1.0.0 * @version 1.0.0 * */ if ( ! class_exists( 'WP_Customize_Panel_CSF' ) && class_exists( 'WP_Customize_Panel' ) ) { class WP_Customize_Panel_CSF extends WP_Customize_Panel { public $type = 'csf'; } } /** * * WP Customize custom section * * @since 1.0.0 * @version 1.0.0 * */ if ( ! class_exists( 'WP_Customize_Section_CSF' ) && class_exists( 'WP_Customize_Section' ) ) { class WP_Customize_Section_CSF extends WP_Customize_Section { public $type = 'csf'; } } /** * * WP Customize custom control * * @since 1.0.0 * @version 1.0.0 * */ if ( ! class_exists( 'WP_Customize_Control_CSF' ) && class_exists( 'WP_Customize_Control' ) ) { class WP_Customize_Control_CSF extends WP_Customize_Control { public $type = 'csf'; public $field = ''; public $unique = ''; public function render() { $depend = ''; $visible = ''; if ( ! empty( $this->field['dependency'] ) ) { $dependency = $this->field['dependency']; $depend_visible = ''; $data_controller = ''; $data_condition = ''; $data_value = ''; $data_global = ''; if ( is_array( $dependency[0] ) ) { $data_controller = implode( '|', array_column( $dependency, 0 ) ); $data_condition = implode( '|', array_column( $dependency, 1 ) ); $data_value = implode( '|', array_column( $dependency, 2 ) ); $data_global = implode( '|', array_column( $dependency, 3 ) ); $depend_visible = implode( '|', array_column( $dependency, 4 ) ); } else { $data_controller = ( ! empty( $dependency[0] ) ) ? $dependency[0] : ''; $data_condition = ( ! empty( $dependency[1] ) ) ? $dependency[1] : ''; $data_value = ( ! empty( $dependency[2] ) ) ? $dependency[2] : ''; $data_global = ( ! empty( $dependency[3] ) ) ? $dependency[3] : ''; $depend_visible = ( ! empty( $dependency[4] ) ) ? $dependency[4] : ''; } $depend .= ' data-controller="'. esc_attr( $data_controller ) .'"'; $depend .= ' data-condition="'. esc_attr( $data_condition ) .'"'; $depend .= ' data-value="'. esc_attr( $data_value ) .'"'; $depend .= ( ! empty( $data_global ) ) ? ' data-depend-global="true"' : ''; $visible = ' csf-dependency-control'; $visible .= ( ! empty( $depend_visible ) ) ? ' csf-depend-visible' : ' csf-depend-hidden'; } $id = 'customize-control-' . str_replace( array( '[', ']' ), array( '-', '' ), $this->id ); $class = 'customize-control customize-control-'. $this->type . $visible; echo '<li id="'. esc_attr( $id ) .'" class="'. esc_attr( $class ) .'"'. $depend .'>'; $this->render_field_content(); echo '</li>'; } public function render_field_content() { $complex = apply_filters( 'csf_customize_complex_fields', array( 'accordion', 'background', 'border', 'button_set', 'checkbox', 'color_group', 'date', 'dimensions', 'fieldset', 'group', 'image_select', 'link', 'link_color', 'media', 'palette', 'repeater', 'sortable', 'sorter', 'spacing', 'switcher', 'tabbed', 'typography' ) ); $field_id = ( ! empty( $this->field['id'] ) ) ? $this->field['id'] : ''; $custom = ( ! empty( $this->field['customizer'] ) ) ? true : false; $is_complex = ( in_array( $this->field['type'], $complex ) ) ? true : false; $class = ( $is_complex || $custom ) ? ' csf-customize-complex' : ''; $atts = ( $is_complex || $custom ) ? ' data-unique-id="'. esc_attr( $this->unique ) .'" data-option-id="'. esc_attr( $field_id ) .'"' : ''; if ( ! $is_complex && ! $custom ) { $this->field['attributes']['data-customize-setting-link'] = $this->settings['default']->id; } $this->field['name'] = $this->settings['default']->id; $this->field['dependency'] = array(); echo '<div class="csf-customize-field'. esc_attr( $class ) .'"'. $atts .'>'; CSF::field( $this->field, $this->value(), $this->unique, 'customize' ); echo '</div>'; } } }