WP User Avatar - Version 3.2.13

Version Description

  • Fixed bug where custom html texts where scribbled.
Download this release

Release Info

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

Code changes from version 3.2.12 to 3.2.13

assets/css/admin-style.css CHANGED
@@ -488,6 +488,7 @@
488
  background: #fff;
489
  margin-bottom: 20px;
490
  border: 1px solid #dedede;
 
491
  -webkit-box-shadow: 0 1px 1px -1px rgba(0, 0, 0, .1);
492
  box-shadow: 0 1px 1px -1px rgba(0, 0, 0, .1);
493
  }
488
  background: #fff;
489
  margin-bottom: 20px;
490
  border: 1px solid #dedede;
491
+ box-sizing: content-box;
492
  -webkit-box-shadow: 0 1px 1px -1px rgba(0, 0, 0, .1);
493
  box-shadow: 0 1px 1px -1px rgba(0, 0, 0, .1);
494
  }
changelog.txt CHANGED
@@ -1,5 +1,8 @@
1
  == Changelog ==
2
 
 
 
 
3
  = 3.2.12 =
4
  * Fixed user roles not recognized during member directory search.
5
  * Fixed fatal error caused by empty member directory search field.
1
  == Changelog ==
2
 
3
+ = 3.2.13 =
4
+ * Fixed bug where custom html texts where scribbled.
5
+
6
  = 3.2.12 =
7
  * Fixed user roles not recognized during member directory search.
8
  * Fixed fatal error caused by empty member directory search field.
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.2.12\n"
6
  "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wp-user-avatar\n"
7
- "POT-Creation-Date: 2022-05-20 13:26:57+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=UTF-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
@@ -1732,7 +1732,7 @@ msgstr ""
1732
  #: src/Admin/SettingsPages/GeneralSettings.php:189
1733
  #: src/Admin/SettingsPages/GeneralSettings.php:305
1734
  #: src/Classes/AjaxHandler.php:54 src/NavigationMenuLinks/Backend.php:34
1735
- #: src/ShortcodeParser/Builder/GlobalShortcodes.php:237
1736
  #: src/Themes/DragDrop/AbstractBuildScratch.php:180
1737
  #: src/Widgets/TabbedWidget.php:113
1738
  msgid "Login"
@@ -1752,7 +1752,7 @@ msgstr ""
1752
 
1753
  #: src/Admin/SettingsPages/Forms.php:130 src/Classes/AjaxHandler.php:69
1754
  #: src/NavigationMenuLinks/Backend.php:32
1755
- #: src/ShortcodeParser/Builder/GlobalShortcodes.php:302
1756
  msgid "Edit Profile"
1757
  msgstr ""
1758
 
@@ -4199,14 +4199,14 @@ msgstr ""
4199
 
4200
  #: src/NavigationMenuLinks/Backend.php:30
4201
  #: src/NavigationMenuLinks/Backend.php:34
4202
- #: src/ShortcodeParser/Builder/GlobalShortcodes.php:271
4203
  #: src/Widgets/UserPanel.php:30 src/Widgets/UserPanel.php:71
4204
  msgid "Log Out"
4205
  msgstr ""
4206
 
4207
  #: src/NavigationMenuLinks/Backend.php:31 src/RegisterActivation/Base.php:159
4208
  #: src/ShortcodeParser/Builder/FieldsShortcodeCallback.php:1033
4209
- #: src/ShortcodeParser/Builder/GlobalShortcodes.php:174
4210
  #: src/Widgets/TabbedWidget.php:89
4211
  msgid "Sign Up"
4212
  msgstr ""
@@ -4259,7 +4259,7 @@ msgid "Lucid Tab Widget"
4259
  msgstr ""
4260
 
4261
  #: src/RegisterActivation/Base.php:163
4262
- #: src/ShortcodeParser/Builder/GlobalShortcodes.php:206
4263
  #: src/Themes/DragDrop/AbstractTheme.php:117
4264
  msgid "Reset Password"
4265
  msgstr ""
@@ -4917,7 +4917,7 @@ msgid "Fields to show in sorting dropdown menu"
4917
  msgstr ""
4918
 
4919
  #: src/Themes/DragDrop/AbstractMemberDirectoryTheme.php:244
4920
- #: src/Themes/DragDrop/AbstractMemberDirectoryTheme.php:844
4921
  msgid "Search"
4922
  msgstr ""
4923
 
@@ -4989,11 +4989,11 @@ msgstr ""
4989
  msgid "Oldest Users First"
4990
  msgstr ""
4991
 
4992
- #: src/Themes/DragDrop/AbstractMemberDirectoryTheme.php:711
4993
  msgid "Sort by"
4994
  msgstr ""
4995
 
4996
- #: src/Themes/DragDrop/AbstractMemberDirectoryTheme.php:748
4997
  msgid "More Filters"
4998
  msgstr ""
4999
 
2
  # This file is distributed under the same license as the ProfilePress package.
3
  msgid ""
4
  msgstr ""
5
+ "Project-Id-Version: ProfilePress 3.2.13\n"
6
  "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wp-user-avatar\n"
7
+ "POT-Creation-Date: 2022-05-30 12:57:10+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=UTF-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
1732
  #: src/Admin/SettingsPages/GeneralSettings.php:189
1733
  #: src/Admin/SettingsPages/GeneralSettings.php:305
1734
  #: src/Classes/AjaxHandler.php:54 src/NavigationMenuLinks/Backend.php:34
1735
+ #: src/ShortcodeParser/Builder/GlobalShortcodes.php:243
1736
  #: src/Themes/DragDrop/AbstractBuildScratch.php:180
1737
  #: src/Widgets/TabbedWidget.php:113
1738
  msgid "Login"
1752
 
1753
  #: src/Admin/SettingsPages/Forms.php:130 src/Classes/AjaxHandler.php:69
1754
  #: src/NavigationMenuLinks/Backend.php:32
1755
+ #: src/ShortcodeParser/Builder/GlobalShortcodes.php:308
1756
  msgid "Edit Profile"
1757
  msgstr ""
1758
 
4199
 
4200
  #: src/NavigationMenuLinks/Backend.php:30
4201
  #: src/NavigationMenuLinks/Backend.php:34
4202
+ #: src/ShortcodeParser/Builder/GlobalShortcodes.php:277
4203
  #: src/Widgets/UserPanel.php:30 src/Widgets/UserPanel.php:71
4204
  msgid "Log Out"
4205
  msgstr ""
4206
 
4207
  #: src/NavigationMenuLinks/Backend.php:31 src/RegisterActivation/Base.php:159
4208
  #: src/ShortcodeParser/Builder/FieldsShortcodeCallback.php:1033
4209
+ #: src/ShortcodeParser/Builder/GlobalShortcodes.php:180
4210
  #: src/Widgets/TabbedWidget.php:89
4211
  msgid "Sign Up"
4212
  msgstr ""
4259
  msgstr ""
4260
 
4261
  #: src/RegisterActivation/Base.php:163
4262
+ #: src/ShortcodeParser/Builder/GlobalShortcodes.php:212
4263
  #: src/Themes/DragDrop/AbstractTheme.php:117
4264
  msgid "Reset Password"
4265
  msgstr ""
4917
  msgstr ""
4918
 
4919
  #: src/Themes/DragDrop/AbstractMemberDirectoryTheme.php:244
4920
+ #: src/Themes/DragDrop/AbstractMemberDirectoryTheme.php:839
4921
  msgid "Search"
4922
  msgstr ""
4923
 
4989
  msgid "Oldest Users First"
4990
  msgstr ""
4991
 
4992
+ #: src/Themes/DragDrop/AbstractMemberDirectoryTheme.php:706
4993
  msgid "Sort by"
4994
  msgstr ""
4995
 
4996
+ #: src/Themes/DragDrop/AbstractMemberDirectoryTheme.php:743
4997
  msgid "More Filters"
4998
  msgstr ""
4999
 
readme.txt CHANGED
@@ -1,11 +1,11 @@
1
- === Membership, User Registration, Login Form & User Profile – ProfilePress (Formerly WP User Avatar) ===
2
  Contributors: properfraction, collizo4sky
3
  Donate link: https://profilepress.net/pricing/
4
  Tags: user registration, user profile, registration form, membership, login form, 2fa, two-factor authenticator, login, registration, password reset, members, users, profile, front-end profile, edit profile, avatar, profile picture
5
  Requires at least: 4.7
6
  Requires PHP: 7.1.0
7
  Tested up to: 6.0
8
- Stable tag: 3.2.12
9
  License: GPLv2 or later
10
 
11
  Modern membership plugin for user registration, login form, user profile, member directories & content restriction.
@@ -118,6 +118,9 @@ No. You can create and manage your forms, user profiles and member directories w
118
 
119
  == Changelog ==
120
 
 
 
 
121
  = 3.2.12 =
122
  * Fixed user roles not recognized during member directory search.
123
  * Fixed fatal error caused by empty member directory search field.
1
+ === Membership, User Registration, Login Form & User Profile – ProfilePress (Formerly WP User Avatar) ===
2
  Contributors: properfraction, collizo4sky
3
  Donate link: https://profilepress.net/pricing/
4
  Tags: user registration, user profile, registration form, membership, login form, 2fa, two-factor authenticator, login, registration, password reset, members, users, profile, front-end profile, edit profile, avatar, profile picture
5
  Requires at least: 4.7
6
  Requires PHP: 7.1.0
7
  Tested up to: 6.0
8
+ Stable tag: 3.2.13
9
  License: GPLv2 or later
10
 
11
  Modern membership plugin for user registration, login form, user profile, member directories & content restriction.
118
 
119
  == Changelog ==
120
 
121
+ = 3.2.13 =
122
+ * Fixed bug where custom html texts where scribbled.
123
+
124
  = 3.2.12 =
125
  * Fixed user roles not recognized during member directory search.
126
  * Fixed fatal error caused by empty member directory search field.
src/Functions/GlobalFunctions.php CHANGED
@@ -1454,4 +1454,24 @@ function ppress_clean($var)
1454
  } else {
1455
  return is_scalar($var) ? sanitize_textarea_field($var) : $var;
1456
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1457
  }
1454
  } else {
1455
  return is_scalar($var) ? sanitize_textarea_field($var) : $var;
1456
  }
1457
+ }
1458
+
1459
+ /**
1460
+ * @param $s
1461
+ * @see https://stackoverflow.com/a/23810738/2648410
1462
+ * @return bool
1463
+ */
1464
+ function ppress_is_base64($s)
1465
+ {
1466
+ // Check if there are valid base64 characters
1467
+ if ( ! preg_match('/^[a-zA-Z0-9\/\r\n+]*={0,2}$/', $s)) return false;
1468
+
1469
+ // Decode the string in strict mode and check the results
1470
+ $decoded = base64_decode($s, true);
1471
+ if (false === $decoded) return false;
1472
+
1473
+ // Encode the string again
1474
+ if (base64_encode($decoded) != $s) return false;
1475
+
1476
+ return true;
1477
  }
src/ShortcodeParser/Builder/GlobalShortcodes.php CHANGED
@@ -152,7 +152,13 @@ class GlobalShortcodes
152
  {
153
  $atts = shortcode_atts(['custom_html' => ''], $atts);
154
 
155
- return do_shortcode(stripslashes(wp_kses_post(base64_decode($atts['custom_html']))));
 
 
 
 
 
 
156
  }
157
 
158
  /**
152
  {
153
  $atts = shortcode_atts(['custom_html' => ''], $atts);
154
 
155
+ $val = $atts['custom_html'];
156
+
157
+ if (ppress_is_base64($val)) {
158
+ $val = base64_decode($atts['custom_html']);
159
+ }
160
+
161
+ return do_shortcode(stripslashes(wp_kses_post($val)));
162
  }
163
 
164
  /**
src/Themes/DragDrop/AbstractMemberDirectoryTheme.php CHANGED
@@ -532,11 +532,6 @@ abstract class AbstractMemberDirectoryTheme extends AbstractTheme
532
  case 'username':
533
  $args['orderby'] = 'user_login';
534
  break;
535
- case 'display-name':
536
- $args['meta_key'] = 'display_name';
537
- $args['orderby'] = 'meta_value';
538
- $args['order'] = 'ASC';
539
- break;
540
  case 'first-name':
541
  $args['meta_key'] = 'first_name';
542
  $args['orderby'] = 'meta_value';
532
  case 'username':
533
  $args['orderby'] = 'user_login';
534
  break;
 
 
 
 
 
535
  case 'first-name':
536
  $args['meta_key'] = 'first_name';
537
  $args['orderby'] = 'meta_value';
src/Themes/DragDrop/FieldListing.php CHANGED
@@ -229,7 +229,7 @@ class FieldListing
229
  $val = esc_attr($value);
230
  //do not escape custom HTML
231
  if ($key == 'custom_html') {
232
- $val = addslashes($value);
233
  }
234
 
235
  $attributes .= $key . "='" . $val . "' ";
229
  $val = esc_attr($value);
230
  //do not escape custom HTML
231
  if ($key == 'custom_html') {
232
+ $val = base64_encode($value);
233
  }
234
 
235
  $attributes .= $key . "='" . $val . "' ";
vendor/autoload.php CHANGED
@@ -4,4 +4,4 @@
4
 
5
  require_once __DIR__ . '/composer/autoload_real.php';
6
 
7
- return ComposerAutoloaderInit8a7cbbb4b5cc8c5d3591fc8ed901c822::getLoader();
4
 
5
  require_once __DIR__ . '/composer/autoload_real.php';
6
 
7
+ return ComposerAutoloaderInit660a91cb7a5c630f72ea998a7d8fcada::getLoader();
vendor/composer/autoload_real.php CHANGED
@@ -2,7 +2,7 @@
2
 
3
  // autoload_real.php @generated by Composer
4
 
5
- class ComposerAutoloaderInit8a7cbbb4b5cc8c5d3591fc8ed901c822
6
  {
7
  private static $loader;
8
 
@@ -24,15 +24,15 @@ class ComposerAutoloaderInit8a7cbbb4b5cc8c5d3591fc8ed901c822
24
 
25
  require __DIR__ . '/platform_check.php';
26
 
27
- spl_autoload_register(array('ComposerAutoloaderInit8a7cbbb4b5cc8c5d3591fc8ed901c822', 'loadClassLoader'), true, true);
28
  self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(\dirname(__FILE__)));
29
- spl_autoload_unregister(array('ComposerAutoloaderInit8a7cbbb4b5cc8c5d3591fc8ed901c822', '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\ComposerStaticInit8a7cbbb4b5cc8c5d3591fc8ed901c822::getInitializer($loader));
36
  } else {
37
  $map = require __DIR__ . '/autoload_namespaces.php';
38
  foreach ($map as $namespace => $path) {
@@ -53,19 +53,19 @@ class ComposerAutoloaderInit8a7cbbb4b5cc8c5d3591fc8ed901c822
53
  $loader->register(true);
54
 
55
  if ($useStaticLoader) {
56
- $includeFiles = Composer\Autoload\ComposerStaticInit8a7cbbb4b5cc8c5d3591fc8ed901c822::$files;
57
  } else {
58
  $includeFiles = require __DIR__ . '/autoload_files.php';
59
  }
60
  foreach ($includeFiles as $fileIdentifier => $file) {
61
- composerRequire8a7cbbb4b5cc8c5d3591fc8ed901c822($fileIdentifier, $file);
62
  }
63
 
64
  return $loader;
65
  }
66
  }
67
 
68
- function composerRequire8a7cbbb4b5cc8c5d3591fc8ed901c822($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 ComposerAutoloaderInit660a91cb7a5c630f72ea998a7d8fcada
6
  {
7
  private static $loader;
8
 
24
 
25
  require __DIR__ . '/platform_check.php';
26
 
27
+ spl_autoload_register(array('ComposerAutoloaderInit660a91cb7a5c630f72ea998a7d8fcada', 'loadClassLoader'), true, true);
28
  self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(\dirname(__FILE__)));
29
+ spl_autoload_unregister(array('ComposerAutoloaderInit660a91cb7a5c630f72ea998a7d8fcada', '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\ComposerStaticInit660a91cb7a5c630f72ea998a7d8fcada::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\ComposerStaticInit660a91cb7a5c630f72ea998a7d8fcada::$files;
57
  } else {
58
  $includeFiles = require __DIR__ . '/autoload_files.php';
59
  }
60
  foreach ($includeFiles as $fileIdentifier => $file) {
61
+ composerRequire660a91cb7a5c630f72ea998a7d8fcada($fileIdentifier, $file);
62
  }
63
 
64
  return $loader;
65
  }
66
  }
67
 
68
+ function composerRequire660a91cb7a5c630f72ea998a7d8fcada($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 ComposerStaticInit8a7cbbb4b5cc8c5d3591fc8ed901c822
8
  {
9
  public static $files = array (
10
  'fda73876e8be17735f680f484cec1679' => __DIR__ . '/../..' . '/src/Functions/custom-settings-api.php',
@@ -298,9 +298,9 @@ class ComposerStaticInit8a7cbbb4b5cc8c5d3591fc8ed901c822
298
  public static function getInitializer(ClassLoader $loader)
299
  {
300
  return \Closure::bind(function () use ($loader) {
301
- $loader->prefixLengthsPsr4 = ComposerStaticInit8a7cbbb4b5cc8c5d3591fc8ed901c822::$prefixLengthsPsr4;
302
- $loader->prefixDirsPsr4 = ComposerStaticInit8a7cbbb4b5cc8c5d3591fc8ed901c822::$prefixDirsPsr4;
303
- $loader->classMap = ComposerStaticInit8a7cbbb4b5cc8c5d3591fc8ed901c822::$classMap;
304
 
305
  }, null, ClassLoader::class);
306
  }
4
 
5
  namespace Composer\Autoload;
6
 
7
+ class ComposerStaticInit660a91cb7a5c630f72ea998a7d8fcada
8
  {
9
  public static $files = array (
10
  'fda73876e8be17735f680f484cec1679' => __DIR__ . '/../..' . '/src/Functions/custom-settings-api.php',
298
  public static function getInitializer(ClassLoader $loader)
299
  {
300
  return \Closure::bind(function () use ($loader) {
301
+ $loader->prefixLengthsPsr4 = ComposerStaticInit660a91cb7a5c630f72ea998a7d8fcada::$prefixLengthsPsr4;
302
+ $loader->prefixDirsPsr4 = ComposerStaticInit660a91cb7a5c630f72ea998a7d8fcada::$prefixDirsPsr4;
303
+ $loader->classMap = ComposerStaticInit660a91cb7a5c630f72ea998a7d8fcada::$classMap;
304
 
305
  }, null, ClassLoader::class);
306
  }
vendor/composer/installed.php CHANGED
@@ -5,7 +5,7 @@
5
  'type' => 'library',
6
  'install_path' => __DIR__ . '/../../',
7
  'aliases' => array(),
8
- 'reference' => 'ccdb463f0656414ee8708a79e1aaa65c1b6d605e',
9
  'name' => '__root__',
10
  'dev' => false,
11
  ),
@@ -16,7 +16,7 @@
16
  'type' => 'library',
17
  'install_path' => __DIR__ . '/../../',
18
  'aliases' => array(),
19
- 'reference' => 'ccdb463f0656414ee8708a79e1aaa65c1b6d605e',
20
  'dev_requirement' => false,
21
  ),
22
  'barryvdh/composer-cleanup-plugin' => array(
5
  'type' => 'library',
6
  'install_path' => __DIR__ . '/../../',
7
  'aliases' => array(),
8
+ 'reference' => 'd17ed9d2cc6079dc158f96ccfb7ef1cbcc45ddaf',
9
  'name' => '__root__',
10
  'dev' => false,
11
  ),
16
  'type' => 'library',
17
  'install_path' => __DIR__ . '/../../',
18
  'aliases' => array(),
19
+ 'reference' => 'd17ed9d2cc6079dc158f96ccfb7ef1cbcc45ddaf',
20
  'dev_requirement' => false,
21
  ),
22
  'barryvdh/composer-cleanup-plugin' => 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.2.12
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.2.12');
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.2.13
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.2.13');
18
 
19
  require __DIR__ . '/vendor/autoload.php';
20