WordPress.org

Make WordPress Core

Ticket #28753: 28753.3.diff

File 28753.3.diff, 21.6 KB (added by paulwilde, 3 years ago)
  • trunk/src/wp-admin/css/forms.css

     
    751751        margin: -3px 3px; 
    752752} 
    753753 
     754/*------------------------------------------------------------------------------ 
     755  21.0 - Upload File 
     756------------------------------------------------------------------------------*/ 
     757 
     758.wp-upload-container { 
     759        -webkit-box-sizing: border-box; 
     760        -moz-box-sizing: border-box; 
     761        box-sizing: border-box; 
     762        margin: 0px 0 0; 
     763        padding: 0; 
     764        width: 100%; 
     765        overflow: hidden; 
     766        position: relative; 
     767        top: 10px; 
     768} 
     769.wp-upload-container-hidden { 
     770        display: none; 
     771} 
     772.wp-upload-container .wp-upload-form { 
     773        background: #fafafa; 
     774        border: 1px solid #e5e5e5; 
     775        padding: 30px; 
     776        margin: 30px auto; 
     777        max-width: 380px; 
     778} 
     779.wp-upload-container .install-help { 
     780        color: #999; 
     781        font-size: 18px; 
     782        font-style: normal; 
     783        margin: 0; 
     784        padding: 40px 0 0; 
     785        text-align: center; 
     786} 
     787 
     788body.show-upload-container .hide-on-upload, 
     789body.show-upload-container .wp-upload-show { 
     790        display: none; 
     791} 
     792body.show-upload-container .wp-upload-container-hidden { 
     793        display: block; 
     794} 
     795 
     796.wp-upload-hide { 
     797        display: none; 
     798} 
     799body.show-upload-container .wp-upload-hide { 
     800        display: inline; 
     801} 
     802 
    754803/* =Media Queries 
    755804-------------------------------------------------------------- */ 
    756805 
     806@media only screen and (max-width: 1120px) { 
     807        .wp-upload-container .wp-upload-form { 
     808                margin: 20px 0; 
     809                max-width: 100%; 
     810        } 
     811        .wp-upload-container .install-help { 
     812                font-size: 15px; 
     813                padding: 20px 0 0; 
     814                text-align: left; 
     815        } 
     816} 
     817 
    757818@media screen and ( max-width: 782px ) { 
    758819        /* Input Elements */ 
    759820        textarea { 
  • trunk/src/wp-admin/css/themes.css

     
    11031103        position: relative; 
    11041104        width: 100%; 
    11051105} 
    1106 .theme-install-php a.upload, 
    1107 .theme-install-php a.browse-themes { 
    1108         cursor: pointer; 
    1109 } 
    1110 .theme-install-php a.browse-themes, 
    1111 .theme-install-php.show-upload-theme a.upload { 
    1112         display: none; 
    1113 } 
    1114 .theme-install-php.show-upload-theme a.browse-themes { 
    1115         display: inline; 
    1116 } 
    1117 .upload-theme { 
    1118         -webkit-box-sizing: border-box; 
    1119         -moz-box-sizing: border-box; 
    1120         box-sizing: border-box; 
    1121         display: none; 
    1122         margin: 0px 0 0; 
    1123         padding: 0; 
    1124         width: 100%; 
    1125         overflow: hidden; 
    1126         position: relative; 
    1127         top: 10px; 
    1128 } 
    1129 body.show-upload-theme .upload-theme { 
    1130         display: block; 
    1131 } 
    1132 .upload-theme .wp-upload-form { 
    1133         background: #fafafa; 
    1134         border: 1px solid #e5e5e5; 
    1135         padding: 30px; 
    1136         margin: 30px auto; 
    1137         max-width: 380px; 
    1138 } 
    1139 .upload-theme .install-help { 
    1140         color: #999; 
    1141         font-size: 18px; 
    1142         font-style: normal; 
    1143         margin: 0; 
    1144         padding: 40px 0 0; 
    1145         text-align: center; 
    1146 } 
    1147 body.show-upload-theme .upload-theme + .theme-navigation, 
    1148 body.show-upload-theme .upload-theme + .theme-navigation + .theme-browser { 
    1149         display: none; 
    1150 } 
    11511106.theme-navigation .theme-count { 
    11521107        margin-left: 0; 
    11531108        position: absolute; 
     
    13401295body.no-results p.no-themes { 
    13411296        display: block; 
    13421297} 
    1343 body.show-upload-theme p.no-themes { 
     1298body.show-upload-container p.no-themes { 
    13441299        display: none !important; 
    13451300} 
    13461301 
     
    13581313        .more-filters-container { 
    13591314                border-bottom: 1px solid #eee; 
    13601315        } 
    1361         .upload-theme .wp-upload-form { 
    1362                 margin: 20px 0; 
    1363                 max-width: 100%; 
    1364         } 
    1365         .upload-theme .install-help { 
    1366                 font-size: 15px; 
    1367                 padding: 20px 0 0; 
    1368                 text-align: left; 
    1369         } 
    13701316        .more-filters-container .filters-group { 
    13711317                margin-bottom: 0; 
    13721318                margin-top: 5px; 
  • trunk/src/wp-admin/includes/class-wp-plugin-install-list-table.php

     
    2727                // These are the tabs which are shown on the page 
    2828                $tabs = array(); 
    2929                $tabs['dashboard'] = __( 'Search' ); 
    30                 if ( 'search' == $tab ) 
     30                if ( 'search' == $tab ) { 
    3131                        $tabs['search'] = __( 'Search Results' ); 
    32                 $tabs['upload']    = __( 'Upload' ); 
     32                } 
    3333                $tabs['featured']  = _x( 'Featured', 'Plugin Installer' ); 
    3434                $tabs['popular']   = _x( 'Popular', 'Plugin Installer' ); 
    3535                $tabs['new']       = _x( 'Newest', 'Plugin Installer' ); 
     
    4646                 * @since 2.7.0 
    4747                 * 
    4848                 * @param array $tabs The tabs shown on the Plugin Install screen. Defaults are 'dashboard', 'search', 
    49                  *                    'upload', 'featured', 'popular', 'new', and 'favorites'. 
     49                 *                    'featured', 'popular', 'new', and 'favorites'. 
    5050                 */ 
    5151                $tabs = apply_filters( 'install_plugins_tabs', $tabs ); 
    5252 
     
    112112                 * Filter API request arguments for each Plugin Install screen tab. 
    113113                 * 
    114114                 * The dynamic portion of the hook name, $tab, refers to the plugin install tabs. 
    115                  * Default tabs are 'dashboard', 'search', 'upload', 'featured', 'popular', 'new', 
     115                 * Default tabs are 'dashboard', 'search', 'featured', 'popular', 'new', 
    116116                 * and 'favorites'. 
    117117                 * 
    118118                 * @since 3.7.0 
  • trunk/src/wp-admin/includes/plugin-install.php

     
    126126 
    127127function install_dashboard() { 
    128128        ?> 
    129         <p><?php printf( __( 'Plugins extend and expand the functionality of WordPress. You may automatically install plugins from the <a href="%1$s">WordPress Plugin Directory</a> or upload a plugin in .zip format via <a href="%2$s">this page</a>.' ), 'https://wordpress.org/plugins/', self_admin_url( 'plugin-install.php?tab=upload' ) ); ?></p> 
     129        <p><?php printf( __( 'Plugins extend and expand the functionality of WordPress. You may automatically install plugins from the <a href="%1$s">WordPress Plugin Directory</a> or <a href="%2$s" class="wp-upload-show">upload a plugin</a> in .zip format.' ), 'https://wordpress.org/plugins/', self_admin_url( 'plugin-install.php?upload' ) ); ?></p> 
    130130 
    131131        <h4><?php _e('Search') ?></h4> 
    132132        <?php install_search_form( false ); ?> 
     
    187187 */ 
    188188function install_plugins_upload( $page = 1 ) { 
    189189?> 
    190         <h4><?php _e('Install a plugin in .zip format'); ?></h4> 
    191         <p class="install-help"><?php _e('If you have a plugin in a .zip format, you may install it by uploading it here.'); ?></p> 
    192         <form method="post" enctype="multipart/form-data" class="wp-upload-form" action="<?php echo self_admin_url('update.php?action=upload-plugin'); ?>"> 
    193                 <?php wp_nonce_field( 'plugin-upload'); ?> 
    194                 <label class="screen-reader-text" for="pluginzip"><?php _e('Plugin zip file'); ?></label> 
    195                 <input type="file" id="pluginzip" name="pluginzip" /> 
    196                 <?php submit_button( __( 'Install Now' ), 'button', 'install-plugin-submit', false ); ?> 
    197         </form> 
     190        <div class="wp-upload-container wp-upload-container-hidden"> 
     191                <p class="install-help"><?php _e( 'If you have a plugin in a .zip format, you may install it by uploading it here.' ); ?></p> 
     192                <form method="post" enctype="multipart/form-data" class="wp-upload-form" action="<?php echo self_admin_url( 'update.php?action=upload-plugin' ); ?>"> 
     193                        <?php wp_nonce_field( 'plugin-upload' ); ?> 
     194                        <label class="screen-reader-text" for="pluginzip"><?php _e( 'Plugin zip file' ); ?></label> 
     195                        <input type="file" id="pluginzip" name="pluginzip" /> 
     196                        <?php submit_button( __( 'Install Now' ), 'button', 'install-plugin-submit', false ); ?> 
     197                </form> 
     198        </div> 
    198199<?php 
    199200} 
    200201add_action('install_plugins_upload', 'install_plugins_upload', 10, 1); 
  • trunk/src/wp-admin/includes/theme-install.php

     
    136136 
    137137function install_themes_upload() { 
    138138?> 
    139 <p class="install-help"><?php _e('If you have a theme in a .zip format, you may install it by uploading it here.'); ?></p> 
    140 <form method="post" enctype="multipart/form-data" class="wp-upload-form" action="<?php echo self_admin_url('update.php?action=upload-theme'); ?>"> 
    141         <?php wp_nonce_field( 'theme-upload'); ?> 
    142         <input type="file" name="themezip" /> 
    143         <?php submit_button( __( 'Install Now' ), 'button', 'install-theme-submit', false ); ?> 
    144 </form> 
    145         <?php 
     139        <div class="wp-upload-container wp-upload-container-hidden"> 
     140                <p class="install-help"><?php _e( 'If you have a theme in a .zip format, you may install it by uploading it here.' ); ?></p> 
     141                <form method="post" enctype="multipart/form-data" class="wp-upload-form" action="<?php echo self_admin_url( 'update.php?action=upload-theme' ); ?>"> 
     142                        <?php wp_nonce_field( 'theme-upload' ); ?> 
     143                        <input type="file" name="themezip" /> 
     144                        <?php submit_button( __( 'Install Now' ), 'button', 'install-theme-submit', false ); ?> 
     145                </form> 
     146        </div> 
     147<?php 
    146148} 
    147149// add_action('install_themes_upload', 'install_themes_upload', 10, 0); 
    148150 
  • trunk/src/wp-admin/js/plugin-install.js

     
    1 /* global plugininstallL10n, tb_click, confirm */ 
    2  
    3 /* Plugin Browser Thickbox related JS*/ 
    4 var tb_position; 
    5 jQuery( document ).ready( function( $ ) { 
    6         tb_position = function() { 
    7                 var tbWindow = $( '#TB_window' ), 
    8                         width = $( window ).width(), 
    9                         H = $( window ).height() - ( ( 850 < width ) ? 60 : 20 ), 
    10                         W = ( 850 < width ) ? 830 : width - 20; 
    11  
    12                 if ( tbWindow.size() ) { 
    13                         tbWindow.width( W ).height( H ); 
    14                         $( '#TB_iframeContent' ).width( W ).height( H ); 
    15                         tbWindow.css({ 
    16                                 'margin-left': '-' + parseInt( ( W / 2 ), 10 ) + 'px' 
    17                         }); 
    18                         if ( typeof document.body.style.maxWidth !== 'undefined' ) { 
    19                                 tbWindow.css({ 
    20                                         'top': ( ( 850 < width ) ? 30 : 10 ) + 'px', 
    21                                         'margin-top': '0' 
    22                                 }); 
    23                         } 
    24                 } 
    25  
    26                 return $( 'a.thickbox' ).each( function() { 
    27                         var href = $( this ).attr( 'href' ); 
    28                         if ( ! href ) { 
    29                                 return; 
    30                         } 
    31                         href = href.replace( /&width=[0-9]+/g, '' ); 
    32                         href = href.replace( /&height=[0-9]+/g, '' ); 
    33                         $(this).attr( 'href', href + '&width=' + W + '&height=' + ( H ) ); 
    34                 }); 
    35         }; 
    36  
    37         $( window ).resize( function() { 
    38                 tb_position(); 
    39         }); 
    40  
    41         $('.plugins').on( 'click', 'a.thickbox', function() { 
    42                 tb_click.call(this); 
    43  
    44                 $('#TB_title').css({'background-color':'#222','color':'#cfcfcf'}); 
    45                 $('#TB_ajaxWindowTitle').html('<strong>' + plugininstallL10n.plugin_information + '</strong>&nbsp;' + $(this).attr('title') ); 
    46                 return false; 
    47         }); 
    48  
    49         /* Plugin install related JS*/ 
    50         $( '#plugin-information-tabs a' ).click( function( event ) { 
    51                 var tab = $( this ).attr( 'name' ); 
    52                 event.preventDefault(); 
    53                 //Flip the tab 
    54                 $( '#plugin-information-tabs a.current' ).removeClass( 'current' ); 
    55                 $( this ).addClass( 'current' ); 
    56                 //Only show the fyi box in the description section, on smaller screen, where it's otherwise always displayed at the top. 
    57                 if ( 'description' != $( this ).attr( 'name' ) && $( 'body').width() < 830 ) 
    58                         $( '#plugin-information-content div.fyi' ).hide(); 
    59                 else 
    60                         $( '#plugin-information-content div.fyi' ).show(); 
    61                 //Flip the content. 
    62                 $( '#section-holder div.section' ).hide(); //Hide 'em all 
    63                 $( '#section-' + tab ).show(); 
    64         }); 
    65  
    66         $( 'a.install-now' ).click( function() { 
    67                 return confirm( plugininstallL10n.ays ); 
    68         }); 
    69 }); 
  • trunk/src/wp-admin/js/plugin.js

     
     1window.wp = window.wp || {}; 
     2 
     3(function($) { 
     4 
     5// Set up our namespace... 
     6var plugins, l10n; 
     7plugins = wp.plugins = wp.plugins || {}; 
     8 
     9// Store the plugin data and settings for organized and quick access 
     10plugins.data = _wpPluginSettings; 
     11l10n = plugins.data.l10n; 
     12 
     13// Setup app structure 
     14_.extend( plugins, {  view: {}, routes: {} }); 
     15 
     16plugins.InstallerRouter = Backbone.Router.extend({ 
     17 
     18        routes: { 
     19                'plugin-install.php?upload': 'upload', 
     20                'plugin-install.php': 'sort' 
     21        }, 
     22 
     23        baseUrl: function( url ) { 
     24                return 'plugin-install.php' + url; 
     25        }, 
     26         
     27        navigate: function() { 
     28                if ( Backbone.history._hasPushState ) { 
     29                        Backbone.Router.prototype.navigate.apply( this, arguments ); 
     30                } 
     31        } 
     32 
     33}); 
     34 
     35plugins.view.Installer = wp.Backbone.View.extend({ 
     36 
     37        // Initial render method 
     38        render: function() { 
     39                var self = this; 
     40 
     41                this.uploader(); 
     42        }, 
     43         
     44        uploader: function() { 
     45                $( '.wp-upload-show' ).on( 'click', function( event ) { 
     46                        event.preventDefault(); 
     47                        $( 'body' ).addClass( 'show-upload-container' ); 
     48                        plugins.router.navigate( plugins.router.baseUrl( '?upload' ), { replace: true } ); 
     49                }); 
     50                $( '.wp-upload-hide' ).on( 'click', function( event ) { 
     51                        event.preventDefault(); 
     52                        $( 'body' ).removeClass( 'show-upload-container' ); 
     53                        plugins.router.navigate( plugins.router.baseUrl( '' ), { replace: true } ); 
     54                }); 
     55        }, 
     56 
     57}); 
     58 
     59plugins.RunInstaller = { 
     60 
     61        init: function() { 
     62                this.view = new plugins.view.Installer(); 
     63                this.render(); 
     64        }, 
     65 
     66        render: function() { 
     67                this.routes(); 
     68                this.view.render(); 
     69                 
     70                Backbone.history.start({ 
     71                        root: plugins.data.settings.adminUrl, 
     72                        pushState: true, 
     73                        hashChange: false 
     74                }); 
     75        }, 
     76 
     77        routes: function() { 
     78                var self = this, 
     79                        request = {}; 
     80 
     81                // Bind to our global `wp.plugins` object 
     82                plugins.router = new plugins.InstallerRouter(); 
     83 
     84                // Support the `upload` route by going straight to upload section 
     85                plugins.router.on( 'route:upload', function() { 
     86                        $( '.wp-upload-show' ).trigger( 'click' ); 
     87                }); 
     88        }, 
     89 
     90} 
     91 
     92// Ready... 
     93$( document ).ready(function() { 
     94 
     95        plugins.RunInstaller.init(); 
     96 
     97}); 
     98 
     99// Plugin Browser Thickbox related JS 
     100var tb_position; 
     101$( document ).ready(function() { 
     102        tb_position = function() { 
     103                var tbWindow = $( '#TB_window' ), 
     104                        width = $( window ).width(), 
     105                        H = $( window ).height() - ( ( 850 < width ) ? 60 : 20 ), 
     106                        W = ( 850 < width ) ? 830 : width - 20; 
     107 
     108                if ( tbWindow.size() ) { 
     109                        tbWindow.width( W ).height( H ); 
     110                        $( '#TB_iframeContent' ).width( W ).height( H ); 
     111                        tbWindow.css({ 
     112                                'margin-left': '-' + parseInt( ( W / 2 ), 10 ) + 'px' 
     113                        }); 
     114                        if ( typeof document.body.style.maxWidth !== 'undefined' ) { 
     115                                tbWindow.css({ 
     116                                        'top': ( ( 850 < width ) ? 30 : 10 ) + 'px', 
     117                                        'margin-top': '0' 
     118                                }); 
     119                        } 
     120                } 
     121 
     122                return $( 'a.thickbox' ).each( function() { 
     123                        var href = $( this ).attr( 'href' ); 
     124                        if ( ! href ) { 
     125                                return; 
     126                        } 
     127                        href = href.replace( /&width=[0-9]+/g, '' ); 
     128                        href = href.replace( /&height=[0-9]+/g, '' ); 
     129                        $(this).attr( 'href', href + '&width=' + W + '&height=' + ( H ) ); 
     130                }); 
     131        }; 
     132 
     133        $( window ).resize( function() { 
     134                tb_position(); 
     135        }); 
     136 
     137        $('.plugins').on( 'click', 'a.thickbox', function() { 
     138                tb_click.call(this); 
     139 
     140                $('#TB_title').css({'background-color':'#222','color':'#cfcfcf'}); 
     141                $('#TB_ajaxWindowTitle').html('<strong>' + l10n.pluginInformation + '</strong>&nbsp;' + $(this).attr('title') ); 
     142                return false; 
     143        }); 
     144 
     145        /* Plugin install related JS*/ 
     146        $( '#plugin-information-tabs a' ).click( function( event ) { 
     147                var tab = $( this ).attr( 'name' ); 
     148                event.preventDefault(); 
     149                //Flip the tab 
     150                $( '#plugin-information-tabs a.current' ).removeClass( 'current' ); 
     151                $( this ).addClass( 'current' ); 
     152                //Only show the fyi box in the description section, on smaller screen, where it's otherwise always displayed at the top. 
     153                if ( 'description' != $( this ).attr( 'name' ) && $( 'body').width() < 830 ) 
     154                        $( '#plugin-information-content div.fyi' ).hide(); 
     155                else 
     156                        $( '#plugin-information-content div.fyi' ).show(); 
     157                //Flip the content. 
     158                $( '#section-holder div.section' ).hide(); //Hide 'em all 
     159                $( '#section-' + tab ).show(); 
     160        }); 
     161 
     162        $( 'a.install-now' ).click( function() { 
     163                return confirm( l10n.ays ); 
     164        }); 
     165}); 
     166 
     167})( jQuery ); 
     168 No newline at end of file 
  • trunk/src/wp-admin/js/theme.js

     
    14971497        searchContainer: $( '.theme-navigation' ), 
    14981498 
    14991499        uploader: function() { 
    1500                 $( 'a.upload' ).on( 'click', function( event ) { 
     1500                $( '.wp-upload-show' ).on( 'click', function( event ) { 
    15011501                        event.preventDefault(); 
    1502                         $( 'body' ).addClass( 'show-upload-theme' ); 
     1502                        $( 'body' ).addClass( 'show-upload-container' ); 
    15031503                        themes.router.navigate( themes.router.baseUrl( '?upload' ), { replace: true } ); 
    15041504                }); 
    1505                 $( 'a.browse-themes' ).on( 'click', function( event ) { 
     1505                $( '.wp-upload-hide' ).on( 'click', function( event ) { 
    15061506                        event.preventDefault(); 
    1507                         $( 'body' ).removeClass( 'show-upload-theme' ); 
     1507                        $( 'body' ).removeClass( 'show-upload-container' ); 
    15081508                        themes.router.navigate( themes.router.baseUrl( '' ), { replace: true } ); 
    15091509                }); 
    15101510        }, 
     
    16421642 
    16431643                // Support the `upload` route by going straight to upload section 
    16441644                themes.router.on( 'route:upload', function() { 
    1645                         $( 'a.upload' ).trigger( 'click' ); 
     1645                        $( '.wp-upload-show' ).trigger( 'click' ); 
    16461646                }); 
    16471647 
    16481648                // The `search` route event. The router populates the input field. 
  • trunk/src/wp-admin/plugin-install.php

     
    2929$title = __('Install Plugins'); 
    3030$parent_file = 'plugins.php'; 
    3131 
    32 wp_enqueue_script( 'plugin-install' ); 
     32wp_localize_script( 'plugin', '_wpPluginSettings', array( 
     33        'plugins' => false, 
     34        'settings' => array( 
     35                'isInstall'     => true, 
     36                'canInstall'    => current_user_can( 'install_plugins' ), 
     37                'installURI'    => current_user_can( 'install_plugins' ) ? self_admin_url( 'plugin-install.php' ) : null, 
     38                'adminUrl'      => parse_url( self_admin_url(), PHP_URL_PATH ) 
     39        ), 
     40        'l10n' => array( 
     41                'pluginInformation' => __('Plugin Information:'), 
     42                'ays' => __('Are you sure you want to install this plugin?') 
     43        ), 
     44) ); 
     45 
     46wp_enqueue_script( 'plugin' ); 
     47 
    3348if ( 'plugin-information' != $tab ) 
    3449        add_thickbox(); 
    3550 
     
    7388include(ABSPATH . 'wp-admin/admin-header.php'); 
    7489?> 
    7590<div class="wrap"> 
    76 <h2><?php echo esc_html( $title ); ?></h2> 
     91        <h2> 
     92                <?php echo esc_html( $title ); ?> 
     93                 
     94                <a href="#" class="wp-upload-show add-new-h2"><?php echo __( 'Upload Plugin' ); ?></a> 
     95                <a href="#" class="wp-upload-hide add-new-h2"><?php echo __( 'Browse', 'plugins' ); ?></a> 
     96        </h2> 
    7797 
    78 <?php $wp_list_table->views(); ?> 
     98        <?php install_plugins_upload(); ?> 
    7999 
    80 <br class="clear" /> 
    81 <?php 
    82 /** 
    83  * Fires after the plugins list table in each tab of the Install Plugins screen. 
    84  * 
    85  * The dynamic portion of the action hook, $tab, allows for targeting 
    86  * individual tabs, for instance 'install_plugins_plugin-information'. 
    87  * 
    88  * @since 2.7.0 
    89  * 
    90  * @param int $paged The current page number of the plugins list table. 
    91  */ 
    92 ?> 
    93 <?php do_action( "install_plugins_$tab", $paged ); ?> 
     100        <div class="hide-on-upload"> 
     101                <?php $wp_list_table->views(); ?> 
     102         
     103                <br class="clear" /> 
     104         
     105                <?php 
     106                /** 
     107                 * Fires after the plugins list table in each tab of the Install Plugins screen. 
     108                 * 
     109                 * The dynamic portion of the action hook, $tab, allows for targeting 
     110                 * individual tabs, for instance 'install_plugins_plugin-information'. 
     111                 * 
     112                 * @since 2.7.0 
     113                 * 
     114                 * @param int $paged The current page number of the plugins list table. 
     115                 */ 
     116                do_action( "install_plugins_$tab", $paged ); ?> 
     117        </div> 
    94118</div> 
    95119<?php 
    96120/** 
  • trunk/src/wp-admin/theme-install.php

     
    125125                 */ 
    126126                $tabs = apply_filters( 'install_themes_tabs', $tabs ); 
    127127                foreach ( $tabs as $tab_slug => $tab_name ) { 
    128                         echo '<a href="#" class="' . esc_attr( $tab_slug ) . ' add-new-h2">' . $tab_name . '</a>'; 
     128                        $visibility = $tab_slug == 'upload' ? ' wp-upload-show' : ' wp-upload-hide'; 
     129                         
     130                        echo '<a href="#" class="' . esc_attr( $tab_slug ) . $visibility . ' add-new-h2">' . $tab_name . '</a>'; 
    129131                } 
    130132                ?> 
    131133        </h2> 
    132134 
    133         <div class="upload-theme"> 
    134135        <?php install_themes_upload(); ?> 
    135         </div> 
    136  
    137         <div class="theme-navigation"> 
     136         
     137        <div class="theme-navigation hide-on-upload"> 
    138138                <span class="theme-count"></span> 
    139139                <a class="theme-section" href="#" data-sort="featured"><?php _ex( 'Featured', 'themes' ); ?></a> 
    140140                <a class="theme-section" href="#" data-sort="popular"><?php _ex( 'Popular', 'themes' ); ?></a> 
     
    175175                        </div> 
    176176                </div> 
    177177        </div> 
    178         <div class="theme-browser"></div> 
     178        <div class="theme-browser hide-on-upload"></div> 
    179179        <div class="theme-install-overlay wp-full-overlay expanded"></div> 
    180180 
    181181        <p class="no-themes"><?php _e( 'No themes found. Try a different search.' ); ?></p> 
  • trunk/src/wp-includes/script-loader.php

     
    486486                        'error' => __('Error while saving the changes.') 
    487487                ) ); 
    488488 
    489                 $scripts->add( 'plugin-install', "/wp-admin/js/plugin-install$suffix.js", array( 'jquery', 'thickbox' ), false, 1 ); 
    490                 did_action( 'init' ) && $scripts->localize( 'plugin-install', 'plugininstallL10n', array( 
    491                         'plugin_information' => __('Plugin Information:'), 
    492                         'ays' => __('Are you sure you want to install this plugin?') 
    493                 ) ); 
     489                $scripts->add( 'plugin', "/wp-admin/js/plugin$suffix.js", array( 'wp-backbone' ), false, 1 ); 
    494490 
    495491                $scripts->add( 'updates', "/wp-admin/js/updates$suffix.js", array( 'jquery' ) ); 
    496492