/var/www/html/wp-content/plugins/yith-woocommerce-compare/plugin-fw/templates/metaboxes/tab.php


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
<?php
/**
 * The Template for displaying meta-box tabs.
 *
 * @var array  $tabs        The tabs.
 * @var string $class       The CSS Class.
 * @var string $meta_box_id The ID of the meta-box.
 * @package YITH\PluginFramework\Templates
 */

defined'ABSPATH' ) || exit; // Exit if accessed directly.

global $post;
$classes  apply_filters'yith_plugin_fw_metabox_class'$class$post );
$classes  yith_plugin_fw_remove_duplicate_classes$classes );
$ul_style count$tabs ) <= 'display:none;' '';
$i        0;
do_action'yit_before_metaboxes_tab' );

// Allow style for SVGs.
$label_extra_allowed_tags = array(
    
'style' => array(
        
'type' => true,
    ),
);

$label_allowed_tags array_mergewp_kses_allowed_html'post' ), yith_plugin_fw_kses_allowed_svg_tags(), $label_extra_allowed_tags );
$label_allowed_tags apply_filters'yith_plugin_fw_metabox_label_allowed_tags'$label_allowed_tags$meta_box_id );

?>
    <div class="yith-plugin-fw metaboxes-tab <?php echo esc_attr$classes ); ?>">
        <?php do_action'yit_before_metaboxes_labels' ); ?>
        <ul class="metaboxes-tabs clearfix yith-plugin-fw__tabs" style="<?php echo esc_attr$ul_style ); ?>" data-tab-additional-active-class="tabs">
            <?php foreach ( $tabs as $key => $_tab ) : ?>

                <?php
                
if ( empty( $_tab['fields'] ) ) {
                    continue;
                }
                
$anchor_id 'yith-plugin-fw-metabox-tab-' urldecode$key ) . '-anchor';

                
// Parse deps for the tab visibility.
                
if ( isset( $_tab['deps'] ) ) {
                    
$_tab['deps']['target-id'] = isset( $_tab['deps']['target-id'] ) ? $_tab['deps']['target-id'] : $anchor_id;
                    if ( isset( 
$_tab['deps']['id'] ) && strpos$_tab['deps']['id'], '_' ) !== ) {
                        
$_tab['deps']['id'] = '_' $_tab['deps']['id'];
                    }
                    if ( isset( 
$_tab['deps']['ids'] ) && strpos$_tab['deps']['ids'], '_' ) !== ) {
                        
$_tab['deps']['ids'] = '_' $_tab['deps']['ids'];
                    }

                    
$_tab['deps']['type'] = 'hideme';
                }

                
$class 'yith-plugin-fw__tab';
                if ( ! 
$i ) {
                    
$class .= ' tabs yith-plugin-fw__tab--active';
                }
                
$i ++;
                
?>
                <li id="<?php echo esc_attr$anchor_id ); ?>" class="<?php echo esc_attr$class ); ?><?php echo yith_field_deps_data$_tab ); ?>>
                    <a href="#<?php echo esc_attrurldecode$key ) ); ?>" class="yith-plugin-fw__tab__handler">
                        <?php echo wp_kses$_tab['label'], $label_allowed_tags ); ?>
                    </a>
                </li>
            <?php endforeach; ?>
        </ul>

        <?php do_action'yit_after_metaboxes_labels' ); ?>

        <?php
        
if ( isset( $_tab['label'] ) ) {
            
do_action'yit_before_metabox_option_' urldecode$key ) );
        }
        
?>

        <?php wp_nonce_field'metaboxes-fields-nonce''yit_metaboxes_nonce' ); ?>

        <?php foreach ( $tabs as $key => $_tab ) : ?>
            <div class="tabs-panel yith-plugin-fw__tab-panel" id="<?php echo esc_attrurldecode$key ) ); ?>">
                <?php
                
if ( empty( $_tab['fields'] ) ) {
                    continue;
                }

                
$_tab['fields'] = apply_filters'yit_metabox_' $key '_tab_fields'$_tab['fields'] );
                
?>

                <?php foreach ( $_tab['fields'] as $id_tab => $field ) : ?>
                    <?php
                    $field_name 
$field['name'];
                    
$field_name str_replace'yit_metaboxes['''$field_name );
                    
$pos        strpos$field_name']' );
                    if ( 
$pos ) {
                        
$field_name substr_replace$field_name''$pos);
                    }

                    
/**
                     * APPLY_FILTER: yith_plugin_fw_metabox_{meta_box_id}_field_pre_get_value
                     * Allow filtering values for meta-box fields instead of retrieving them by post_meta(s).
                     *
                     * @param mixed|null $value      The value to be filtered. Set 'null' to retrieve it by the related post_meta (Default: null).
                     * @param int        $post_id    The post ID.
                     * @param string     $field_name The field name.
                     * @param array      $field      The field.
                     *
                     * @since 3.7.6
                     */
                    
$value apply_filters"yith_plugin_fw_metabox_{$meta_box_id}_field_pre_get_value"null$post->ID$field_name$field );
                    if ( 
is_null$value ) ) {
                        
$value yit_get_post_meta$post->ID$field_name );
                    }

                    
$field['value']         = false === $value ? ( isset( $field['std'] ) ? $field['std'] : '' ) : $value;
                    
$field['checkboxgroup'] = ( 'checkbox' === $field['type'] && isset( $field['checkboxgroup'] ) ) ? ' ' $field['checkboxgroup'] : '';
                    
$container_classes      'the-metabox ' $field['type'] . $field['checkboxgroup'] . ' clearfix ';
                    
$extra_row_class        = isset( $field['extra_row_class'] ) ? $field['extra_row_class'] : '';

                    
$container_classes .= empty( $field['label'] ) ? 'no-label' '';
                    
$container_classes .= ' ' $extra_row_class;

                    
?>
                    <div class="<?php echo esc_attr$container_classes ); ?>">
                        <?php
                        $field_template_path 
yith_plugin_fw_get_field_template_path$field );
                        if ( 
$field_template_path ) {
                            
$display_row                 'hidden' !== $field['type'];
                            
$display_row                 = isset( $field['yith-display-row'] ) ? ! ! $field['yith-display-row'] : $display_row;
                            
$field['display-field-only'] = in_array$field['type'], array( 'hidden''html''sep''simple-text''title''list-table' ), true );

                            if ( 
$display_row ) {

                                
$field_row_path apply_filters'yith_plugin_fw_metabox_field_row_template_path'YIT_CORE_PLUGIN_TEMPLATE_PATH '/metaboxes/field-row.php'$field );
                                
file_exists$field_row_path ) && include $field_row_path;
                            } else {
                                
yith_plugin_fw_get_field$fieldtrue );
                            }
                        } else {
                            
// Backward compatibility.
                            
$args       apply_filters(
                                
'yit_fw_metaboxes_type_args',
                                array(
                                    
'basename' => YIT_CORE_PLUGIN_PATH,
                                    
'path'     => '/metaboxes/types/',
                                    
'type'     => $field['type'],
                                    
'args'     => array( 'args' => $field ),
                                )
                            );
                            
$basename   $args['basename'];
                            
$field_path $args['path'];
                            
$field_type $args['type'];
                            
$field_args $args['args'];

                            
yit_plugin_get_template$basename$field_path $field_type '.php'$field_args );
                        }
                        
?>
                    </div>
                <?php endforeach ?>
            </div>
        <?php endforeach ?>
    </div>

<?php

do_action
'yit_after_metaboxes_tab' );