'.__('You do not have sufficient permissions to update plugins for this blog.').'

'); function request_filesystem_credentials($form_post, $type = '') { if ( empty($type) ) $type = get_filesystem_method(); if ( 'direct' == $type ) return array(); if ( !empty($_POST['password']) && !empty($_POST['username']) && !empty($_POST['hostname']) ) { $credentials = array('hostname' => $_POST['hostname'], 'username' => $_POST['username'], 'password' => $_POST['password'], 'ssl' => $_POST['ssl']); $stored_credentials = $credentials; unset($stored_credentials['password']); update_option('ftp_credentials', $stored_credentials); return $credentials; } $hostname = ''; $username = ''; $password = ''; $ssl = ''; if ( $credentials = get_option('ftp_credentials') ) extract($credentials, EXTR_OVERWRITE); ?>

get_error_data() ) $message = $message->get_error_message() . ': ' . $message->get_error_data(); else $message = $message->get_error_message(); } echo "

$message

"; } function do_plugin_upgrade($plugin) { global $wp_filesystem; $credentials = request_filesystem_credentials("update.php?action=upgrade-plugin&plugin=$plugin"); if ( false === $credentials ) return; echo '
'; echo '

' . __('Upgrade Plugin') . '

'; WP_Filesystem($credentials); // TODO: look for auth and connect error codes and direct back to credentials form. if ( $wp_filesystem->errors->get_error_code() ) { foreach ( $wp_filesystem->errors->get_error_messages() as $message ) show_message($message); echo '
'; return; } $result = wp_update_plugin($plugin, 'show_message'); if ( is_wp_error($result) ) show_message($result); else echo __('Plugin upgraded successfully'); echo ''; } if ( isset($_GET['action']) ) { if ( isset($_GET['plugin']) ) $plugin = trim($_GET['plugin']); if ( 'upgrade-plugin' == $_GET['action'] ) { //check-admin_referer('upgrade-plugin_' . $plugin); $title = __('Upgrade Plugin'); $parent_file = 'plugins.php'; require_once('admin-header.php'); do_plugin_upgrade($plugin); include('admin-footer.php'); } } ?>