WP User Avatar - Version 3.1.16

Version Description

  • Added compatibility with a lot of 2fa plugins.
Download this release

Release Info

Developer Collizo4sky
Plugin Icon 128x128 WP User Avatar
Version 3.1.16
Comparing to
See all releases

Code changes from version 3.1.15 to 3.1.16

changelog.txt CHANGED
@@ -1,4 +1,7 @@
1
- == Changelog ==
 
 
 
2
 
3
  = 3.1.15 =
4
  * Fixed bug with with My Account page not correctly rendering.
1
+ == Changelog ==
2
+
3
+ = 3.1.16 =
4
+ * Added compatibility with a lot of 2fa plugins.
5
 
6
  = 3.1.15 =
7
  * Fixed bug with with My Account page not correctly rendering.
languages/wp-user-avatar.pot CHANGED
@@ -2,9 +2,9 @@
2
  # This file is distributed under the same license as the ProfilePress package.
3
  msgid ""
4
  msgstr ""
5
- "Project-Id-Version: ProfilePress 3.1.15\n"
6
  "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wp-user-avatar\n"
7
- "POT-Creation-Date: 2021-07-28 17:32:53+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=UTF-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
@@ -5421,9 +5421,9 @@ msgstr ""
5421
  msgid "ProfilePress"
5422
  msgstr ""
5423
 
5424
- #. #-#-#-#-# wp-user-avatar.pot (ProfilePress 3.1.15) #-#-#-#-#
5425
  #. Plugin URI of the plugin/theme
5426
- #. #-#-#-#-# wp-user-avatar.pot (ProfilePress 3.1.15) #-#-#-#-#
5427
  #. Author URI of the plugin/theme
5428
  msgid "https://profilepress.net"
5429
  msgstr ""
2
  # This file is distributed under the same license as the ProfilePress package.
3
  msgid ""
4
  msgstr ""
5
+ "Project-Id-Version: ProfilePress 3.1.16\n"
6
  "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wp-user-avatar\n"
7
+ "POT-Creation-Date: 2021-08-06 09:29:21+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=UTF-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
5421
  msgid "ProfilePress"
5422
  msgstr ""
5423
 
5424
+ #. #-#-#-#-# wp-user-avatar.pot (ProfilePress 3.1.16) #-#-#-#-#
5425
  #. Plugin URI of the plugin/theme
5426
+ #. #-#-#-#-# wp-user-avatar.pot (ProfilePress 3.1.16) #-#-#-#-#
5427
  #. Author URI of the plugin/theme
5428
  msgid "https://profilepress.net"
5429
  msgstr ""
readme.txt CHANGED
@@ -5,7 +5,7 @@ Tags: user registration, user profile, registration form, membership, login form
5
  Requires at least: 4.7
6
  Requires PHP: 5.6.0
7
  Tested up to: 5.8
8
- Stable tag: 3.1.15
9
  License: GPLv2 or later
10
 
11
  Modern membership plugin for user registration, login form, user profile, member directories & content restriction.
@@ -117,6 +117,9 @@ No. You can create and manage your forms, user profiles and member directories w
117
 
118
  == Changelog ==
119
 
 
 
 
120
  = 3.1.15 =
121
  * Fixed bug with with My Account page not correctly rendering.
122
 
5
  Requires at least: 4.7
6
  Requires PHP: 5.6.0
7
  Tested up to: 5.8
8
+ Stable tag: 3.1.16
9
  License: GPLv2 or later
10
 
11
  Modern membership plugin for user registration, login form, user profile, member directories & content restriction.
117
 
118
  == Changelog ==
119
 
120
+ = 3.1.16 =
121
+ * Added compatibility with a lot of 2fa plugins.
122
+
123
  = 3.1.15 =
124
  * Fixed bug with with My Account page not correctly rendering.
125
 
src/Classes/ModifyRedirectDefaultLinks.php CHANGED
@@ -36,6 +36,39 @@ class ModifyRedirectDefaultLinks
36
  add_action('template_redirect', [$this, 'redirect_author_page']);
37
  }
38
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
39
  /**
40
  * Modify the lost password url returned by wp_lostpassword_url() function.
41
  *
@@ -80,21 +113,23 @@ class ModifyRedirectDefaultLinks
80
  */
81
  public function set_login_url_func($url, $redirect = '', $force_reauth = false)
82
  {
83
- $login_page_id = ppress_get_setting('set_login_url');
 
84
 
85
- if ( ! empty($login_page_id) && get_post_status($login_page_id)) {
86
 
87
- $url = get_permalink($login_page_id);
88
 
89
- if ( ! empty($redirect)) {
90
- $url = add_query_arg('redirect_to', rawurlencode(wp_validate_redirect($redirect)), $url);
91
- }
92
 
93
- if ($force_reauth) {
94
- $url = add_query_arg('reauth', '1', $url);
95
- }
96
 
97
- $url = esc_url_raw($url);
 
98
  }
99
 
100
  return apply_filters('ppress_login_url', $url, $redirect, $force_reauth);
@@ -107,6 +142,8 @@ class ModifyRedirectDefaultLinks
107
  {
108
  if ( ! apply_filters('ppress_default_login_redirect_enabled', true)) return;
109
 
 
 
110
  $login_page_id = ppress_get_setting('set_login_url');
111
 
112
  if (empty($login_page_id) || ! get_post_status($login_page_id)) return;
36
  add_action('template_redirect', [$this, 'redirect_author_page']);
37
  }
38
 
39
+ public function is_third_party_2fa_active()
40
+ {
41
+ global $pagenow;
42
+
43
+ if ('wp-login.php' == $pagenow) {
44
+
45
+ if (class_exists('Jetpack') && \Jetpack::is_module_active('sso')) {
46
+ return true;
47
+ }
48
+
49
+ if (function_exists('wd_di') && class_exists('\WP_Defender\Model\Setting\Two_Fa')) {
50
+ try {
51
+ if (wd_di()->get(\WP_Defender\Model\Setting\Two_Fa::class)->enabled) return true;
52
+ } catch (\Exception $e) {
53
+ }
54
+ }
55
+
56
+ if (defined('WORDFENCE_VERSION') || defined('WORDFENCE_LS_VERSION')) {
57
+ return true;
58
+ }
59
+
60
+ if (defined('WP_2FA_VERSION')) return true;
61
+
62
+ if (defined('SIMBA_TFA_PLUGIN_DIR')) return true;
63
+
64
+ if (class_exists('\SG_Security\Options_Service\Options_Service') && \SG_Security\Options_Service\Options_Service::is_enabled('sg2fa')) {
65
+ return true;
66
+ }
67
+ }
68
+
69
+ return false;
70
+ }
71
+
72
  /**
73
  * Modify the lost password url returned by wp_lostpassword_url() function.
74
  *
113
  */
114
  public function set_login_url_func($url, $redirect = '', $force_reauth = false)
115
  {
116
+ if ( ! $this->is_third_party_2fa_active()) {
117
+ $login_page_id = ppress_get_setting('set_login_url');
118
 
119
+ if ( ! empty($login_page_id) && get_post_status($login_page_id)) {
120
 
121
+ $url = get_permalink($login_page_id);
122
 
123
+ if ( ! empty($redirect)) {
124
+ $url = add_query_arg('redirect_to', rawurlencode(wp_validate_redirect($redirect)), $url);
125
+ }
126
 
127
+ if ($force_reauth) {
128
+ $url = add_query_arg('reauth', '1', $url);
129
+ }
130
 
131
+ $url = esc_url_raw($url);
132
+ }
133
  }
134
 
135
  return apply_filters('ppress_login_url', $url, $redirect, $force_reauth);
142
  {
143
  if ( ! apply_filters('ppress_default_login_redirect_enabled', true)) return;
144
 
145
+ if ($this->is_third_party_2fa_active()) return;
146
+
147
  $login_page_id = ppress_get_setting('set_login_url');
148
 
149
  if (empty($login_page_id) || ! get_post_status($login_page_id)) return;
vendor/autoload.php CHANGED
@@ -4,4 +4,4 @@
4
 
5
  require_once __DIR__ . '/composer/autoload_real.php';
6
 
7
- return ComposerAutoloaderInit6a17c38b960b12c3ae02921198491b99::getLoader();
4
 
5
  require_once __DIR__ . '/composer/autoload_real.php';
6
 
7
+ return ComposerAutoloaderInit7bb96cf41eb2ea22512ab8c4355a0022::getLoader();
vendor/composer/autoload_real.php CHANGED
@@ -2,7 +2,7 @@
2
 
3
  // autoload_real.php @generated by Composer
4
 
5
- class ComposerAutoloaderInit6a17c38b960b12c3ae02921198491b99
6
  {
7
  private static $loader;
8
 
@@ -24,15 +24,15 @@ class ComposerAutoloaderInit6a17c38b960b12c3ae02921198491b99
24
 
25
  require __DIR__ . '/platform_check.php';
26
 
27
- spl_autoload_register(array('ComposerAutoloaderInit6a17c38b960b12c3ae02921198491b99', 'loadClassLoader'), true, true);
28
  self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(\dirname(__FILE__)));
29
- spl_autoload_unregister(array('ComposerAutoloaderInit6a17c38b960b12c3ae02921198491b99', 'loadClassLoader'));
30
 
31
  $useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
32
  if ($useStaticLoader) {
33
  require __DIR__ . '/autoload_static.php';
34
 
35
- call_user_func(\Composer\Autoload\ComposerStaticInit6a17c38b960b12c3ae02921198491b99::getInitializer($loader));
36
  } else {
37
  $map = require __DIR__ . '/autoload_namespaces.php';
38
  foreach ($map as $namespace => $path) {
@@ -53,19 +53,19 @@ class ComposerAutoloaderInit6a17c38b960b12c3ae02921198491b99
53
  $loader->register(true);
54
 
55
  if ($useStaticLoader) {
56
- $includeFiles = Composer\Autoload\ComposerStaticInit6a17c38b960b12c3ae02921198491b99::$files;
57
  } else {
58
  $includeFiles = require __DIR__ . '/autoload_files.php';
59
  }
60
  foreach ($includeFiles as $fileIdentifier => $file) {
61
- composerRequire6a17c38b960b12c3ae02921198491b99($fileIdentifier, $file);
62
  }
63
 
64
  return $loader;
65
  }
66
  }
67
 
68
- function composerRequire6a17c38b960b12c3ae02921198491b99($fileIdentifier, $file)
69
  {
70
  if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
71
  require $file;
2
 
3
  // autoload_real.php @generated by Composer
4
 
5
+ class ComposerAutoloaderInit7bb96cf41eb2ea22512ab8c4355a0022
6
  {
7
  private static $loader;
8
 
24
 
25
  require __DIR__ . '/platform_check.php';
26
 
27
+ spl_autoload_register(array('ComposerAutoloaderInit7bb96cf41eb2ea22512ab8c4355a0022', 'loadClassLoader'), true, true);
28
  self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(\dirname(__FILE__)));
29
+ spl_autoload_unregister(array('ComposerAutoloaderInit7bb96cf41eb2ea22512ab8c4355a0022', 'loadClassLoader'));
30
 
31
  $useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
32
  if ($useStaticLoader) {
33
  require __DIR__ . '/autoload_static.php';
34
 
35
+ call_user_func(\Composer\Autoload\ComposerStaticInit7bb96cf41eb2ea22512ab8c4355a0022::getInitializer($loader));
36
  } else {
37
  $map = require __DIR__ . '/autoload_namespaces.php';
38
  foreach ($map as $namespace => $path) {
53
  $loader->register(true);
54
 
55
  if ($useStaticLoader) {
56
+ $includeFiles = Composer\Autoload\ComposerStaticInit7bb96cf41eb2ea22512ab8c4355a0022::$files;
57
  } else {
58
  $includeFiles = require __DIR__ . '/autoload_files.php';
59
  }
60
  foreach ($includeFiles as $fileIdentifier => $file) {
61
+ composerRequire7bb96cf41eb2ea22512ab8c4355a0022($fileIdentifier, $file);
62
  }
63
 
64
  return $loader;
65
  }
66
  }
67
 
68
+ function composerRequire7bb96cf41eb2ea22512ab8c4355a0022($fileIdentifier, $file)
69
  {
70
  if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
71
  require $file;
vendor/composer/autoload_static.php CHANGED
@@ -4,7 +4,7 @@
4
 
5
  namespace Composer\Autoload;
6
 
7
- class ComposerStaticInit6a17c38b960b12c3ae02921198491b99
8
  {
9
  public static $files = array (
10
  'fda73876e8be17735f680f484cec1679' => __DIR__ . '/../..' . '/src/Functions/custom-settings-api.php',
@@ -286,9 +286,9 @@ class ComposerStaticInit6a17c38b960b12c3ae02921198491b99
286
  public static function getInitializer(ClassLoader $loader)
287
  {
288
  return \Closure::bind(function () use ($loader) {
289
- $loader->prefixLengthsPsr4 = ComposerStaticInit6a17c38b960b12c3ae02921198491b99::$prefixLengthsPsr4;
290
- $loader->prefixDirsPsr4 = ComposerStaticInit6a17c38b960b12c3ae02921198491b99::$prefixDirsPsr4;
291
- $loader->classMap = ComposerStaticInit6a17c38b960b12c3ae02921198491b99::$classMap;
292
 
293
  }, null, ClassLoader::class);
294
  }
4
 
5
  namespace Composer\Autoload;
6
 
7
+ class ComposerStaticInit7bb96cf41eb2ea22512ab8c4355a0022
8
  {
9
  public static $files = array (
10
  'fda73876e8be17735f680f484cec1679' => __DIR__ . '/../..' . '/src/Functions/custom-settings-api.php',
286
  public static function getInitializer(ClassLoader $loader)
287
  {
288
  return \Closure::bind(function () use ($loader) {
289
+ $loader->prefixLengthsPsr4 = ComposerStaticInit7bb96cf41eb2ea22512ab8c4355a0022::$prefixLengthsPsr4;
290
+ $loader->prefixDirsPsr4 = ComposerStaticInit7bb96cf41eb2ea22512ab8c4355a0022::$prefixDirsPsr4;
291
+ $loader->classMap = ComposerStaticInit7bb96cf41eb2ea22512ab8c4355a0022::$classMap;
292
 
293
  }, null, ClassLoader::class);
294
  }
vendor/composer/installed.php CHANGED
@@ -5,7 +5,7 @@
5
  'type' => 'library',
6
  'install_path' => __DIR__ . '/../../',
7
  'aliases' => array(),
8
- 'reference' => '91dce99473174f4de52da65e14dc30a378bbab6a',
9
  'name' => '__root__',
10
  'dev' => false,
11
  ),
@@ -16,7 +16,7 @@
16
  'type' => 'library',
17
  'install_path' => __DIR__ . '/../../',
18
  'aliases' => array(),
19
- 'reference' => '91dce99473174f4de52da65e14dc30a378bbab6a',
20
  'dev_requirement' => false,
21
  ),
22
  'collizo4sky/persist-admin-notices-dismissal' => array(
5
  'type' => 'library',
6
  'install_path' => __DIR__ . '/../../',
7
  'aliases' => array(),
8
+ 'reference' => '872792540fa52d749746c08b7ccb9610f160881e',
9
  'name' => '__root__',
10
  'dev' => false,
11
  ),
16
  'type' => 'library',
17
  'install_path' => __DIR__ . '/../../',
18
  'aliases' => array(),
19
+ 'reference' => '872792540fa52d749746c08b7ccb9610f160881e',
20
  'dev_requirement' => false,
21
  ),
22
  'collizo4sky/persist-admin-notices-dismissal' => array(
wp-user-avatar.php CHANGED
@@ -3,7 +3,7 @@
3
  * Plugin Name: ProfilePress
4
  * Plugin URI: https://profilepress.net
5
  * Description: The modern WordPress membership and user profile plugin.
6
- * Version: 3.1.15
7
  * Author: ProfilePress Team
8
  * Author URI: https://profilepress.net
9
  * Text Domain: wp-user-avatar
@@ -14,7 +14,7 @@
14
  defined('ABSPATH') or die("No script kiddies please!");
15
 
16
  define('PROFILEPRESS_SYSTEM_FILE_PATH', __FILE__);
17
- define('PPRESS_VERSION_NUMBER', '3.1.15');
18
 
19
  require __DIR__ . '/vendor/autoload.php';
20
 
3
  * Plugin Name: ProfilePress
4
  * Plugin URI: https://profilepress.net
5
  * Description: The modern WordPress membership and user profile plugin.
6
+ * Version: 3.1.16
7
  * Author: ProfilePress Team
8
  * Author URI: https://profilepress.net
9
  * Text Domain: wp-user-avatar
14
  defined('ABSPATH') or die("No script kiddies please!");
15
 
16
  define('PROFILEPRESS_SYSTEM_FILE_PATH', __FILE__);
17
+ define('PPRESS_VERSION_NUMBER', '3.1.16');
18
 
19
  require __DIR__ . '/vendor/autoload.php';
20