%PDF- %PDF-
Direktori : /proc/self/root/home/infra/new-ong/bethemeold/muffin-options/fields/checkbox/ |
Current File : //proc/self/root/home/infra/new-ong/bethemeold/muffin-options/fields/checkbox/field_checkbox.php |
<?php class MFN_Options_checkbox extends Mfn_Options_field { /** * Render */ public function render( $meta = false, $vb = false, $js = false ) { if ( ! is_array( $this->field[ 'options' ] ) ) { return false; } $class = false; // invert if( ! empty( $this->field['invert'] ) ){ $class = 'invert'; } // meta if ( $meta ) { // page mata & builder existing items $name = $this->field['id']; } else { // theme options $name = $this->prefix .'['. $this->field['id'] .']'; } // array values if ( ! isset( $this->value ) || ! is_array( $this->value ) ) { $this->value = array(); } // output ----- echo '<div class="form-group checkboxes '. esc_attr( $class ) .'">'; // FIX | post meta save | all values unchecked echo '<input type="hidden" name="'. esc_attr( $name ) .'[post-meta]" value="1" checked="checked" />'; echo '<div class="form-control">'; echo '<ul>'; foreach ( $this->field['options'] as $k => $v ) { $class = false; if ( ! isset( $this->value[$k] ) ) { $this->value[$k] = ''; } if ( checked( $this->value[$k], $k, false ) ){ $class = "active"; } if( $js ){ echo '<li class="\'+(typeof '.$js.' !== \'undefined\' && typeof '.$js.'[\''.$k.'\'] !== \'undefined\' && '.$js.'[\''.$k.'\'] == \''.$k.'\' ? "active" : "") +\'">'; echo '<input type="checkbox" \'+(typeof '.$js.' !== \'undefined\' && typeof '.$js.'[\''.$k.'\'] !== \'undefined\' && '.$js.'[\''.$k.'\'] == \''.$k.'\' ? "checked" : "") +\' class="mfn-form-checkbox" data-name="'.esc_attr( $name ).'" data-key="'.esc_attr( $k ).'" name="'. esc_attr( $name ) . '['. esc_attr( $k ) .']" value="'. esc_attr( $k ) .'" />'; }else{ echo '<li class="'. esc_attr( $class ) .'">'; echo '<input type="checkbox" class="mfn-form-checkbox" name="'. esc_attr( $name ) . '['. esc_attr( $k ) .']" value="'. esc_attr( $k ) .'" '. checked( $this->value[$k], $k, false ) .' />'; } echo '<span class="title">'. wp_kses( str_replace('\'',''',$v), mfn_allowed_html('desc') ) .'</span>'; echo '</li>'; } echo '</ul>'; echo '</div>'; echo '</div>'; if( ! $vb ){ echo $this->get_description(); } else { $this->enqueue(); } } /** * Enqueue */ public function enqueue() { wp_enqueue_script( 'mfn-opts-field-checkbox', MFN_OPTIONS_URI .'fields/checkbox/field_checkbox.js', array( 'jquery' ), MFN_THEME_VERSION, true ); } }