Move theme_update_available out of the admin page and into the admin includes.
git-svn-id: http://svn.automattic.com/wordpress/trunk@14371 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
parent
628d0b247d
commit
e13615c621
|
@ -241,4 +241,46 @@ function _check_theme_deprecated_files() {
|
||||||
<?php endif;
|
<?php endif;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Check if there is an update for a theme available.
|
||||||
|
*
|
||||||
|
* Will display link, if there is an update available.
|
||||||
|
*
|
||||||
|
* @since 2.7.0
|
||||||
|
*
|
||||||
|
* @param object $theme Theme data object.
|
||||||
|
* @return bool False if no valid info was passed.
|
||||||
|
*/
|
||||||
|
function theme_update_available( $theme ) {
|
||||||
|
static $themes_update;
|
||||||
|
|
||||||
|
if ( !current_user_can('update_themes' ) )
|
||||||
|
return;
|
||||||
|
|
||||||
|
if ( !isset($themes_update) )
|
||||||
|
$themes_update = get_site_transient('update_themes');
|
||||||
|
|
||||||
|
if ( is_object($theme) && isset($theme->stylesheet) )
|
||||||
|
$stylesheet = $theme->stylesheet;
|
||||||
|
elseif ( is_array($theme) && isset($theme['Stylesheet']) )
|
||||||
|
$stylesheet = $theme['Stylesheet'];
|
||||||
|
else
|
||||||
|
return false; //No valid info passed.
|
||||||
|
|
||||||
|
if ( isset($themes_update->response[ $stylesheet ]) ) {
|
||||||
|
$update = $themes_update->response[ $stylesheet ];
|
||||||
|
$theme_name = is_object($theme) ? $theme->name : (is_array($theme) ? $theme['Name'] : '');
|
||||||
|
$details_url = add_query_arg(array('TB_iframe' => 'true', 'width' => 1024, 'height' => 800), $update['url']); //Theme browser inside WP? replace this, Also, theme preview JS will override this on the available list.
|
||||||
|
$update_url = wp_nonce_url('update.php?action=upgrade-theme&theme=' . urlencode($stylesheet), 'upgrade-theme_' . $stylesheet);
|
||||||
|
$update_onclick = 'onclick="if ( confirm(\'' . esc_js( __("Upgrading this theme will lose any customizations you have made. 'Cancel' to stop, 'OK' to upgrade.") ) . '\') ) {return true;}return false;"';
|
||||||
|
|
||||||
|
if ( ! current_user_can('update_themes') )
|
||||||
|
printf( '<p><strong>' . __('There is a new version of %1$s available. <a href="%2$s" class="thickbox" title="%1$s">View version %3$s Details</a>.') . '</strong></p>', $theme_name, $details_url, $update['new_version']);
|
||||||
|
else if ( empty($update['package']) )
|
||||||
|
printf( '<p><strong>' . __('There is a new version of %1$s available. <a href="%2$s" class="thickbox" title="%1$s">View version %3$s Details</a> <em>automatic upgrade unavailable for this theme</em>.') . '</strong></p>', $theme_name, $details_url, $update['new_version']);
|
||||||
|
else
|
||||||
|
printf( '<p><strong>' . __('There is a new version of %1$s available. <a href="%2$s" class="thickbox" title="%1$s">View version %3$s Details</a> or <a href="%4$s" %5$s>upgrade automatically</a>.') . '</strong></p>', $theme_name, $details_url, $update['new_version'], $update_url, $update_onclick );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
?>
|
?>
|
||||||
|
|
|
@ -87,49 +87,6 @@ $page_links = paginate_links( array(
|
||||||
));
|
));
|
||||||
|
|
||||||
$themes = array_slice( $themes, $start, $per_page );
|
$themes = array_slice( $themes, $start, $per_page );
|
||||||
|
|
||||||
/**
|
|
||||||
* Check if there is an update for a theme available.
|
|
||||||
*
|
|
||||||
* Will display link, if there is an update available.
|
|
||||||
*
|
|
||||||
* @since 2.7.0
|
|
||||||
*
|
|
||||||
* @param object $theme Theme data object.
|
|
||||||
* @return bool False if no valid info was passed.
|
|
||||||
*/
|
|
||||||
function theme_update_available( $theme ) {
|
|
||||||
static $themes_update;
|
|
||||||
|
|
||||||
if ( !current_user_can('update_themes' ) )
|
|
||||||
return;
|
|
||||||
|
|
||||||
if ( !isset($themes_update) )
|
|
||||||
$themes_update = get_site_transient('update_themes');
|
|
||||||
|
|
||||||
if ( is_object($theme) && isset($theme->stylesheet) )
|
|
||||||
$stylesheet = $theme->stylesheet;
|
|
||||||
elseif ( is_array($theme) && isset($theme['Stylesheet']) )
|
|
||||||
$stylesheet = $theme['Stylesheet'];
|
|
||||||
else
|
|
||||||
return false; //No valid info passed.
|
|
||||||
|
|
||||||
if ( isset($themes_update->response[ $stylesheet ]) ) {
|
|
||||||
$update = $themes_update->response[ $stylesheet ];
|
|
||||||
$theme_name = is_object($theme) ? $theme->name : (is_array($theme) ? $theme['Name'] : '');
|
|
||||||
$details_url = add_query_arg(array('TB_iframe' => 'true', 'width' => 1024, 'height' => 800), $update['url']); //Theme browser inside WP? replace this, Also, theme preview JS will override this on the available list.
|
|
||||||
$update_url = wp_nonce_url('update.php?action=upgrade-theme&theme=' . urlencode($stylesheet), 'upgrade-theme_' . $stylesheet);
|
|
||||||
$update_onclick = 'onclick="if ( confirm(\'' . esc_js( __("Upgrading this theme will lose any customizations you have made. 'Cancel' to stop, 'OK' to upgrade.") ) . '\') ) {return true;}return false;"';
|
|
||||||
|
|
||||||
if ( ! current_user_can('update_themes') )
|
|
||||||
printf( '<p><strong>' . __('There is a new version of %1$s available. <a href="%2$s" class="thickbox" title="%1$s">View version %3$s Details</a>.') . '</strong></p>', $theme_name, $details_url, $update['new_version']);
|
|
||||||
else if ( empty($update['package']) )
|
|
||||||
printf( '<p><strong>' . __('There is a new version of %1$s available. <a href="%2$s" class="thickbox" title="%1$s">View version %3$s Details</a> <em>automatic upgrade unavailable for this theme</em>.') . '</strong></p>', $theme_name, $details_url, $update['new_version']);
|
|
||||||
else
|
|
||||||
printf( '<p><strong>' . __('There is a new version of %1$s available. <a href="%2$s" class="thickbox" title="%1$s">View version %3$s Details</a> or <a href="%4$s" %5$s>upgrade automatically</a>.') . '</strong></p>', $theme_name, $details_url, $update['new_version'], $update_url, $update_onclick );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
?>
|
?>
|
||||||
|
|
||||||
<div class="wrap">
|
<div class="wrap">
|
||||||
|
|
Loading…
Reference in New Issue