diff --git a/10up-experience.php b/10up-experience.php index 0a3fee7..f3c69c0 100644 --- a/10up-experience.php +++ b/10up-experience.php @@ -3,7 +3,7 @@ * Plugin Name: 10up Experience * Plugin URI: https://github.com/10up/10up-experience * Description: The 10up Experience plugin configures WordPress to better protect and inform clients, aligned to 10up’s best practices. - * Version: 1.13.0 + * Version: 1.13.1 * Author: 10up * Author URI: https://10up.com * License: GPLv2 or later @@ -19,7 +19,7 @@ use YahnisElsts\PluginUpdateChecker\v5\PucFactory; -define( 'TENUP_EXPERIENCE_VERSION', '1.13.0' ); +define( 'TENUP_EXPERIENCE_VERSION', '1.13.1' ); define( 'TENUP_EXPERIENCE_DIR', __DIR__ ); define( 'TENUP_EXPERIENCE_FILE', __FILE__ ); diff --git a/CHANGELOG.md b/CHANGELOG.md index 252349f..243626a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,9 @@ All notable changes to this project will be documented in this file, per [the Keep a Changelog standard](http://keepachangelog.com/). +## [1.13.1] - 2024-12-12 +* Fix SSO bug with @10up.com emails + ## [1.13.0] - 2024-12-09 * Turn on Fueled SSO by default diff --git a/includes/classes/SSO/SSO.php b/includes/classes/SSO/SSO.php index 97109bf..c237ead 100644 --- a/includes/classes/SSO/SSO.php +++ b/includes/classes/SSO/SSO.php @@ -229,11 +229,21 @@ public function process_client_login() { $user_id = false; $user = get_user_by( 'email', $email ); + if ( ! $user ) { + $short_email = str_replace( '@get10up.com', '@10up.com', $email ); + $user = get_user_by( 'email', $short_email ); + } + if ( ! $user && preg_match( '#@fueled\.com$#i', $email ) ) { // Check if fueled person had a 10up email $old_10up_email = str_replace( '@fueled.com', '@get10up.com', $email ); $tenup_user = get_user_by( 'email', $old_10up_email ); + if ( ! $tenup_user ) { + $old_10up_email = str_replace( '@fueled.com', '@10up.com', $email ); + $tenup_user = get_user_by( 'email', $old_10up_email ); + } + if ( $tenup_user ) { // Turn off email change notification add_filter( 'send_email_change_email', '__return_false' );