Ultimate Member – User Profile & Membership Plugin - Version 2.0.45

Version Description

Download this release

Release Info

Developer nsinelnikov
Plugin Icon 128x128 Ultimate Member – User Profile & Membership Plugin
Version 2.0.45
Comparing to
See all releases

Code changes from version 2.0.44 to 2.0.45

includes/admin/core/class-admin-enqueue.php CHANGED
@@ -477,7 +477,7 @@ if ( ! class_exists( 'um\admin\core\Admin_Enqueue' ) ) {
477
  return;
478
  }
479
 
480
- wp_register_script( 'um-blocks-shortcode-js', $this->js_url . 'um-admin-blocks-shortcode.js', array( 'wp-i18n', 'wp-blocks', 'wp-components' ), ultimatemember_version, true );
481
  wp_set_script_translations( 'um-blocks-shortcode-js', 'ultimate-member' );
482
  wp_enqueue_script( 'um-blocks-shortcode-js' );
483
 
@@ -643,10 +643,13 @@ if ( ! class_exists( 'um\admin\core\Admin_Enqueue' ) ) {
643
 
644
  }
645
 
646
- global $wp_version;
647
  if ( version_compare( $wp_version, '5.0', '>=' ) && ! empty( $this->post_page ) ) {
648
- $this->load_gutenberg_js();
649
- $this->load_gutenberg_shortcode_blocks();
 
 
 
650
  }
651
 
652
  }
477
  return;
478
  }
479
 
480
+ wp_register_script( 'um-blocks-shortcode-js', $this->js_url . 'um-admin-blocks-shortcode.js', array( 'wp-i18n', 'wp-blocks', 'wp-components', /*'rich-text'*/ ), ultimatemember_version, true );
481
  wp_set_script_translations( 'um-blocks-shortcode-js', 'ultimate-member' );
482
  wp_enqueue_script( 'um-blocks-shortcode-js' );
483
 
643
 
644
  }
645
 
646
+ global $wp_version, $current_screen;
647
  if ( version_compare( $wp_version, '5.0', '>=' ) && ! empty( $this->post_page ) ) {
648
+
649
+ if ( $current_screen->is_block_editor() ) {
650
+ $this->load_gutenberg_js();
651
+ $this->load_gutenberg_shortcode_blocks();
652
+ }
653
  }
654
 
655
  }
includes/core/class-gdpr.php CHANGED
@@ -21,7 +21,7 @@ if ( ! class_exists( 'um\core\GDPR' ) ) {
21
  function __construct() {
22
  add_action( 'um_submit_form_register', array( &$this, 'agreement_validation' ), 9 );
23
 
24
- add_filter( 'um_before_save_filter_submitted', array( &$this, 'add_agreement_date' ), 10, 1 );
25
  add_filter( 'um_email_registration_data', array( &$this, 'email_registration_data' ), 10, 1 );
26
 
27
  add_action( 'um_after_form_fields', array( &$this, 'display_option' ) );
@@ -52,10 +52,11 @@ if ( ! class_exists( 'um\core\GDPR' ) ) {
52
 
53
  /**
54
  * @param $submitted
 
55
  *
56
  * @return mixed
57
  */
58
- function add_agreement_date( $submitted ) {
59
  if ( isset( $submitted['use_gdpr_agreement'] ) ) {
60
  $submitted['use_gdpr_agreement'] = time();
61
  }
21
  function __construct() {
22
  add_action( 'um_submit_form_register', array( &$this, 'agreement_validation' ), 9 );
23
 
24
+ add_filter( 'um_before_save_filter_submitted', array( &$this, 'add_agreement_date' ), 10, 2 );
25
  add_filter( 'um_email_registration_data', array( &$this, 'email_registration_data' ), 10, 1 );
26
 
27
  add_action( 'um_after_form_fields', array( &$this, 'display_option' ) );
52
 
53
  /**
54
  * @param $submitted
55
+ * @param $args
56
  *
57
  * @return mixed
58
  */
59
+ function add_agreement_date( $submitted, $args ) {
60
  if ( isset( $submitted['use_gdpr_agreement'] ) ) {
61
  $submitted['use_gdpr_agreement'] = time();
62
  }
includes/core/class-user.php CHANGED
@@ -954,9 +954,10 @@ if ( ! class_exists( 'um\core\User' ) ) {
954
  /**
955
  * Set user's registration details
956
  *
957
- * @param $submitted
 
958
  */
959
- function set_registration_details( $submitted ) {
960
 
961
  if ( isset( $submitted['user_pass'] ) ) {
962
  unset( $submitted['user_pass'] );
@@ -991,21 +992,22 @@ if ( ! class_exists( 'um\core\User' ) ) {
991
  * @title um_before_save_filter_submitted
992
  * @description Change submitted data before save usermeta "submitted" on registration process
993
  * @input_vars
994
- * [{"var":"$submitted","type":"array","desc":"Submitted data"}]
 
995
  * @change_log
996
  * ["Since: 2.0"]
997
  * @usage
998
- * <?php add_filter( 'um_before_save_filter_submitted', 'function_name', 10, 1 ); ?>
999
  * @example
1000
  * <?php
1001
- * add_filter( 'um_before_save_filter_submitted', 'my_before_save_filter_submitted', 10, 1 );
1002
- * function my_before_save_filter_submitted( $submitted ) {
1003
  * // your code here
1004
  * return $submitted;
1005
  * }
1006
  * ?>
1007
  */
1008
- $submitted = apply_filters( 'um_before_save_filter_submitted', $submitted );
1009
 
1010
  /**
1011
  * UM hook
@@ -1672,7 +1674,7 @@ if ( ! class_exists( 'um\core\User' ) ) {
1672
 
1673
  foreach ( $changes as $key => $value ) {
1674
  if ( ! in_array( $key, $this->update_user_keys ) ) {
1675
- if( $value === 0 ){
1676
  update_user_meta( $this->id, $key, '0' );
1677
  } else {
1678
  update_user_meta( $this->id, $key, $value );
954
  /**
955
  * Set user's registration details
956
  *
957
+ * @param array $submitted
958
+ * @param array $args
959
  */
960
+ function set_registration_details( $submitted, $args ) {
961
 
962
  if ( isset( $submitted['user_pass'] ) ) {
963
  unset( $submitted['user_pass'] );
992
  * @title um_before_save_filter_submitted
993
  * @description Change submitted data before save usermeta "submitted" on registration process
994
  * @input_vars
995
+ * [{"var":"$submitted","type":"array","desc":"Submitted data"},
996
+ * {"var":"$args","type":"array","desc":"Form Args"}]
997
  * @change_log
998
  * ["Since: 2.0"]
999
  * @usage
1000
+ * <?php add_filter( 'um_before_save_filter_submitted', 'function_name', 10, 2 ); ?>
1001
  * @example
1002
  * <?php
1003
+ * add_filter( 'um_before_save_filter_submitted', 'my_before_save_filter_submitted', 10, 2 );
1004
+ * function my_before_save_filter_submitted( $submitted, $args ) {
1005
  * // your code here
1006
  * return $submitted;
1007
  * }
1008
  * ?>
1009
  */
1010
+ $submitted = apply_filters( 'um_before_save_filter_submitted', $submitted, $args );
1011
 
1012
  /**
1013
  * UM hook
1674
 
1675
  foreach ( $changes as $key => $value ) {
1676
  if ( ! in_array( $key, $this->update_user_keys ) ) {
1677
+ if ( $value === 0 ) {
1678
  update_user_meta( $this->id, $key, '0' );
1679
  } else {
1680
  update_user_meta( $this->id, $key, $value );
includes/core/class-validation.php CHANGED
@@ -20,6 +20,76 @@ if ( ! class_exists( 'um\core\Validation' ) ) {
20
  function __construct() {
21
  $this->regex_safe = '/\A[\w\-\.]+\z/';
22
  $this->regex_phone_number = '/\A[\d\-\.\+\(\)\ ]+\z/';
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
23
  }
24
 
25
 
20
  function __construct() {
21
  $this->regex_safe = '/\A[\w\-\.]+\z/';
22
  $this->regex_phone_number = '/\A[\d\-\.\+\(\)\ ]+\z/';
23
+
24
+
25
+ add_filter( 'um_user_pre_updating_files_array', array( $this, 'validate_files' ), 10, 1 );
26
+ add_filter( 'um_before_save_filter_submitted', array( $this, 'validate_fields_values' ), 10, 2 );
27
+ }
28
+
29
+
30
+ /**
31
+ * Validate files before upload
32
+ *
33
+ * @param $files
34
+ *
35
+ * @return mixed
36
+ */
37
+ function validate_files( $files ) {
38
+ if ( ! empty( $files ) ) {
39
+ foreach ( $files as $key => $filename ) {
40
+ if ( validate_file( $filename ) !== 0 ) {
41
+ unset( $files[ $key ] );
42
+ }
43
+ }
44
+ }
45
+
46
+ return $files;
47
+ }
48
+
49
+
50
+
51
+ function validate_fields_values( $changes, $args ) {
52
+ $fields = array();
53
+ if ( ! empty( $args['custom_fields'] ) ) {
54
+ $fields = unserialize( $args['custom_fields'] );
55
+ }
56
+
57
+ foreach ( $changes as $key => $value ) {
58
+ //rating field validation
59
+ if ( isset( $fields[ $key ]['type'] ) && $fields[ $key ]['type'] == 'rating' ) {
60
+ if ( ! is_numeric( $value ) ) {
61
+ unset( $changes[ $key ] );
62
+ } else {
63
+ if ( $fields[ $key ]['number'] == 5 ) {
64
+ if ( ! in_array( $value, range( 1, 5 ) ) ) {
65
+ unset( $changes[ $key ] );
66
+ }
67
+ } elseif ( $fields[ $key ]['number'] == 10 ) {
68
+ if ( ! in_array( $value, range( 1, 10 ) ) ) {
69
+ unset( $changes[ $key ] );
70
+ }
71
+ }
72
+ }
73
+ }
74
+
75
+ //validation of correct values from options in wp-admin
76
+ if ( in_array( $fields[ $key ]['type'], array( 'select', 'radio' ) ) &&
77
+ isset( $value ) && ! empty( $fields[ $key ]['options'] ) &&
78
+ ! in_array( $value, $fields[ $key ]['options'] ) ) {
79
+ unset( $changes[ $key ] );
80
+ }
81
+
82
+ //validation of correct values from options in wp-admin
83
+ //the user cannot set invalid value in the hidden input at the page
84
+ if ( in_array( $fields[ $key ]['type'], array( 'multiselect', 'checkbox' ) ) &&
85
+ isset( $value ) && ! empty( $fields[ $key ]['options'] ) ) {
86
+
87
+ $changes[ $key ] = array_intersect( $value, $fields[ $key ]['options'] );
88
+ }
89
+
90
+ }
91
+
92
+ return $changes;
93
  }
94
 
95
 
includes/core/um-actions-profile.php CHANGED
@@ -179,14 +179,17 @@ function um_user_edit_profile( $args ) {
179
  $to_update = null;
180
  $files = array();
181
 
 
182
  if ( isset( $args['user_id'] ) ) {
183
- if ( UM()->roles()->um_current_user_can( 'edit', $args['user_id'] ) ) {
184
- UM()->user()->set( $args['user_id'] );
185
- } else {
186
- wp_die( __( 'You are not allowed to edit this user.', 'ultimate-member' ) );
187
- }
188
  } elseif ( isset( $args['_user_id'] ) ) {
189
- UM()->user()->set( $args['_user_id'] );
 
 
 
 
 
 
190
  }
191
 
192
  $userinfo = UM()->user()->profile;
@@ -225,6 +228,39 @@ function um_user_edit_profile( $args ) {
225
  continue;
226
  }
227
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
228
  if ( $array['type'] == 'multiselect' || $array['type'] == 'checkbox' && ! isset( $args['submitted'][ $key ] ) ) {
229
  delete_user_meta( um_user( 'ID' ), $key );
230
  }
179
  $to_update = null;
180
  $files = array();
181
 
182
+ $user_id = null;
183
  if ( isset( $args['user_id'] ) ) {
184
+ $user_id = $args['user_id'];
 
 
 
 
185
  } elseif ( isset( $args['_user_id'] ) ) {
186
+ $user_id = $args['_user_id'];
187
+ }
188
+
189
+ if ( UM()->roles()->um_current_user_can( 'edit', $user_id ) ) {
190
+ UM()->user()->set( $user_id );
191
+ } else {
192
+ wp_die( __( 'You are not allowed to edit this user.', 'ultimate-member' ) );
193
  }
194
 
195
  $userinfo = UM()->user()->profile;
228
  continue;
229
  }
230
 
231
+ //the same code in class-validation.php validate_fields_values for registration form
232
+ //rating field validation
233
+ if ( $array['type'] == 'rating' && isset( $args['submitted'][ $key ] ) ) {
234
+ if ( ! is_numeric( $args['submitted'][ $key ] ) ) {
235
+ continue;
236
+ } else {
237
+ if ( $array['number'] == 5 ) {
238
+ if ( ! in_array( $args['submitted'][ $key ], range( 1, 5 ) ) ) {
239
+ continue;
240
+ }
241
+ } elseif ( $array['number'] == 10 ) {
242
+ if ( ! in_array( $args['submitted'][ $key ], range( 1, 10 ) ) ) {
243
+ continue;
244
+ }
245
+ }
246
+ }
247
+ }
248
+
249
+ //validation of correct values from options in wp-admin
250
+ if ( in_array( $array['type'], array( 'select', 'radio' ) ) &&
251
+ isset( $args['submitted'][ $key ] ) && ! empty( $array['options'] ) &&
252
+ ! in_array( $args['submitted'][ $key ], $array['options'] ) ) {
253
+ continue;
254
+ }
255
+
256
+ //validation of correct values from options in wp-admin
257
+ //the user cannot set invalid value in the hidden input at the page
258
+ if ( in_array( $array['type'], array( 'multiselect', 'checkbox' ) ) &&
259
+ isset( $args['submitted'][ $key ] ) && ! empty( $array['options'] ) ) {
260
+
261
+ $args['submitted'][ $key ] = array_intersect( $args['submitted'][ $key ], $array['options'] );
262
+ }
263
+
264
  if ( $array['type'] == 'multiselect' || $array['type'] == 'checkbox' && ! isset( $args['submitted'][ $key ] ) ) {
265
  delete_user_meta( um_user( 'ID' ), $key );
266
  }
includes/core/um-actions-register.php CHANGED
@@ -56,7 +56,7 @@ function um_after_insert_user( $user_id, $args ) {
56
 
57
  um_fetch_user( $user_id );
58
  if ( ! empty( $args['submitted'] ) ) {
59
- UM()->user()->set_registration_details( $args['submitted'] );
60
  }
61
  UM()->user()->set_status( um_user( 'status' ) );
62
 
@@ -589,8 +589,9 @@ add_action( 'um_main_register_fields', 'um_add_register_fields', 100 );
589
  */
590
  function um_registration_save_files( $user_id, $args ) {
591
 
592
- if ( empty( $args['custom_fields'] ) )
593
  return;
 
594
 
595
  $files = array();
596
 
@@ -603,11 +604,11 @@ function um_registration_save_files( $user_id, $args ) {
603
 
604
  if ( isset( $args['submitted'][$key] ) ) {
605
 
606
- if ( isset( $fields[$key]['type'] ) && in_array( $fields[$key]['type'], array( 'image', 'file' ) ) &&
607
- ( um_is_temp_file( $args['submitted'][$key] ) || $args['submitted'][$key] == 'empty_file' )
608
  ) {
609
 
610
- $files[$key] = $args['submitted'][$key];
611
 
612
  }
613
  }
56
 
57
  um_fetch_user( $user_id );
58
  if ( ! empty( $args['submitted'] ) ) {
59
+ UM()->user()->set_registration_details( $args['submitted'], $args );
60
  }
61
  UM()->user()->set_status( um_user( 'status' ) );
62
 
589
  */
590
  function um_registration_save_files( $user_id, $args ) {
591
 
592
+ if ( empty( $args['custom_fields'] ) ) {
593
  return;
594
+ }
595
 
596
  $files = array();
597
 
604
 
605
  if ( isset( $args['submitted'][$key] ) ) {
606
 
607
+ if ( isset( $fields[ $key ]['type'] ) && in_array( $fields[ $key ]['type'], array( 'image', 'file' ) ) &&
608
+ ( um_is_temp_file( $args['submitted'][ $key ] ) || $args['submitted'][ $key ] == 'empty_file' )
609
  ) {
610
 
611
+ $files[ $key ] = $args['submitted'][ $key ];
612
 
613
  }
614
  }
includes/core/um-filters-fields.php CHANGED
@@ -671,7 +671,7 @@ function um_profile_field_filter_xss_validation( $value, $data, $type = '' ) {
671
 
672
  return $value;
673
  }
674
- add_filter( 'um_profile_field_filter_hook__','um_profile_field_filter_xss_validation', 10, 3 );
675
 
676
 
677
  /**
671
 
672
  return $value;
673
  }
674
+ add_filter( 'um_profile_field_filter_hook__', 'um_profile_field_filter_xss_validation', 10, 3 );
675
 
676
 
677
  /**
includes/um-short-functions.php CHANGED
@@ -727,7 +727,7 @@ function um_user_submitted_registration( $style = false ) {
727
  }
728
 
729
  if ( ! empty( $filedata['original_name'] ) ) {
730
- $v = '<a href="' . esc_attr( $baseurl . um_user( 'ID' ) . '/' . $file ) . '">' . $filedata['original_name'] . '</a>';
731
  } else {
732
  $v = $baseurl . um_user( 'ID' ) . '/' . $file;
733
  }
@@ -824,7 +824,7 @@ function um_filtered_value( $key, $data = false ) {
824
  * }
825
  * ?>
826
  */
827
- $value = apply_filters( "um_profile_field_filter_hook__", $value, $data, $type );
828
 
829
  /**
830
  * UM hook
727
  }
728
 
729
  if ( ! empty( $filedata['original_name'] ) ) {
730
+ $v = '<a href="' . esc_attr( $baseurl . um_user( 'ID' ) . '/' . $file ) . '">' . esc_html( $filedata['original_name'] ) . '</a>';
731
  } else {
732
  $v = $baseurl . um_user( 'ID' ) . '/' . $file;
733
  }
824
  * }
825
  * ?>
826
  */
827
+ $value = apply_filters( 'um_profile_field_filter_hook__', $value, $data, $type );
828
 
829
  /**
830
  * UM hook
languages/ultimate-member-en_US.mo CHANGED
Binary file
languages/ultimate-member-en_US.po CHANGED
@@ -1,8 +1,8 @@
1
  msgid ""
2
  msgstr ""
3
  "Project-Id-Version: Ultimate Member\n"
4
- "POT-Creation-Date: 2019-05-08 11:05+0300\n"
5
- "PO-Revision-Date: 2019-05-08 11:05+0300\n"
6
  "Last-Translator: \n"
7
  "Language-Team: \n"
8
  "Language: en_US\n"
@@ -268,7 +268,7 @@ msgstr ""
268
  #: includes/admin/core/class-admin-forms.php:951
269
  #: includes/admin/core/class-admin-forms.php:960
270
  #: includes/admin/core/class-admin-notices.php:390
271
- #: includes/core/um-actions-profile.php:556
272
  msgid "Remove"
273
  msgstr ""
274
 
@@ -3615,11 +3615,11 @@ msgstr ""
3615
  #: includes/admin/templates/modal/fonticons.php:11
3616
  #: includes/admin/templates/role/publish.php:24
3617
  #: includes/core/class-fields.php:2333 includes/core/class-fields.php:2430
3618
- #: includes/core/um-actions-profile.php:557
3619
- #: includes/core/um-actions-profile.php:696
3620
- #: includes/core/um-actions-profile.php:729
3621
- #: includes/core/um-actions-profile.php:1074
3622
- #: includes/core/um-actions-profile.php:1081
3623
  msgid "Cancel"
3624
  msgstr ""
3625
 
@@ -3982,7 +3982,7 @@ msgid "Members"
3982
  msgstr ""
3983
 
3984
  #: includes/class-config.php:133 includes/class-config.php:745
3985
- #: includes/core/um-actions-profile.php:1080
3986
  #: includes/core/um-actions-user.php:15
3987
  msgid "Logout"
3988
  msgstr ""
@@ -4250,7 +4250,7 @@ msgstr ""
4250
  msgid "You must add a shortcode to the content area"
4251
  msgstr ""
4252
 
4253
- #: includes/core/class-builtin.php:663 includes/core/class-user.php:1544
4254
  msgid "Only me"
4255
  msgstr ""
4256
 
@@ -4399,7 +4399,7 @@ msgid "Cover Photo"
4399
  msgstr ""
4400
 
4401
  #: includes/core/class-builtin.php:1085
4402
- #: includes/core/um-actions-profile.php:519
4403
  msgid "Change your cover photo"
4404
  msgstr ""
4405
 
@@ -6369,7 +6369,7 @@ msgid "Upload Photo"
6369
  msgstr ""
6370
 
6371
  #: includes/core/class-fields.php:2308 includes/core/class-fields.php:2332
6372
- #: includes/core/um-actions-profile.php:727
6373
  msgid "Change photo"
6374
  msgstr ""
6375
 
@@ -6945,46 +6945,46 @@ msgstr ""
6945
  msgid "Your membership request has been rejected."
6946
  msgstr ""
6947
 
6948
- #: includes/core/um-actions-profile.php:186
6949
  msgid "You are not allowed to edit this user."
6950
  msgstr ""
6951
 
6952
- #: includes/core/um-actions-profile.php:243
6953
  #, php-format
6954
  msgid "Your choosed %s"
6955
  msgstr ""
6956
 
6957
- #: includes/core/um-actions-profile.php:555
6958
  msgid "Change cover photo"
6959
  msgstr ""
6960
 
6961
- #: includes/core/um-actions-profile.php:598
6962
  msgid "Upload a cover photo"
6963
  msgstr ""
6964
 
6965
- #: includes/core/um-actions-profile.php:695
6966
  msgid "Upload photo"
6967
  msgstr ""
6968
 
6969
- #: includes/core/um-actions-profile.php:728
6970
  msgid "Remove photo"
6971
  msgstr ""
6972
 
6973
- #: includes/core/um-actions-profile.php:892
6974
  msgid "Tell us a bit about yourself..."
6975
  msgstr ""
6976
 
6977
- #: includes/core/um-actions-profile.php:908
6978
  #, php-format
6979
  msgid "This user account status is %s"
6980
  msgstr ""
6981
 
6982
- #: includes/core/um-actions-profile.php:1047
6983
- #: includes/core/um-actions-profile.php:1078
6984
  msgid "Edit Profile"
6985
  msgstr ""
6986
 
6987
- #: includes/core/um-actions-profile.php:1079
6988
  msgid "My Account"
6989
  msgstr ""
6990
 
1
  msgid ""
2
  msgstr ""
3
  "Project-Id-Version: Ultimate Member\n"
4
+ "POT-Creation-Date: 2019-05-08 17:47+0300\n"
5
+ "PO-Revision-Date: 2019-05-08 17:47+0300\n"
6
  "Last-Translator: \n"
7
  "Language-Team: \n"
8
  "Language: en_US\n"
268
  #: includes/admin/core/class-admin-forms.php:951
269
  #: includes/admin/core/class-admin-forms.php:960
270
  #: includes/admin/core/class-admin-notices.php:390
271
+ #: includes/core/um-actions-profile.php:592
272
  msgid "Remove"
273
  msgstr ""
274
 
3615
  #: includes/admin/templates/modal/fonticons.php:11
3616
  #: includes/admin/templates/role/publish.php:24
3617
  #: includes/core/class-fields.php:2333 includes/core/class-fields.php:2430
3618
+ #: includes/core/um-actions-profile.php:593
3619
+ #: includes/core/um-actions-profile.php:732
3620
+ #: includes/core/um-actions-profile.php:765
3621
+ #: includes/core/um-actions-profile.php:1110
3622
+ #: includes/core/um-actions-profile.php:1117
3623
  msgid "Cancel"
3624
  msgstr ""
3625
 
3982
  msgstr ""
3983
 
3984
  #: includes/class-config.php:133 includes/class-config.php:745
3985
+ #: includes/core/um-actions-profile.php:1116
3986
  #: includes/core/um-actions-user.php:15
3987
  msgid "Logout"
3988
  msgstr ""
4250
  msgid "You must add a shortcode to the content area"
4251
  msgstr ""
4252
 
4253
+ #: includes/core/class-builtin.php:663 includes/core/class-user.php:1546
4254
  msgid "Only me"
4255
  msgstr ""
4256
 
4399
  msgstr ""
4400
 
4401
  #: includes/core/class-builtin.php:1085
4402
+ #: includes/core/um-actions-profile.php:555
4403
  msgid "Change your cover photo"
4404
  msgstr ""
4405
 
6369
  msgstr ""
6370
 
6371
  #: includes/core/class-fields.php:2308 includes/core/class-fields.php:2332
6372
+ #: includes/core/um-actions-profile.php:763
6373
  msgid "Change photo"
6374
  msgstr ""
6375
 
6945
  msgid "Your membership request has been rejected."
6946
  msgstr ""
6947
 
6948
+ #: includes/core/um-actions-profile.php:192
6949
  msgid "You are not allowed to edit this user."
6950
  msgstr ""
6951
 
6952
+ #: includes/core/um-actions-profile.php:279
6953
  #, php-format
6954
  msgid "Your choosed %s"
6955
  msgstr ""
6956
 
6957
+ #: includes/core/um-actions-profile.php:591
6958
  msgid "Change cover photo"
6959
  msgstr ""
6960
 
6961
+ #: includes/core/um-actions-profile.php:634
6962
  msgid "Upload a cover photo"
6963
  msgstr ""
6964
 
6965
+ #: includes/core/um-actions-profile.php:731
6966
  msgid "Upload photo"
6967
  msgstr ""
6968
 
6969
+ #: includes/core/um-actions-profile.php:764
6970
  msgid "Remove photo"
6971
  msgstr ""
6972
 
6973
+ #: includes/core/um-actions-profile.php:928
6974
  msgid "Tell us a bit about yourself..."
6975
  msgstr ""
6976
 
6977
+ #: includes/core/um-actions-profile.php:944
6978
  #, php-format
6979
  msgid "This user account status is %s"
6980
  msgstr ""
6981
 
6982
+ #: includes/core/um-actions-profile.php:1083
6983
+ #: includes/core/um-actions-profile.php:1114
6984
  msgid "Edit Profile"
6985
  msgstr ""
6986
 
6987
+ #: includes/core/um-actions-profile.php:1115
6988
  msgid "My Account"
6989
  msgstr ""
6990
 
readme.txt CHANGED
@@ -6,7 +6,7 @@ Donate link:
6
  Tags: community, member, membership, user-profile, user-registration
7
  Requires at least: 4.9
8
  Tested up to: 5.2
9
- Stable tag: 2.0.44
10
  License: GNU Version 2 or Any Later Version
11
  License URI: http://www.gnu.org/licenses/gpl-3.0.txt
12
 
@@ -133,6 +133,12 @@ The plugin works with popular caching plugins by automatically excluding Ultimat
133
 
134
  = Important: UM2.0+ is a significant update to the code base from 1.3.88. Please make sure you take a full-site backup with restore point before updating the plugin =
135
 
 
 
 
 
 
 
136
  = 2.0.44: May 08, 2019 =
137
 
138
  * Enhancements:
6
  Tags: community, member, membership, user-profile, user-registration
7
  Requires at least: 4.9
8
  Tested up to: 5.2
9
+ Stable tag: 2.0.45
10
  License: GNU Version 2 or Any Later Version
11
  License URI: http://www.gnu.org/licenses/gpl-3.0.txt
12
 
133
 
134
  = Important: UM2.0+ is a significant update to the code base from 1.3.88. Please make sure you take a full-site backup with restore point before updating the plugin =
135
 
136
+ = 2.0.45: May 08, 2019 =
137
+
138
+ * Bugfixes:
139
+ - Fixed issues with Gutenberg scripts and UM blocks
140
+ - Security vulnerabilities on Profile/Registration submit and file/images uploading
141
+
142
  = 2.0.44: May 08, 2019 =
143
 
144
  * Enhancements:
ultimate-member.php CHANGED
@@ -3,7 +3,7 @@
3
  Plugin Name: Ultimate Member
4
  Plugin URI: http://ultimatemember.com/
5
  Description: The easiest way to create powerful online communities and beautiful user profiles with WordPress
6
- Version: 2.0.44
7
  Author: Ultimate Member
8
  Author URI: http://ultimatemember.com/
9
  Text Domain: ultimate-member
3
  Plugin Name: Ultimate Member
4
  Plugin URI: http://ultimatemember.com/
5
  Description: The easiest way to create powerful online communities and beautiful user profiles with WordPress
6
+ Version: 2.0.45
7
  Author: Ultimate Member
8
  Author URI: http://ultimatemember.com/
9
  Text Domain: ultimate-member