From 63f05b22e38bdcbda39ccf16979fe06976a176b9 Mon Sep 17 00:00:00 2001
From: dyszczo <krzysztof.dyszczyk@gmail.com>
Date: Wed, 18 Sep 2019 20:21:21 +0200
Subject: [PATCH] fixed for get_plugins and msg display

---
 CHANGELOG.md                      |  5 +++++
 src/Basic_Requirement_Checker.php | 12 ++++++++----
 2 files changed, 13 insertions(+), 4 deletions(-)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index f0cdf93..f430cf5 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,8 @@
+## [3.0.1] - 2019-09-18
+### Fixed
+- Better new error messages display
+- get_plugins function loaded from wp-admin
+
 ## [3.0.0] - 2019-09-17
 ### Changed
 - Plugin classes moved to wp-builder
diff --git a/src/Basic_Requirement_Checker.php b/src/Basic_Requirement_Checker.php
index f68f7da..3bd3031 100644
--- a/src/Basic_Requirement_Checker.php
+++ b/src/Basic_Requirement_Checker.php
@@ -346,17 +346,17 @@ if ( ! class_exists( 'WPDesk_Basic_Requirement_Checker' ) ) {
 			if ( ! self::is_wp_plugin_installed( $name ) ) {
 				$install_url = $this->prepare_plugin_repository_install_url( $plugin_info );
 
-				return sprintf( wp_kses( __( 'The &#8220;%s&#8221; plugin requires free %s plugin. <a href="%s">Install %s →</a>',
+				return $this->prepare_notice_message( sprintf( wp_kses( __( 'The &#8220;%s&#8221; plugin requires free %s plugin. <a href="%s">Install %s →</a>',
 					$this->get_text_domain() ), array( 'a' => array( 'href' => array() ) ) ),
-					$this->plugin_name, $nice_name, esc_url( $install_url ), $nice_name );
+					$this->plugin_name, $nice_name, esc_url( $install_url ), $nice_name ) );
 			}
 
 			if ( ! self::is_wp_plugin_active( $name ) ) {
 				$activate_url = 'plugins.php?action=activate&plugin=' . urlencode( $plugin_info[ self::PLUGIN_INFO_KEY_NAME ] ) . '&plugin_status=all&paged=1&s&_wpnonce=' . urlencode( wp_create_nonce( 'activate-plugin_' . $name ) );
 
-				return sprintf( wp_kses( __( 'The &#8220;%s&#8221; plugin requires activating %s plugin. <a href="%s">Activate %s →</a>',
+				return $this->prepare_notice_message( sprintf( wp_kses( __( 'The &#8220;%s&#8221; plugin requires activating %s plugin. <a href="%s">Activate %s →</a>',
 					$this->get_text_domain() ), array( 'a' => array( 'href' => array() ) ) ),
-					$this->plugin_name, $nice_name, esc_url( admin_url( $activate_url ) ), $nice_name );
+					$this->plugin_name, $nice_name, esc_url( admin_url( $activate_url ) ), $nice_name ) );
 
 			}
 
@@ -388,6 +388,10 @@ if ( ! class_exists( 'WPDesk_Basic_Requirement_Checker' ) ) {
 		 * @return bool
 		 */
 		public static function is_wp_plugin_installed( $plugin_file ) {
+			if ( ! function_exists( 'get_plugins' ) ) {
+				require_once ABSPATH . '/wp-admin/includes/plugin.php';
+			}
+
 			return array_key_exists( $plugin_file, get_plugins() );
 		}
 
-- 
GitLab