This commit introduces a banner that notifies and prompts users to upgrade their WordPress and/or PHP if they are outdated and not part of the minimum required versions going into WooCommerce 3.7.
* Add backward compatible function wp_check_php_version for sites running WP version smaller than 5.1
* Refactor some messaging, move widget to top of WC dashboard widgets, add buttons linking out to WP pages with instructions.
* Add missing variables for adding nag class
* Add styling to dashboard widget
* Rework css to use exclamation instead
* Clean up widget, make sure no widget is registered when dismissed. Add banner that links to widget and make it dismissable.
* Update constant to reflect minimum requirements.
* Don't show banner. Fix undefined variable.
* Remove dashboard widget
* Update banner link to docs site
* Add link to docs page where instructions live for updating
* Change button text
* Add UTM params to docs link
* Moved the msg logic from template to php file.
* Bail out early when PHP and WP versions are ok.
* Added missing translation functiog
* Extracted notice function from reset_admin_notices.
To follow suit with other similar functions in the file.
* Synchronize fetching of WP version.
* Removed unused functions.
* Corrected indent.
* Reduce number of variables and fixed coding standards
* Updated wording of the notice.
After 79ff1b10e password is not unslashed while logging in but
this missed removing `wp_unslash` from password while registering.
This causes the mismatch of password if user registered with a
password containing quote (`"`).
Fixes#23922.
Display WooCommerce > Statis > Log timestamp, when using WC_Log_Handler_DB, with the Y-m-d H:i:s format instead of the WordPress global date and time format options, because we need more detail on the shown timestamps and that might not be compatible with what we want for our global options.
get_session() attempts to cache a session even if it is already expired.
The code used passes negative expiry seconds to wp_cache_add if the session expired in the past:
wp_cache_add( $this->get_cache_prefix() . $customer_id, $value, WC_SESSION_CACHE_GROUP, $this->_session_expiration - time() );
Depending on the caching layers used this will give errors in the logs such as:
ERR invalid expire time in setex in /var/www/html/wp-content/plugins/redis-cache/includes/predis/src/Client.php:370
as reported on: https://wordpress.org/support/topic/error-when-trying-to-get-a-get-a-cache-not-available/
* fix the coupon usage limit issue
* fix the if condition for the usage limit
* fixed coding standard
* fix the if conditions for coupon usage limit per user