/users/patterns/www2_Hacked_x/blog/wp-includes/customize/class-wp-customize-themes-panel.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
<?php
/**
 * Customize API: WP_Customize_Themes_Panel class
 *
 * @package WordPress
 * @subpackage Customize
 * @since 4.9.0
 */

/**
 * Customize Themes Panel Class
 *
 * @since 4.9.0
 *
 * @see WP_Customize_Panel
 */
class WP_Customize_Themes_Panel extends WP_Customize_Panel {

    
/**
     * Panel type.
     *
     * @since 4.9.0
     * @var string
     */
    
public $type 'themes';

    
/**
     * An Underscore (JS) template for rendering this panel's container.
     *
     * The themes panel renders a custom panel heading with the current theme and a switch themes button.
     *
     * @see WP_Customize_Panel::print_template()
     *
     * @since 4.9.0
     */
    
protected function render_template() {
        
?>
        <li id="accordion-section-{{ data.id }}" class="accordion-section control-panel-themes">
            <h3 class="accordion-section-title">
                <?php
                
if ( $this->manager->is_theme_active() ) {
                    echo 
'<span class="customize-action">' __'Active theme' ) . '</span> {{ data.title }}';
                } else {
                    echo 
'<span class="customize-action">' __'Previewing theme' ) . '</span> {{ data.title }}';
                }
                
?>

                <?php if ( current_user_can'switch_themes' ) ) : ?>
                    <button type="button" class="button change-theme" aria-label="<?php esc_attr_e'Change theme' ); ?>"><?php _ex'Change''theme' ); ?></button>
                <?php endif; ?>
            </h3>
            <ul class="accordion-sub-container control-panel-content"></ul>
        </li>
        <?php
    
}

    
/**
     * An Underscore (JS) template for this panel's content (but not its container).
     *
     * Class variables for this panel class are available in the `data` JS object;
     * export custom variables by overriding WP_Customize_Panel::json().
     *
     * @since 4.9.0
     *
     * @see WP_Customize_Panel::print_template()
     */
    
protected function content_template() {
        
?>
        <li class="panel-meta customize-info accordion-section <# if ( ! data.description ) { #> cannot-expand<# } #>">
            <button class="customize-panel-back" tabindex="-1" type="button"><span class="screen-reader-text"><?php _e'Back' ); ?></span></button>
            <div class="accordion-section-title">
                <span class="preview-notice">
                    <?php
                    
/* translators: %s: themes panel title in the Customizer */
                    
echo sprintf__'You are browsing %s' ), '<strong class="panel-title">' __'Themes' ) . '</strong>' ); // Separate strings for consistency with other panels.
                    
?>
                </span>
                <?php if ( current_user_can'install_themes' ) && ! is_multisite() ) : ?>
                    <# if ( data.description ) { #>
                        <button class="customize-help-toggle dashicons dashicons-editor-help" type="button" aria-expanded="false"><span class="screen-reader-text"><?php _e'Help' ); ?></span></button>
                    <# } #>
                <?php endif; ?>
            </div>
            <?php if ( current_user_can'install_themes' ) && ! is_multisite() ) : ?>
                <# if ( data.description ) { #>
                    <div class="description customize-panel-description">
                        {{{ data.description }}}
                    </div>
                <# } #>
            <?php endif; ?>

            <div class="customize-control-notifications-container"></div>
        </li>
        <li class="customize-themes-full-container-container">
            <div class="customize-themes-full-container">
                <div class="customize-themes-notifications"></div>
            </div>
        </li>
        <?php
    
}
}