]> scripts.mit.edu Git - autoinstalls/wordpress.git/blobdiff - wp-admin/update-core.php
Wordpress 3.6
[autoinstalls/wordpress.git] / wp-admin / update-core.php
index c071dc23822df128a792314be3d80b5eea2fed7f..c8f58774296342707420dde77afec63f04a923d1 100644 (file)
@@ -18,7 +18,7 @@ if ( is_multisite() && ! is_network_admin() ) {
        exit();
 }
 
-if ( ! current_user_can( 'update_core' ) )
+if ( ! current_user_can( 'update_core' ) && ! current_user_can( 'update_themes' ) && ! current_user_can( 'update_plugins' ) )
        wp_die( __( 'You do not have sufficient permissions to update this site.' ) );
 
 function list_core_update( $update ) {
@@ -36,7 +36,7 @@ function list_core_update( $update ) {
        $mysql_version  = $wpdb->db_version();
        $show_buttons = true;
        if ( 'development' == $update->response ) {
-               $message = __('You are using a development version of WordPress.  You can update to the latest nightly build automatically or download the nightly build and install it manually:');
+               $message = __('You are using a development version of WordPress. You can update to the latest nightly build automatically or download the nightly build and install it manually:');
                $download = __('Download nightly build');
        } else {
                if ( $current ) {
@@ -74,7 +74,7 @@ function list_core_update( $update ) {
        echo '<input name="locale" value="'. esc_attr($update->locale) .'" type="hidden"/>';
        if ( $show_buttons ) {
                if ( $first_pass ) {
-                       submit_button( $submit, $current ? 'button' : 'primary', 'upgrade', false );
+                       submit_button( $submit, $current ? 'button' : 'primary regular', 'upgrade', false );
                        $first_pass = false;
                } else {
                        submit_button( $submit, 'button', 'upgrade', false );
@@ -131,28 +131,9 @@ function dismissed_updates() {
  * @return null
  */
 function core_upgrade_preamble() {
-       global $upgrade_error, $wp_version;
+       global $wp_version;
 
        $updates = get_core_updates();
-?>
-       <div class="wrap">
-       <?php screen_icon('tools'); ?>
-       <h2><?php _e('WordPress Updates'); ?></h2>
-<?php
-       if ( $upgrade_error ) {
-               echo '<div class="error"><p>';
-               if ( $upgrade_error == 'themes' )
-                       _e('Please select one or more themes to update.');
-               else
-                       _e('Please select one or more plugins to update.');
-               echo '</p></div>';
-       }
-
-       echo '<p>';
-       /* translators: %1 date, %2 time. */
-       printf( __('Last checked on %1$s at %2$s.'), date_i18n( get_option( 'date_format' ) ), date_i18n( get_option( 'time_format' ) ) );
-       echo ' &nbsp; <a class="button" href="' . esc_url( self_admin_url('update-core.php') ) . '">' . __( 'Check Again' ) . '</a>';
-       echo '</p>';
 
        if ( !isset($updates[0]->response) || 'latest' == $updates[0]->response ) {
                echo '<h3>';
@@ -180,16 +161,9 @@ function core_upgrade_preamble() {
                echo '<p>' . __( 'While your site is being updated, it will be in maintenance mode. As soon as your updates are complete, your site will return to normal.' ) . '</p>';
        } else {
                list( $normalized_version ) = explode( '-', $wp_version );
-               echo '<p>' . sprintf( __( '<a href="%s">Learn more about WordPress %s</a>.' ), esc_url( admin_url( 'about.php' ) ), $normalized_version ) . '</p>';
+               echo '<p>' . sprintf( __( '<a href="%s">Learn more about WordPress %s</a>.' ), esc_url( self_admin_url( 'about.php' ) ), $normalized_version ) . '</p>';
        }
        dismissed_updates();
-
-       if ( current_user_can( 'update_plugins' ) )
-               list_plugin_updates();
-       if ( current_user_can( 'update_themes' ) )
-               list_theme_updates();
-       do_action('core_upgrade_preamble');
-       echo '</div>';
 }
 
 function list_plugin_updates() {
@@ -214,7 +188,7 @@ function list_plugin_updates() {
        ?>
 <h3><?php _e( 'Plugins' ); ?></h3>
 <p><?php _e( 'The following plugins have new versions available. Check the ones you want to update and then click &#8220;Update Plugins&#8221;.' ); ?></p>
-<form method="post" action="<?php echo $form_action; ?>" name="upgrade-plugins" class="upgrade">
+<form method="post" action="<?php echo esc_url( $form_action ); ?>" name="upgrade-plugins" class="upgrade">
 <?php wp_nonce_field('upgrade-core'); ?>
 <p><input id="upgrade-plugins" class="button" type="submit" value="<?php esc_attr_e('Update Plugins'); ?>" name="upgrade" /></p>
 <table class="widefat" cellspacing="0" id="update-plugins-table">
@@ -260,7 +234,7 @@ function list_plugin_updates() {
                        $upgrade_notice = '';
                }
 
-               $details_url = self_admin_url('plugin-install.php?tab=plugin-information&plugin=' . $plugin_data->update->slug . '&TB_iframe=true&width=640&height=662');
+               $details_url = self_admin_url('plugin-install.php?tab=plugin-information&plugin=' . $plugin_data->update->slug . '&section=changelog&TB_iframe=true&width=640&height=662');
                $details_text = sprintf(__('View version %1$s details'), $plugin_data->update->new_version);
                $details = sprintf('<a href="%1$s" class="thickbox" title="%2$s">%3$s</a>.', esc_url($details_url), esc_attr($plugin_data->Name), $details_text);
 
@@ -292,7 +266,7 @@ function list_theme_updates() {
 <h3><?php _e( 'Themes' ); ?></h3>
 <p><?php _e( 'The following themes have new versions available. Check the ones you want to update and then click &#8220;Update Themes&#8221;.' ); ?></p>
 <p><?php printf( __('<strong>Please Note:</strong> Any customizations you have made to theme files will be lost. Please consider using <a href="%s">child themes</a> for modifications.'), _x('http://codex.wordpress.org/Child_Themes', 'Link used in suggestion to use child themes in GUU') ); ?></p>
-<form method="post" action="<?php echo $form_action; ?>" name="upgrade-themes" class="upgrade">
+<form method="post" action="<?php echo esc_url( $form_action ); ?>" name="upgrade-themes" class="upgrade">
 <?php wp_nonce_field('upgrade-core'); ?>
 <p><input id="upgrade-themes" class="button" type="submit" value="<?php esc_attr_e('Update Themes'); ?>" name="upgrade" /></p>
 <table class="widefat" cellspacing="0" id="update-themes-table">
@@ -311,13 +285,11 @@ function list_theme_updates() {
        </tfoot>
        <tbody class="plugins">
 <?php
-       foreach ( (array) $themes as $stylesheet => $theme_data) {
-               $screenshot = $theme_data->{'Theme Root URI'} . '/' . $stylesheet . '/' . $theme_data->Screenshot;
-
+       foreach ( $themes as $stylesheet => $theme ) {
                echo "
        <tr class='active'>
-               <th scope='row' class='check-column'><input type='checkbox' name='checked[]' value='" . esc_attr($stylesheet) . "' /></th>
-               <td class='plugin-title'><img src='$screenshot' width='64' height='64' style='float:left; padding: 0 5px 5px' /><strong>{$theme_data->Name}</strong>" .  sprintf(__('You have version %1$s installed. Update to %2$s.'), $theme_data->Version, $theme_data->update['new_version']) . "</td>
+               <th scope='row' class='check-column'><input type='checkbox' name='checked[]' value='" . esc_attr( $stylesheet ) . "' /></th>
+               <td class='plugin-title'><img src='" . esc_url( $theme->get_screenshot() ) . "' width='85' height='64' style='float:left; padding: 0 5px 5px' /><strong>" . $theme->display('Name') . '</strong> ' . sprintf( __( 'You have version %1$s installed. Update to %2$s.' ), $theme->display('Version'), $theme->update['new_version'] ) . "</td>
        </tr>";
        }
 ?>
@@ -352,7 +324,6 @@ function do_core_upgrade( $reinstall = false ) {
        if ( !$update )
                return;
 
-
        if ( ! WP_Filesystem($credentials, ABSPATH) ) {
                request_filesystem_credentials($url, '', true, ABSPATH); //Failed to connect, Error and request again
                return;
@@ -383,12 +354,12 @@ function do_core_upgrade( $reinstall = false ) {
        }
 
        show_message( __('WordPress updated successfully') );
-       show_message( '<span class="hide-if-no-js">' . sprintf( __( 'Welcome to WordPress %1$s. You will be redirected to the About WordPress screen. If not, click <a href="%s">here</a>.' ), $result, esc_url( admin_url( 'about.php?updated' ) ) ) . '</span>' );
-       show_message( '<span class="hide-if-js">' . sprintf( __( 'Welcome to WordPress %1$s. <a href="%2$s">Learn more</a>.' ), $result, esc_url( admin_url( 'about.php?updated' ) ) ) . '</span>' );
+       show_message( '<span class="hide-if-no-js">' . sprintf( __( 'Welcome to WordPress %1$s. You will be redirected to the About WordPress screen. If not, click <a href="%2$s">here</a>.' ), $result, esc_url( self_admin_url( 'about.php?updated' ) ) ) . '</span>' );
+       show_message( '<span class="hide-if-js">' . sprintf( __( 'Welcome to WordPress %1$s. <a href="%2$s">Learn more</a>.' ), $result, esc_url( self_admin_url( 'about.php?updated' ) ) ) . '</span>' );
        ?>
        </div>
        <script type="text/javascript">
-       window.location = '<?php echo admin_url( 'about.php?upgraded' ); ?>';
+       window.location = '<?php echo self_admin_url( 'about.php?updated' ); ?>';
        </script>
        <?php
 }
@@ -447,7 +418,6 @@ get_current_screen()->add_help_tab( array(
        '<p>' . __('To update themes or plugins from this screen, use the checkboxes to make your selection and click on the appropriate Update button. Check the box at the top of the Themes or Plugins section to select all and update them all at once.') . '</p>'
 ) );
 
-
 get_current_screen()->set_help_sidebar(
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Dashboard_Updates_Screen" target="_blank">Documentation on Updating WordPress</a>') . '</p>' .
@@ -458,10 +428,41 @@ if ( 'upgrade-core' == $action ) {
 
        wp_version_check();
        require_once(ABSPATH . 'wp-admin/admin-header.php');
-       core_upgrade_preamble();
+       ?>
+       <div class="wrap">
+       <?php screen_icon('tools'); ?>
+       <h2><?php _e('WordPress Updates'); ?></h2>
+       <?php
+       if ( $upgrade_error ) {
+               echo '<div class="error"><p>';
+               if ( $upgrade_error == 'themes' )
+                       _e('Please select one or more themes to update.');
+               else
+                       _e('Please select one or more plugins to update.');
+               echo '</p></div>';
+       }
+
+       echo '<p>';
+       /* translators: %1 date, %2 time. */
+       printf( __('Last checked on %1$s at %2$s.'), date_i18n( get_option( 'date_format' ) ), date_i18n( get_option( 'time_format' ) ) );
+       echo ' &nbsp; <a class="button" href="' . esc_url( self_admin_url('update-core.php') ) . '">' . __( 'Check Again' ) . '</a>';
+       echo '</p>';
+
+       if ( current_user_can( 'update_core' ) )
+               core_upgrade_preamble();
+       if ( current_user_can( 'update_plugins' ) )
+               list_plugin_updates();
+       if ( current_user_can( 'update_themes' ) )
+               list_theme_updates();
+       do_action('core_upgrade_preamble');
+       echo '</div>';
        include(ABSPATH . 'wp-admin/admin-footer.php');
 
 } elseif ( 'do-core-upgrade' == $action || 'do-core-reinstall' == $action ) {
+
+       if ( ! current_user_can( 'update_core' ) )
+               wp_die( __( 'You do not have sufficient permissions to update this site.' ) );
+
        check_admin_referer('upgrade-core');
 
        // do the (un)dismiss actions before headers,