summaryrefslogtreecommitdiffstats
path: root/wp-admin/includes/class-bulk-plugin-upgrader-skin.php
diff options
context:
space:
mode:
Diffstat (limited to 'wp-admin/includes/class-bulk-plugin-upgrader-skin.php')
-rw-r--r--wp-admin/includes/class-bulk-plugin-upgrader-skin.php87
1 files changed, 87 insertions, 0 deletions
diff --git a/wp-admin/includes/class-bulk-plugin-upgrader-skin.php b/wp-admin/includes/class-bulk-plugin-upgrader-skin.php
new file mode 100644
index 0000000..7cbf334
--- /dev/null
+++ b/wp-admin/includes/class-bulk-plugin-upgrader-skin.php
@@ -0,0 +1,87 @@
+<?php
+/**
+ * Upgrader API: Bulk_Plugin_Upgrader_Skin class
+ *
+ * @package WordPress
+ * @subpackage Upgrader
+ * @since 4.6.0
+ */
+
+/**
+ * Bulk Plugin Upgrader Skin for WordPress Plugin Upgrades.
+ *
+ * @since 3.0.0
+ * @since 4.6.0 Moved to its own file from wp-admin/includes/class-wp-upgrader-skins.php.
+ *
+ * @see Bulk_Upgrader_Skin
+ */
+class Bulk_Plugin_Upgrader_Skin extends Bulk_Upgrader_Skin {
+
+ /**
+ * Plugin info.
+ *
+ * The Plugin_Upgrader::bulk_upgrade() method will fill this in
+ * with info retrieved from the get_plugin_data() function.
+ *
+ * @var array Plugin data. Values will be empty if not supplied by the plugin.
+ */
+ public $plugin_info = array();
+
+ public function add_strings() {
+ parent::add_strings();
+ /* translators: 1: Plugin name, 2: Number of the plugin, 3: Total number of plugins being updated. */
+ $this->upgrader->strings['skin_before_update_header'] = __( 'Updating Plugin %1$s (%2$d/%3$d)' );
+ }
+
+ /**
+ * @param string $title
+ */
+ public function before( $title = '' ) {
+ parent::before( $this->plugin_info['Title'] );
+ }
+
+ /**
+ * @param string $title
+ */
+ public function after( $title = '' ) {
+ parent::after( $this->plugin_info['Title'] );
+ $this->decrement_update_count( 'plugin' );
+ }
+
+ /**
+ */
+ public function bulk_footer() {
+ parent::bulk_footer();
+
+ $update_actions = array(
+ 'plugins_page' => sprintf(
+ '<a href="%s" target="_parent">%s</a>',
+ self_admin_url( 'plugins.php' ),
+ __( 'Go to Plugins page' )
+ ),
+ 'updates_page' => sprintf(
+ '<a href="%s" target="_parent">%s</a>',
+ self_admin_url( 'update-core.php' ),
+ __( 'Go to WordPress Updates page' )
+ ),
+ );
+
+ if ( ! current_user_can( 'activate_plugins' ) ) {
+ unset( $update_actions['plugins_page'] );
+ }
+
+ /**
+ * Filters the list of action links available following bulk plugin updates.
+ *
+ * @since 3.0.0
+ *
+ * @param string[] $update_actions Array of plugin action links.
+ * @param array $plugin_info Array of information for the last-updated plugin.
+ */
+ $update_actions = apply_filters( 'update_bulk_plugins_complete_actions', $update_actions, $this->plugin_info );
+
+ if ( ! empty( $update_actions ) ) {
+ $this->feedback( implode( ' | ', (array) $update_actions ) );
+ }
+ }
+}