<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" /><style type="text/css"><!--
#msg dl { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; }
#msg dl a { font-weight: bold}
#msg dl a:link { color:#fc3; }
#msg dl a:active { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fc0 solid; padding: 6px; }
#msg ul, pre { overflow: auto; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<title>[13604] trunk/wp-admin/update-core.php:
First pass at completing the Themes component of the GUU.</title>
</head>
<body>
<div id="msg">
<dl>
<dt>Revision</dt> <dd><a href="http://trac.wordpress.org/changeset/13604">13604</a></dd>
<dt>Author</dt> <dd>dd32</dd>
<dt>Date</dt> <dd>2010-03-06 09:12:49 +0000 (Sat, 06 Mar 2010)</dd>
</dl>
<h3>Log Message</h3>
<pre>First pass at completing the Themes component of the GUU. See <a href="http://trac.wordpress.org/ticket/12528">#12528</a></pre>
<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkwpadminupdatecorephp">trunk/wp-admin/update-core.php</a></li>
</ul>
</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkwpadminupdatecorephp"></a>
<div class="modfile"><h4>Modified: trunk/wp-admin/update-core.php (13603 => 13604)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/wp-admin/update-core.php        2010-03-06 08:42:04 UTC (rev 13603)
+++ trunk/wp-admin/update-core.php        2010-03-06 09:12:49 UTC (rev 13604)
</span><span class="lines">@@ -152,7 +152,7 @@
</span><span class="cx">         dismissed_updates();
</span><span class="cx">
</span><span class="cx">         list_plugin_updates();
</span><del>-        //list_theme_updates();
</del><ins>+        list_theme_updates();
</ins><span class="cx">         do_action('core_upgrade_preamble');
</span><span class="cx">         echo '</div>';
</span><span class="cx"> }
</span><span class="lines">@@ -239,34 +239,46 @@
</span><span class="cx">         $themes = get_theme_updates();
</span><span class="cx">         if ( empty($themes) )
</span><span class="cx">                 return;
</span><ins>+
+        $form_action = 'update-core.php?action=do-theme-upgrade';
+
</ins><span class="cx"> ?>
</span><span class="cx"> <h3><?php _e('Themes'); ?></h3>
</span><ins>+<p><?php _e('The following themes have new versions available. Check the ones you want to update and then click "Update Themes".'); ?></p>
+<p><?php _e('<strong>Please Note:</strong> Any customizations you have made to the Themes files will be lost. Please consider using <a href="%s">Child Themes</a> for modifications.'); ?></p>
+<form method="post" action="<?php echo $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>
</ins><span class="cx"> <table class="widefat" cellspacing="0" id="update-themes-table">
</span><span class="cx">         <thead>
</span><span class="cx">         <tr>
</span><span class="cx">                 <th scope="col" class="manage-column check-column"><input type="checkbox" /></th>
</span><del>-                <th scope="col" class="manage-column"><?php _e('Name'); ?></th>
</del><ins>+                <th scope="col" class="manage-column"><?php _e('Theme'); ?></th>
</ins><span class="cx">         </tr>
</span><span class="cx">         </thead>
</span><span class="cx">
</span><span class="cx">         <tfoot>
</span><span class="cx">         <tr>
</span><span class="cx">                 <th scope="col" class="manage-column check-column"><input type="checkbox" /></th>
</span><del>-                <th scope="col" class="manage-column"><?php _e('Name'); ?></th>
</del><ins>+                <th scope="col" class="manage-column"><?php _e('Theme'); ?></th>
</ins><span class="cx">         </tr>
</span><span class="cx">         </tfoot>
</span><span class="cx">         <tbody class="plugins">
</span><span class="cx"> <?php
</span><span class="cx">         foreach ( (array) $themes as $stylesheet => $theme_data) {
</span><ins>+                $screenshot = $theme_data->{'Theme Root URI'} . '/' . $stylesheet . '/' . $theme_data->Screenshot;
+                
</ins><span class="cx">                 echo "
</span><span class="cx">         <tr class='active'>
</span><span class="cx">                 <th scope='row' class='check-column'><input type='checkbox' name='checked[]' value='" . esc_attr($stylesheet) . "' /></th>
</span><del>-                <td class='plugin-title'><strong>{$theme_data->Name}</strong></td>
</del><ins>+                <td class='plugin-title'><img src='$screenshot' width='64' height='64' style='float:left; padding: 5px' /><strong>{$theme_data->Name}</strong>" . sprintf(__('You are running version %1$s. Update to %2$s.'), $theme_data->Version, $theme_data->update['new_version']) . "</td>
</ins><span class="cx">         </tr>";
</span><span class="cx">         }
</span><span class="cx"> ?>
</span><span class="cx">         </tbody>
</span><span class="cx"> </table>
</span><ins>+<p><input id="upgrade-themes-2" class="button" type="submit" value="<?php esc_attr_e('Update Themes'); ?>" name="upgrade" /></p>
+</form>
</ins><span class="cx"> <?php
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -393,7 +405,7 @@
</span><span class="cx">         } elseif ( isset( $_POST['checked'] ) ) {
</span><span class="cx">                 $plugins = (array) $_POST['checked'];
</span><span class="cx">         } else {
</span><del>-                wp_redirect('plugins.php');
</del><ins>+                wp_redirect('update-core.php');
</ins><span class="cx">                 exit;
</span><span class="cx">         }
</span><span class="cx">
</span><span class="lines">@@ -408,6 +420,30 @@
</span><span class="cx">         echo '<h2>' . esc_html__('Update Plugins') . '</h2>';
</span><span class="cx">         echo "<iframe src='$url' style='width: 100%; height:100%; min-height:850px;'></iframe>";
</span><span class="cx">         echo '</div>';
</span><ins>+} elseif ( 'do-theme-upgrade' == $action ) {
+        check_admin_referer('upgrade-core');
+
+        if ( isset( $_GET['themes'] ) ) {
+                $themes = explode( ',', $_GET['themes'] );
+        } elseif ( isset( $_POST['checked'] ) ) {
+                $themes = (array) $_POST['checked'];
+        } else {
+                wp_redirect('update-core.php');
+                exit;
+        }
+
+        $url = 'update.php?action=update-selected-themes&themes=' . urlencode(implode(',', $themes));
+        $url = wp_nonce_url($url, 'bulk-update-themes');
+
+        $title = __('Update Themes');
+
+        require_once('admin-header.php');
+        echo '<div class="wrap">';
+        screen_icon('themes');
+        echo '<h2>' . esc_html__('Update Themes') . '</h2>';
+        echo "<p>@TODO: Sorry, This part of the functionality hasnt been written yet.</p>";
+        echo "<iframe src='$url' style='width: 100%; height:100%; min-height:850px;'></iframe>";
+        echo '</div>';
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> include('admin-footer.php');
</span></span></pre>
</div>
</div>
</body>
</html>