Start roughing in GUU. see #10973

git-svn-id: http://svn.automattic.com/wordpress/trunk@12066 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
ryan 2009-10-20 16:11:59 +00:00
parent 7927c2f6c6
commit 6f5c3fb7cf
2 changed files with 102 additions and 0 deletions

View File

@ -145,6 +145,20 @@ function update_right_now_message() {
echo "<span id='wp-version-message'>$msg</span>";
}
function get_plugin_updates() {
$all_plugins = get_plugins();
$upgrade_plugins = array();
$current = get_transient( 'update_plugins' );
foreach ( (array)$all_plugins as $plugin_file => $plugin_data) {
if ( isset( $current->response[ $plugin_file ] ) ) {
$upgrade_plugins[ $plugin_file ] = (object) $plugin_data;
$upgrade_plugins[ $plugin_file ]->update = $current->response[ $plugin_file ];
}
}
return $upgrade_plugins;
}
function wp_plugin_update_rows() {
$plugins = get_transient( 'update_plugins' );
if ( isset($plugins->response) && is_array($plugins->response) ) {
@ -191,6 +205,22 @@ function wp_update_plugin($plugin, $feedback = '') {
return $upgrader->upgrade($plugin);
}
function get_theme_updates() {
$themes = get_themes();
$current = get_transient('update_themes');
$update_themes = array();
foreach ( $themes as $theme ) {
$theme = (object) $theme;
if ( isset($current->response[ $theme->Stylesheet ]) ) {
$update_themes[$theme->Stylesheet] = $theme;
$update_themes[$theme->Stylesheet]->update = $current->response[ $theme->Stylesheet ];
}
}
return $update_themes;
}
function wp_update_theme($theme, $feedback = '') {
if ( !empty($feedback) )

View File

@ -127,8 +127,80 @@ function core_upgrade_preamble() {
echo '</ul>';
dismissed_updates();
echo '</div>';
list_plugin_updates();
list_theme_updates();
}
function list_plugin_updates() {
$plugins = get_plugin_updates();
if ( empty($plugins) )
return;
?>
<h3><?php _e('Plugins'); ?></h3>
<table class="widefat" cellspacing="0" id="update-plugins-table">
<thead>
<tr>
<th scope="col" class="manage-column check-column"><input type="checkbox" /></th>
<th scope="col" class="manage-column"><?php _e('Name'); ?></th>
</tr>
</thead>
<tfoot>
<tr>
<th scope="col" class="manage-column check-column"><input type="checkbox" /></th>
<th scope="col" class="manage-column"><?php _e('Name'); ?></th>
</tr>
</tfoot>
<tbody class="plugins">
<?php
foreach ( (array) $plugins as $plugin_file => $plugin_data) {
echo "
<tr class='active'>
<th scope='row' class='check-column'><input type='checkbox' name='checked[]' value='" . esc_attr($plugin_file) . "' /></th>
<td class='plugin-title'><strong>{$plugin_data->Name}</strong></td>
</tr>";
}
?>
</tbody>
</table>
<?php
}
function list_theme_updates() {
$themes = get_theme_updates();
if ( empty($themes) )
return;
?>
<h3><?php _e('Themes'); ?></h3>
<table class="widefat" cellspacing="0" id="update-themes-table">
<thead>
<tr>
<th scope="col" class="manage-column check-column"><input type="checkbox" /></th>
<th scope="col" class="manage-column"><?php _e('Name'); ?></th>
</tr>
</thead>
<tfoot>
<tr>
<th scope="col" class="manage-column check-column"><input type="checkbox" /></th>
<th scope="col" class="manage-column"><?php _e('Name'); ?></th>
</tr>
</tfoot>
<tbody class="plugins">
<?php
foreach ( (array) $themes as $stylesheet => $theme_data) {
echo "
<tr class='active'>
<th scope='row' class='check-column'><input type='checkbox' name='checked[]' value='" . esc_attr($stylesheet) . "' /></th>
<td class='plugin-title'><strong>{$theme_data->Name}</strong></td>
</tr>";
}
?>
</tbody>
</table>
<?php
}
/**
* Upgrade WordPress core display.