Version Description
Download this release
Release Info
Developer | nsinelnikov |
Plugin | Ultimate Member – User Profile & Membership Plugin |
Version | 2.1.13 |
Comparing to | |
See all releases |
Code changes from version 2.1.12 to 2.1.13
- assets/js/um-members.js +8 -2
- assets/js/um-members.min.js +1 -1
- includes/admin/assets/css/um-admin-modal.css +10 -1
- includes/admin/assets/js/um-admin-blocks.js +33 -24
- includes/admin/assets/js/um-admin-modal.js +1 -1
- includes/admin/core/class-admin-builder.php +8 -0
- includes/admin/core/class-admin-enqueue.php +1 -1
- includes/admin/core/class-admin-metabox.php +1 -1
- includes/admin/core/class-admin-settings.php +2 -2
- includes/admin/core/class-admin-upgrade.php +25 -21
- includes/admin/core/class-admin-users.php +4 -5
- includes/admin/core/packages/2.0-beta1/init.php +56 -19
- includes/admin/core/packages/2.0.10/init.php +3 -1
- includes/admin/core/packages/2.1.0-beta1/init.php +3 -1
- includes/admin/core/packages/2.1.3-beta3/init.php +9 -3
- includes/core/class-access.php +13 -8
- includes/core/class-builtin.php +1 -1
- includes/core/class-fields.php +4 -1
- includes/core/class-form.php +2 -2
- includes/core/class-gdpr.php +1 -3
- includes/core/class-login.php +2 -1
- includes/core/class-member-directory-meta.php +6 -6
- includes/core/class-member-directory.php +19 -12
- includes/core/class-password.php +3 -3
- includes/core/class-profile.php +1 -1
- includes/core/class-register.php +2 -1
- includes/core/class-user.php +2 -2
- includes/core/class-validation.php +13 -8
- includes/core/um-actions-account.php +4 -2
- includes/core/um-actions-form.php +17 -1
- includes/core/um-actions-global.php +0 -2
- includes/core/um-actions-misc.php +4 -0
- includes/core/um-actions-profile.php +4 -4
- includes/core/um-actions-register.php +6 -0
- includes/core/um-filters-fields.php +3 -1
- readme.txt +29 -2
- templates/gdpr-register.php +3 -2
- templates/message.php +3 -1
- templates/register.php +1 -1
- templates/restricted-taxonomy.php +45 -44
- ultimate-member.php +1 -1
assets/js/um-members.js
CHANGED
@@ -4,7 +4,6 @@ var um_member_directories = [];
|
|
4 |
|
5 |
var um_member_directory_last_data = [];
|
6 |
|
7 |
-
|
8 |
function um_parse_current_url() {
|
9 |
var data = {};
|
10 |
|
@@ -218,8 +217,14 @@ function um_ajax_get_members( directory, args ) {
|
|
218 |
*
|
219 |
*/
|
220 |
|
221 |
-
|
222 |
var hash = um_members_get_hash( directory );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
223 |
var page = um_get_current_page( directory );
|
224 |
var search = um_get_search( directory );
|
225 |
var sorting = um_get_sort( directory );
|
@@ -1330,6 +1335,7 @@ jQuery(document.body).ready( function() {
|
|
1330 |
jQuery( '.um-directory' ).each( function() {
|
1331 |
var directory = jQuery(this);
|
1332 |
var hash = um_members_get_hash( directory );
|
|
|
1333 |
um_member_directories.push( hash );
|
1334 |
|
1335 |
// slideup/slidedown animation fix for grid filters bar
|
4 |
|
5 |
var um_member_directory_last_data = [];
|
6 |
|
|
|
7 |
function um_parse_current_url() {
|
8 |
var data = {};
|
9 |
|
217 |
*
|
218 |
*/
|
219 |
|
|
|
220 |
var hash = um_members_get_hash( directory );
|
221 |
+
|
222 |
+
var allow = wp.hooks.applyFilters( 'um_member_directory_get_members_allow', true, hash, directory );
|
223 |
+
if ( ! allow ) {
|
224 |
+
setTimeout( um_ajax_get_members, 600, directory, args );
|
225 |
+
return;
|
226 |
+
}
|
227 |
+
|
228 |
var page = um_get_current_page( directory );
|
229 |
var search = um_get_search( directory );
|
230 |
var sorting = um_get_sort( directory );
|
1335 |
jQuery( '.um-directory' ).each( function() {
|
1336 |
var directory = jQuery(this);
|
1337 |
var hash = um_members_get_hash( directory );
|
1338 |
+
|
1339 |
um_member_directories.push( hash );
|
1340 |
|
1341 |
// slideup/slidedown animation fix for grid filters bar
|
assets/js/um-members.min.js
CHANGED
@@ -1 +1 @@
|
|
1 |
-
var um_members_directory_busy=[],um_member_directories=[],um_member_directory_last_data=[];function um_parse_current_url(){var t={},a=window.location.search.substring(1).split("&");return jQuery.each(a,function(e){var r=a[e].split("=");t[r[0]]=r[1]}),t}function um_get_data_for_directory(e,r){var t=um_members_get_hash(e),a={},i=um_parse_current_url();if(jQuery.each(i,function(e){-1!==e.indexOf("_"+t)&&""!==i[e]&&(a[e.replace("_"+t,"")]=i[e])}),r){if(void 0!==a[r])try{a[r]=decodeURIComponent(a[r])}catch(e){console.error(e)}return a[r]}return a}function um_set_url_from_data(e,r,t){var a=um_members_get_hash(e),i=um_get_data_for_directory(e),m={};jQuery.isArray(t)?(jQuery.each(t,function(e){t[e]=encodeURIComponent(t[e])}),t=t.join("||")):jQuery.isNumeric(t)||(t=t.split("||"),jQuery.each(t,function(e){t[e]=encodeURIComponent(t[e])}),t=t.join("||")),""!==t&&(m[r+"_"+a]=t),jQuery.each(i,function(e){r===e?""!==t&&(m[e+"_"+a]=t):m[e+"_"+a]=i[e]}),jQuery.each(um_member_directories,function(e){var r=um_member_directories[e];if(r!==a){var t=um_get_data_for_directory(jQuery('.um-directory[data-hash="'+r+'"]'));jQuery.each(t,function(e){m[e+"_"+r]=t[e]})}});var d=[];jQuery.each(m,function(e){d.push(e+"="+m[e])});var s="?"+(d=wp.hooks.applyFilters("um_member_directory_url_attrs",d)).join("&");"?"===s&&(s=""),window.history.pushState("string","UM Member Directory",window.location.origin+window.location.pathname+s)}function um_members_get_hash(e){return e.data("hash")}function um_is_directory_busy(e){var r=um_members_get_hash(e);return void 0!==um_members_directory_busy[r]&&um_members_directory_busy[r]}function um_members_show_preloader(e){um_members_directory_busy[um_members_get_hash(e)]=!0,e.find(".um-members-overlay").show()}function um_members_hide_preloader(e){um_members_directory_busy[um_members_get_hash(e)]=!1,e.find(".um-members-overlay").hide()}function um_set_range_label(e,r){var t="",a=e.siblings(".um-slider-range").data("placeholder-s"),i=e.siblings(".um-slider-range").data("placeholder-p");t=r?r.values[0]===r.values[1]?a.replace("{value}",r.values[0]).replace("{field_label}",e.siblings(".um-slider-range").data("label")):i.replace("{min_range}",r.values[0]).replace("{max_range}",r.values[1]).replace("{field_label}",e.siblings(".um-slider-range").data("label")):e.slider("values",0)===e.slider("values",1)?a.replace("{value}",e.slider("values",0)).replace("{field_label}",e.siblings(".um-slider-range").data("label")):i.replace("{min_range}",e.slider("values",0)).replace("{max_range}",e.slider("values",1)).replace("{field_label}",e.siblings(".um-slider-range").data("label")),e.siblings(".um-slider-range").html(t),e.siblings(".um_range_min").val(e.slider("values",0)),e.siblings(".um_range_max").val(e.slider("values",1))}function um_get_search(e){return e.find(".um-search-line").length?e.find(".um-search-line").val():""}function um_get_sort(e){return e.data("sorting")}function um_get_current_page(e){var r=e.data("page");return r&&void 0!==r||(r=1),r}function um_time_convert(e,r){var t=Math.floor(e/60),a=e%60;return 60<=a&&(a=0,24<=(t+=1)&&(t=0)),a<10&&(a="0"+a),t+":"+a}function um_ajax_get_members(u,e){var t=um_members_get_hash(u),r=um_get_current_page(u),a=um_get_search(u),i=um_get_sort(u),m=-(new Date).getTimezoneOffset()/60,_={directory_id:t,page:r,search:a,sorting:i,gmt_offset:m,post_refferer:u.data("base-post"),nonce:um_scripts.nonce};u.find(".um-search-filter").length&&u.find(".um-search-filter").each(function(){var e=jQuery(this);if(e.find(".um-slider").length){var r=e.find(".um-slider").data("field_name"),t=um_get_data_for_directory(u,"filter_"+r+"_from"),a=um_get_data_for_directory(u,"filter_"+r+"_to");void 0===t&&void 0===a||(_[r]=[t,a])}else if(e.find(".um-datepicker-filter").length){r=e.find(".um-datepicker-filter").data("filter_name"),t=um_get_data_for_directory(u,"filter_"+r+"_from"),a=um_get_data_for_directory(u,"filter_"+r+"_to");void 0===t&&void 0===a||(_[r]=[t,a])}else if(e.find(".um-timepicker-filter").length){r=e.find(".um-timepicker-filter").data("filter_name"),t=um_get_data_for_directory(u,"filter_"+r+"_from"),a=um_get_data_for_directory(u,"filter_"+r+"_to");if(void 0!==t)(i=1*(t=t.split(":"))[0])<10&&(i="0"+i),(d=1*t[1])<10&&(d="0"+d),t=i+":"+d+":00";if(void 0!==a){var i,m=a.split(":"),d=1*m[1];(i=1*m[0])<10&&(i="0"+i),d<10&&(d="0"+d),a=i+":"+d+":59"}void 0===t&&void 0===a||(_[r]=[t,a])}else if(e.find("select").length){r=e.find("select").attr("name");void 0!==(s=um_get_data_for_directory(u,"filter_"+r))&&(_[r]=s.split("||"))}else if(e.hasClass("um-text-filter-type")&&e.find('input[type="text"]').length){var s;r=e.find('input[type="text"]').attr("name");void 0!==(s=um_get_data_for_directory(u,"filter_"+r))&&(_[r]=s)}else _=wp.hooks.applyFilters("um_member_directory_custom_filter_handler",_,e,u)}),_=wp.hooks.applyFilters("um_member_directory_filter_request",_),wp.ajax.send("um_get_members",{data:_,success:function(e){um_member_directory_last_data[t]=e,um_build_template(u,e);var r=wp.template("um-members-pagination");u.find(".um-members-pagination-box").html(r(e)),u.data("total_pages",e.pagination.total_pages),e.pagination.total_pages?(u.find(".um-member-directory-sorting-options").prop("disabled",!1),u.find(".um-member-directory-view-type").removeClass("um-disabled")):(u.find(".um-member-directory-sorting-options").prop("disabled",!0),u.find(".um-member-directory-view-type").addClass("um-disabled")),wp.hooks.doAction("um_member_directory_loaded",u,e),um_init_new_dropdown(),um_members_hide_preloader(u)},error:function(e){console.log(e),um_members_hide_preloader(u)}})}function um_build_template(e,r){var t=e.data("view_type"),a=wp.template("um-member-"+t+"-"+um_members_get_hash(e));e.find(".um-members-grid, .um-members-list").remove(),e.find(".um-members-wrapper").prepend(a(r.users));var i=wp.template("um-members-header");e.find(".um-members-intro").remove();var m=wp.hooks.applyFilters("um_member_directory_generate_header",!1,e);(void 0!==r.is_search&&r.is_search||m)&&e.find(".um-members-wrapper").prepend(i(r)),e.addClass("um-loaded"),e.find(".um-members.um-members-grid").length&&UM_Member_Grid(e.find(".um-members.um-members-grid")),jQuery(document).trigger("um_build_template",[e,r]),jQuery(window).trigger("resize"),init_tipsy()}function UM_Member_Grid(e){e.find(".um-member").length&&e.imagesLoaded(function(){e.masonry({itemSelector:".um-member",columnWidth:".um-member",gutter:".um-gutter-sizer"}).on("layoutComplete",function(e,r){jQuery(document).trigger("um_grid_initialized",[e,r])})})}function um_get_filters_data(u){var _=[];return u.find(".um-search-filter").each(function(){var t,a,d,i=jQuery(this);if(i.find("input.um-datepicker-filter").length)d="datepicker",i.find("input.um-datepicker-filter").each(function(){if("to"!==jQuery(this).data("range")){var e=jQuery(this).data("filter_name"),r=um_get_data_for_directory(u,"filter_"+e+"_from"),t=um_get_data_for_directory(u,"filter_"+e+"_to");if(void 0!==r||void 0!==t){var a,i=jQuery(this).val(),m=u.find('input.um-datepicker-filter[data-range="to"][data-filter_name="'+e+'"]').val();i===m?a=m:""!==i&&""!==m?a=i+" - "+m:""===i?a="before "+m:""===m&&(a="since "+i),_.push({name:e,label:jQuery(this).data("filter-label"),value_label:a,value:[r,t],type:d})}}});else if(i.find("input.um-timepicker-filter").length)d="timepicker",i.find("input.um-timepicker-filter").each(function(){if("to"!==jQuery(this).data("range")){var e=jQuery(this).data("filter_name"),r=um_get_data_for_directory(u,"filter_"+e+"_from"),t=um_get_data_for_directory(u,"filter_"+e+"_to");if(void 0!==r||void 0!==t){var a,i=jQuery(this).val(),m=u.find('input.um-timepicker-filter[data-range="to"][data-filter_name="'+e+'"]').val();i===m?a=m:""!==i&&""!==m?a=i+" - "+m:""===i?a="before "+m:""===m&&(a="since "+i),_.push({name:e,label:jQuery(this).data("filter-label"),value_label:a,value:[r,t],type:d})}}});else if(i.find("select").length){d="select",t=i.find("select").attr("name"),a=i.find("select").data("placeholder"),m=void 0===(m=um_get_data_for_directory(u,"filter_"+t))?[]:m.split("||"),jQuery.each(m,function(e){var r=i.find('select option[value="'+m[e]+'"]').data("value_label");_.push({name:t,label:a,value_label:r,value:m[e],type:d})})}else if(i.hasClass("um-text-filter-type")&&i.find('input[type="text"]').length){var m;d="text",t=i.find('input[type="text"]').attr("name"),a=i.find('input[type="text"]').attr("placeholder"),void 0===(m=um_get_data_for_directory(u,"filter_"+t))&&(m=""),""!=m&&_.push({name:t,label:a,value_label:m,value:m,type:d})}else if(i.find("div.ui-slider").length){d="slider",t=i.find("div.ui-slider").data("field_name");var e,r=um_get_data_for_directory(u,"filter_"+t+"_from"),s=um_get_data_for_directory(u,"filter_"+t+"_to");if(void 0===r&&void 0===s)return;e=r===s?i.find("div.um-slider-range").data("placeholder-s").replace("{value}",r).replace("{field_label}",i.find("div.um-slider-range").data("label")):i.find("div.um-slider-range").data("placeholder-p").replace("{min_range}",r).replace("{max_range}",s).replace("{field_label}",i.find("div.um-slider-range").data("label")),a=i.find("div.um-slider-range").data("label"),_.push({name:t,label:a,value_label:e,value:[r,s],type:d})}else _=wp.hooks.applyFilters("um_member_directory_get_filter_data",_,u,i)}),_}function um_change_tag(e){var r=um_get_filters_data(e);e.find(".um-members-filter-tag").remove();var t=e.find(".um-filtered-line");if(t.length){var a=wp.template("um-members-filtered-line");t.prepend(a({filters:r})),0===e.find(".um-members-filter-remove").length?(e.find(".um-clear-filters").hide(),e.find(".um-clear-filters").parents(".um-member-directory-header-row").addClass("um-header-row-invisible")):(e.find(".um-clear-filters").show(),e.find(".um-clear-filters").parents(".um-member-directory-header-row").removeClass("um-header-row-invisible"))}}function um_run_search(e){if(!um_is_directory_busy(e)){um_members_show_preloader(e);var r=um_get_data_for_directory(e,"search"),t=e.find(".um-search-line").val();if(t===r||""===t&&void 0===r)um_members_hide_preloader(e);else{e.data("general_search",t),um_set_url_from_data(e,"search",t),e.data("page",1),um_set_url_from_data(e,"page","");var a=!1;if(!(a=wp.hooks.applyFilters("um_member_directory_ignore_after_search",a,e)))if(1===e.data("must-search")&&(t=um_get_search(e),0===e.find(".um-members-filter-remove").length&&!t))return e.data("searched",0),e.find(".um-members-grid, .um-members-list, .um-members-intro").remove(),e.find(".um-member-directory-sorting-options").prop("disabled",!0),e.find(".um-member-directory-view-type").addClass("um-disabled"),wp.hooks.doAction("um_member_directory_clear_not_searched",e),void um_members_hide_preloader(e);e.data("searched",1),e.find(".um-member-directory-sorting-options").prop("disabled",!1),e.find(".um-member-directory-view-type").removeClass("um-disabled"),um_ajax_get_members(e)}}}jQuery(document.body).ready(function(){jQuery(".um-directory .um-search-filter select").each(function(){1===jQuery(this).find("option:not(:disabled)").length&&jQuery(this).prop("disabled",!0),jQuery(this).select2("destroy").select2()}),jQuery(document.body).on("mouseover",".um-directory .um-member-directory-view-type",function(){if(!jQuery(this).hasClass("um-disabled")){var e=jQuery(this).find(".um-member-directory-view-type-a:visible");e.hide(),e.next().length?e.next().show().tipsy("show"):jQuery(this).find(".um-member-directory-view-type-a:first").show().tipsy("show")}}).on("mouseout",".um-directory .um-member-directory-view-type",function(){jQuery(this).hasClass("um-disabled")||(jQuery(this).find(".um-member-directory-view-type-a").hide().tipsy("hide"),jQuery(this).find('.um-member-directory-view-type-a[data-type="'+jQuery(this).parents(".um-directory").data("view_type")+'"]').show())}),jQuery(document.body).on("click",".um-directory .um-member-directory-view-type-a",function(){var e=jQuery(this).parents(".um-directory");if(um_is_directory_busy(e))return!1;var r=jQuery(this),t=r.parents(".um-member-directory-view-type");if(!t.hasClass("um-disabled")){um_members_show_preloader(e);var a=t.find(".um-member-directory-view-type-a:visible");a.hide(),a.next().length?a.next().show().tipsy("show"):t.find(".um-member-directory-view-type-a:first").show().tipsy("show");var i=um_member_directory_last_data[um_members_get_hash(e)];if(null!==i){var m=r.data("type");um_set_url_from_data(e,"view_type",m),e.data("view_type",m),um_build_template(e,i),um_init_new_dropdown()}um_members_hide_preloader(e)}}),jQuery(document.body).on("click",".um-directory .um-do-search",function(){um_run_search(jQuery(this).parents(".um-directory"))}),jQuery(document.body).on("keypress",".um-directory .um-search-line",function(e){13===e.which&&um_run_search(jQuery(this).parents(".um-directory"))}),jQuery(document.body).on("click",".um-directory .um-member-directory-sorting-a .um-new-dropdown li a",function(){var e=jQuery(this).parents(".um-directory");if(!um_is_directory_busy(e)&&1!==jQuery(this).data("selected")){um_members_show_preloader(e);var r=jQuery(this).data("value");e.data("sorting",r),um_set_url_from_data(e,"sort",r),um_ajax_get_members(e),jQuery(this).parents(".um-new-dropdown").find("a").data("selected",0).prop("data-selected",0).attr("data-selected",0),jQuery(this).data("selected",1).prop("data-selected",1).attr("data-selected",1),jQuery(this).parents(".um-member-directory-sorting-a").find("> a").html(jQuery(this).html())}}),jQuery(document.body).on("click",".um-directory .pagi:not(.current)",function(){if(!jQuery(this).hasClass("disabled")){var e,r=jQuery(this).parents(".um-directory");if(!um_is_directory_busy(r))um_members_show_preloader(r),1===(e="first"===jQuery(this).data("page")?1:"prev"===jQuery(this).data("page")?1*r.data("page")-1:"next"===jQuery(this).data("page")?1*r.data("page")+1:"last"===jQuery(this).data("page")?parseInt(r.data("total_pages")):parseInt(jQuery(this).data("page")))?(r.find('.pagi[data-page="first"], .pagi[data-page="prev"]').addClass("disabled"),r.find('.pagi[data-page="prev"], .pagi[data-page="last"]').removeClass("disabled")):(e===parseInt(r.data("total_pages"))?r.find('.pagi[data-page="prev"], .pagi[data-page="last"]').addClass("disabled"):r.find('.pagi[data-page="prev"], .pagi[data-page="last"]').removeClass("disabled"),r.find('.pagi[data-page="first"], .pagi[data-page="prev"]').removeClass("disabled")),r.find(".pagi").removeClass("current"),r.find('.pagi[data-page="'+e+'"]').addClass("current"),r.data("page",e),um_set_url_from_data(r,"page",1===e?"":e),um_ajax_get_members(r)}}),jQuery(document.body).on("change",".um-directory .um-members-pagi-dropdown",function(){var e=jQuery(this).parents(".um-directory");if(!um_is_directory_busy(e)){um_members_show_preloader(e);var r=jQuery(this).val();e.find(".pagi").removeClass("current"),e.find('.pagi[data-page="'+r+'"]').addClass("current"),e.data("page",r),um_set_url_from_data(e,"page",1===r?"":r),um_ajax_get_members(e)}}),jQuery(document.body).on("click",".um-directory .um-members.um-members-list .um-member-more a",function(e){e.preventDefault();var r=jQuery(this).parents(".um-member");return r.find(".um-member-more").hide(),r.find(".um-member-meta-main").slideDown(),r.find(".um-member-less").fadeIn(),!1}),jQuery(document.body).on("click",".um-directory .um-members.um-members-list .um-member-less a",function(e){e.preventDefault();var r=jQuery(this).parents(".um-member");return r.find(".um-member-less").hide(),r.find(".um-member-meta-main").slideUp(),r.find(".um-member-more").fadeIn(),!1}),jQuery(document.body).on("click",".um-directory .um-members.um-members-grid .um-member-more a",function(e){e.preventDefault();var r=jQuery(this).parents(".um-member"),t=jQuery(this).parents(".um-members");return r.find(".um-member-more").hide(),r.find(".um-member-meta").slideDown(function(){UM_Member_Grid(t)}),r.find(".um-member-less").fadeIn(),setTimeout(function(){UM_Member_Grid(t)},100),!1}),jQuery(document.body).on("click",".um-directory .um-members.um-members-grid .um-member-less a",function(e){e.preventDefault();var r=jQuery(this).parents(".um-member"),t=jQuery(this).parents(".um-members");return r.find(".um-member-less").hide(),r.find(".um-member-meta").slideUp(function(){r.find(".um-member-more").fadeIn(),UM_Member_Grid(t)}),!1}),jQuery(".um-member-directory-filters-a").click(function(){var e=jQuery(this),r=e.parents(".um-directory").find(".um-search");r.is(":visible")?r.slideUp(250,function(){e.toggleClass("um-member-directory-filters-visible"),r.parents(".um-member-directory-header-row").toggleClass("um-header-row-invisible")}):r.slideDown({duration:250,start:function(){jQuery(this).css({display:"grid"}),e.toggleClass("um-member-directory-filters-visible"),r.parents(".um-member-directory-header-row").toggleClass("um-header-row-invisible")}})}),jQuery(document.body).on("change",".um-directory .um-search-filter select",function(){if(""!==jQuery(this).val()){var e=jQuery(this).parents(".um-directory");if(!um_is_directory_busy(e)){um_members_show_preloader(e);var r=jQuery(this).prop("name"),t=um_get_data_for_directory(e,"filter_"+r);t=void 0===t?[]:t.split("||"),-1===jQuery.inArray(jQuery(this).val(),t)&&(t.push(jQuery(this).val()),um_set_url_from_data(e,"filter_"+r,t=t.join("||")),e.data("page",1),um_set_url_from_data(e,"page","")),jQuery(this).find('option[value="'+jQuery(this).val()+'"]').prop("disabled",!0).hide(),1===jQuery(this).find("option:not(:disabled)").length&&jQuery(this).prop("disabled",!0),jQuery(this).select2("destroy").select2(),jQuery(this).val("").trigger("change"),um_ajax_get_members(e),um_change_tag(e),e.data("searched",1),e.find(".um-member-directory-sorting-options").prop("disabled",!1),e.find(".um-member-directory-view-type").removeClass("um-disabled")}}}),jQuery(document.body).on("blur",'.um-directory .um-search-filter.um-text-filter-type input[type="text"]',function(){var e=jQuery(this).parents(".um-directory");if(!um_is_directory_busy(e)){var r=jQuery(this).val(),t=jQuery(this).prop("name"),a=um_get_data_for_directory(e,"filter_"+t);void 0===a&&(a=""),r!==a&&(um_members_show_preloader(e),um_set_url_from_data(e,"filter_"+t,r),e.data("page",1),um_set_url_from_data(e,"page",""),um_ajax_get_members(e),um_change_tag(e),e.data("searched",1),e.find(".um-member-directory-sorting-options").prop("disabled",!1),e.find(".um-member-directory-view-type").removeClass("um-disabled"))}}),jQuery(document.body).on("keypress",'.um-directory .um-search-filter.um-text-filter-type input[type="text"]',function(e){if(13===e.which){var r=jQuery(this).parents(".um-directory");if(um_is_directory_busy(r))return;var t=jQuery(this).val(),a=jQuery(this).prop("name"),i=um_get_data_for_directory(r,"filter_"+a);if(void 0===i&&(i=""),t===i)return;um_members_show_preloader(r),um_set_url_from_data(r,"filter_"+a,t),r.data("page",1),um_set_url_from_data(r,"page",""),um_ajax_get_members(r),um_change_tag(r),r.data("searched",1),r.find(".um-member-directory-sorting-options").prop("disabled",!1),r.find(".um-member-directory-view-type").removeClass("um-disabled")}}),jQuery(document.body).on("click",".um-directory .um-members-filter-remove",function(){var e=jQuery(this).parents(".um-directory");if(!um_is_directory_busy(e)&&e){um_members_show_preloader(e);var r=jQuery(this).data("value"),t=jQuery(this).data("name"),a=jQuery(this).data("type");if("text"===a)um_set_url_from_data(e,"filter_"+t,""),jQuery('.um-search-filter input[name="'+t+'"]').val("");else if("select"===a){var i=um_get_data_for_directory(e,"filter_"+t);i=void 0===i?[]:i.split("||"),-1!==jQuery.inArray(r.toString(),i)&&(i=jQuery.grep(i,function(e){return e!==r.toString()})),i.length||(i=""),um_set_url_from_data(e,"filter_"+t,i);var m=jQuery('.um-search-filter select[name="'+t+'"]');m.find('option[value="'+r+'"]').prop("disabled",!1).show(),1<m.find("option:not(:disabled)").length&&m.prop("disabled",!1),m.select2("destroy").select2(),0<e.find('.um-search-filter select[data-um-parent="'+t+'"]').length&&m.trigger("change")}else if("slider"===a){um_set_url_from_data(e,"filter_"+t+"_from",""),um_set_url_from_data(e,"filter_"+t+"_to","");var d=jQuery(".um-search-filter #"+t+"_min").siblings(".um-slider"),s=d.slider("option");d.slider("values",[s.min,s.max]),jQuery(".um-search-filter #"+t+"_min").val(""),jQuery(".um-search-filter #"+t+"_max").val(""),um_set_range_label(d)}else"datepicker"===a?(um_set_url_from_data(e,"filter_"+t+"_from",""),um_set_url_from_data(e,"filter_"+t+"_to",""),jQuery(".um-search-filter #"+t+"_from").val(""),jQuery(".um-search-filter #"+t+"_to").val("")):"timepicker"===a?(um_set_url_from_data(e,"filter_"+t+"_from",""),um_set_url_from_data(e,"filter_"+t+"_to",""),jQuery(".um-search-filter #"+t+"_from").val(""),jQuery(".um-search-filter #"+t+"_to").val("")):wp.hooks.doAction("um_member_directory_filter_remove",a,e,t,r);e.data("page",1),um_set_url_from_data(e,"page",""),jQuery(this).tipsy("hide"),jQuery(this).parents(".um-members-filter-tag").remove(),0===e.find(".um-members-filter-remove").length?e.find(".um-clear-filters").hide():e.find(".um-clear-filters").show();var u=!1;if(!(u=wp.hooks.applyFilters("um_member_directory_ignore_after_search",u,e)))if(1===e.data("must-search")){var _=um_get_search(e);if(0===e.find(".um-members-filter-remove").length&&!_)return e.data("searched",0),e.find(".um-members-grid, .um-members-list, .um-members-intro").remove(),e.find(".um-member-directory-sorting-options").prop("disabled",!0),e.find(".um-member-directory-view-type").addClass("um-disabled"),wp.hooks.doAction("um_member_directory_clear_not_searched",e),void um_members_hide_preloader(e)}e.find(".um-member-directory-sorting-options").prop("disabled",!1),e.find(".um-member-directory-view-type").removeClass("um-disabled"),um_ajax_get_members(e)}}),jQuery(document.body).on("click",".um-directory .um-clear-filters-a",function(){var s=jQuery(this).parents(".um-directory");if(!um_is_directory_busy(s)){um_members_show_preloader(s),s.find(".um-members-filter-remove").each(function(){var r=jQuery(this).data("value"),e=jQuery(this).data("name"),t=jQuery(this).data("type");if("text"===t)um_set_url_from_data(s,"filter_"+e,""),jQuery('.um-search-filter input[name="'+e+'"]').val("");else if("select"===t){var a=um_get_data_for_directory(s,"filter_"+e);a=void 0===a?[]:a.split("||"),-1!==jQuery.inArray(r.toString(),a)&&(a=jQuery.grep(a,function(e){return e!==r.toString()})),a.length||(a=""),um_set_url_from_data(s,"filter_"+e,a);var i=jQuery('.um-search-filter select[name="'+e+'"]');i.find('option[value="'+r+'"]').prop("disabled",!1).show(),1<i.find("option:not(:disabled)").length&&i.prop("disabled",!1),i.select2("destroy").select2(),0<s.find('.um-search-filter select[data-um-parent="'+e+'"]').length&&i.trigger("change")}else if("slider"===t){um_set_url_from_data(s,"filter_"+e+"_from",""),um_set_url_from_data(s,"filter_"+e+"_to","");var m=jQuery(".um-search-filter #"+e+"_min").siblings(".um-slider"),d=m.slider("option");m.slider("values",[d.min,d.max]),jQuery(".um-search-filter #"+e+"_min").val(""),jQuery(".um-search-filter #"+e+"_max").val(""),um_set_range_label(m)}else"datepicker"===t?(um_set_url_from_data(s,"filter_"+e+"_from",""),um_set_url_from_data(s,"filter_"+e+"_to",""),jQuery(".um-search-filter #"+e+"_from").val(""),jQuery(".um-search-filter #"+e+"_to").val("")):"timepicker"===t?(um_set_url_from_data(s,"filter_"+e+"_from",""),um_set_url_from_data(s,"filter_"+e+"_to",""),jQuery(".um-search-filter #"+e+"_from").val(""),jQuery(".um-search-filter #"+e+"_to").val("")):wp.hooks.doAction("um_member_directory_clear_filters",t,s,e,r)}),s.data("page",1),um_set_url_from_data(s,"page",""),s.find(".um-members-filter-tag").remove(),0===s.find(".um-members-filter-remove").length?(s.find(".um-clear-filters").hide(),s.find(".um-clear-filters").parents(".um-member-directory-header-row").addClass("um-header-row-invisible")):(s.find(".um-clear-filters").show(),s.find(".um-clear-filters").parents(".um-member-directory-header-row").removeClass("um-header-row-invisible"));var e=!1;if(!(e=wp.hooks.applyFilters("um_member_directory_ignore_after_search",e,s)))if(1===s.data("must-search"))if(!um_get_search(s))return s.data("searched",0),s.find(".um-members-grid, .um-members-list, .um-members-intro").remove(),s.find(".um-member-directory-sorting-options").prop("disabled",!0),s.find(".um-member-directory-view-type").addClass("um-disabled"),wp.hooks.doAction("um_member_directory_clear_not_searched",s),void um_members_hide_preloader(s);s.find(".um-member-directory-sorting-options").prop("disabled",!1),s.find(".um-member-directory-view-type").removeClass("um-disabled"),um_ajax_get_members(s)}}),wp.hooks.doAction("um_member_directory_on_first_pages_loading"),jQuery(".um-directory").each(function(){var e=jQuery(this),r=um_members_get_hash(e);um_member_directories.push(r),e.find(".um-search").length&&(e.find(".um-search").is(":visible")||e.find(".um-search").css({display:"grid"}).slideUp(1)),e.find(".um-slider").each(function(){var e=jQuery(this),t=e.parents(".um-directory"),a=e.data("field_name"),r=um_get_data_for_directory(t,"filter_"+a+"_from"),i=um_get_data_for_directory(t,"filter_"+a+"_to");void 0===r&&(r=parseInt(e.data("min"))),void 0===i&&(i=parseInt(e.data("max")));var m=[r,i];e.slider({range:!0,min:parseInt(e.data("min")),max:parseInt(e.data("max")),values:m,create:function(e,r){},step:1,slide:function(e,r){um_set_range_label(jQuery(this),r)},stop:function(e,r){um_is_directory_busy(t)||(um_members_show_preloader(t),um_set_url_from_data(t,"filter_"+a+"_from",r.values[0]),um_set_url_from_data(t,"filter_"+a+"_to",r.values[1]),t.data("page",1),um_set_url_from_data(t,"page",""),um_ajax_get_members(t),um_change_tag(t),t.data("searched",1),t.find(".um-member-directory-sorting-options").prop("disabled",!1),t.find(".um-member-directory-view-type").removeClass("um-disabled"))}}),um_set_range_label(e)}),e.find(".um-datepicker-filter").each(function(){var s=jQuery(this),u=new Date(1e3*s.data("date_min")),_=new Date(1e3*s.data("date_max")),e=s.pickadate({selectYears:!0,min:u,max:_,formatSubmit:"yyyy/mm/dd",hiddenName:!0,onOpen:function(){s.blur()},onClose:function(){s.blur()},onSet:function(e){if(e.select){var r=s.parents(".um-directory");if(!um_is_directory_busy(r)){um_members_show_preloader(r);var t=s.data("filter_name"),a=s.data("range"),i=um_get_data_for_directory(r,"filter_"+t+"_from"),m=um_get_data_for_directory(r,"filter_"+t+"_to");void 0===i&&(i=u/1e3),void 0===m&&(m=_/1e3);var d=e.select/1e3;s.val();"from"===a?i=d:"to"===a&&(m=d),um_set_url_from_data(r,"filter_"+t+"_from",i),um_set_url_from_data(r,"filter_"+t+"_to",m),r.data("page",1),um_set_url_from_data(r,"page",""),um_ajax_get_members(r),um_change_tag(r),r.data("searched",1),r.find(".um-member-directory-sorting-options").prop("disabled",!1),r.find(".um-member-directory-view-type").removeClass("um-disabled")}}}}).pickadate("picker"),r=s.data("filter_name"),t=s.data("range"),a=um_get_data_for_directory(s.parents(".um-directory"),"filter_"+r+"_"+t);void 0!==a&&e.set("select",1e3*a)}),e.find(".um-timepicker-filter").each(function(){var u=jQuery(this),_=u.attr("id"),o=u.data("filter_name"),n=u.attr("data-min"),l=u.attr("data-max"),e=n.split(":"),r=l.split(":"),t=u.pickatime({format:u.data("format"),interval:parseInt(u.data("intervals")),min:[e[0],e[1]],max:[r[0],r[1]],formatSubmit:"HH:i",hiddenName:!0,onOpen:function(){u.blur()},onClose:function(){u.blur()},onSet:function(e){if(e.select){var r=u.parents(".um-directory");if(!um_is_directory_busy(r)){um_members_show_preloader(r);var t=u.data("filter_name"),a=u.data("range"),i=um_get_data_for_directory(r,"filter_"+t+"_from"),m=um_get_data_for_directory(r,"filter_"+t+"_to");if(void 0===i&&(i=n),void 0===m&&(m=l),void 0!==e.select){var d=um_time_convert(e.select,a);"from"===a?i=d:"to"===a&&(m=d)}else"from"===a?i=n:"to"===a&&(m=l);var s=jQuery("#"+_).val();"from"===u.data("range")?jQuery("#"+o+"_to").pickatime("picker").set("min",s):jQuery("#"+o+"_from").pickatime("picker").set("max",s),um_set_url_from_data(r,"filter_"+t+"_from",i),um_set_url_from_data(r,"filter_"+t+"_to",m),r.data("page",1),um_set_url_from_data(r,"page",""),um_ajax_get_members(r),um_change_tag(r),r.data("searched",1),r.find(".um-member-directory-sorting-options").prop("disabled",!1),r.find(".um-member-directory-view-type").removeClass("um-disabled")}}}}).pickatime("picker"),a=u.data("filter_name"),i=u.data("range"),m=um_get_data_for_directory(u.parents(".um-directory"),"filter_"+a+"_"+i);if(void 0!==m){var d=m.split(":");t.set("select",60*d[0]+1*d[1])}}),wp.hooks.doAction("um_member_directory_on_init",e,r);var t=!1;if(!(t=wp.hooks.applyFilters("um_member_directory_ignore_after_search",t,e))&&1===e.data("must-search")){var a=um_get_search(e);if(!um_get_filters_data(e).length&&!a)return}wp.hooks.applyFilters("um_member_directory_prevent_default_first_loading",!1,e,r)||(um_members_show_preloader(e),um_ajax_get_members(e,{first_load:!0}),um_change_tag(e))}),window.addEventListener("popstate",function(e){jQuery(".um-directory").each(function(){var d=jQuery(this),e=um_members_get_hash(d);(um_member_directories.push(e),um_members_show_preloader(d),d.find(".um-members-grid, .um-members-list, .um-members-intro").remove(),d.find(".um-member-directory-search-line").length)&&(void 0===(s=um_get_data_for_directory(d,"search"))&&(s=""),d.data("general_search",s),d.find(".um-search-line").val(s));var r=um_get_data_for_directory(d,"page");if(void 0===r?r=1:r>d.data("total_pages")&&(r=d.data("total_pages")),d.data("page",r).attr("data-page",r),d.find(".um-member-directory-sorting").length){var t=um_get_data_for_directory(d,"sort");void 0===t&&(t=d.find('.um-new-dropdown[data-element=".um-member-directory-sorting-a"]').find('a[data-default="1"]').data("value")),d.data("sorting",t);var a=d.find('.um-new-dropdown[data-element=".um-member-directory-sorting-a"]');a.find("a").data("selected",0).prop("data-selected",0).attr("data-selected",0),a.find('a[data-value="'+t+'"]').data("selected",1).prop("data-selected",1).attr("data-selected",1),d.find(".um-member-directory-sorting-a").find("> a").html(a.find('a[data-value="'+t+'"]').html())}if(d.find(".um-member-directory-view-type").length){var i=um_get_data_for_directory(d,"view_type");void 0===i&&(i=d.find('.um-member-directory-view-type-a[data-default="1"]').data("type")),d.data("view_type",i),d.find(".um-member-directory-view-type .um-member-directory-view-type-a").hide(),d.find('.um-member-directory-view-type .um-member-directory-view-type-a[data-type="'+i+'"]').show()}d.find(".um-datepicker-filter").each(function(){var e=jQuery(this),r=e.pickadate("picker"),t=e.data("filter_name"),a=e.data("range"),i=um_get_data_for_directory(d,"filter_"+t+"_"+a);void 0!==i?r.set("select",1e3*i):r.clear()}),d.find(".um-slider").each(function(){var e=jQuery(this),r=e.data("field_name"),t=um_get_data_for_directory(d,"filter_"+r+"_from"),a=um_get_data_for_directory(d,"filter_"+r+"_to");void 0===t&&(t=e.data("min")),t=parseInt(t),void 0===a&&(a=e.data("max")),a=parseInt(a),e.slider("values",[t,a]),um_set_range_label(e)}),d.find(".um-timepicker-filter").each(function(){var e=jQuery(this),r=e.pickatime("picker"),t=e.data("filter_name"),a=e.data("range"),i=um_get_data_for_directory(d,"filter_"+t+"_"+a);if(void 0!==i){var m=i.split(":");r.set("select",60*m[0])}else r.clear()});var m=!1;if(!(m=wp.hooks.applyFilters("um_member_directory_ignore_after_search",m,d))&&1===d.data("must-search")){var s=um_get_search(d);if(!um_get_filters_data(d).length&&!s)return d.data("searched",0),void um_members_hide_preloader(d);d.data("searched",1)}wp.hooks.applyFilters("um_member_directory_prevent_default_first_loading",!1,d,e)||(um_ajax_get_members(d),um_change_tag(d))})})});
|
1 |
+
var um_members_directory_busy=[],um_member_directories=[],um_member_directory_last_data=[];function um_parse_current_url(){var t={},a=window.location.search.substring(1).split("&");return jQuery.each(a,function(e){var r=a[e].split("=");t[r[0]]=r[1]}),t}function um_get_data_for_directory(e,r){var t=um_members_get_hash(e),a={},i=um_parse_current_url();if(jQuery.each(i,function(e){-1!==e.indexOf("_"+t)&&""!==i[e]&&(a[e.replace("_"+t,"")]=i[e])}),r){if(void 0!==a[r])try{a[r]=decodeURIComponent(a[r])}catch(e){console.error(e)}return a[r]}return a}function um_set_url_from_data(e,r,t){var a=um_members_get_hash(e),i=um_get_data_for_directory(e),m={};jQuery.isArray(t)?(jQuery.each(t,function(e){t[e]=encodeURIComponent(t[e])}),t=t.join("||")):jQuery.isNumeric(t)||(t=t.split("||"),jQuery.each(t,function(e){t[e]=encodeURIComponent(t[e])}),t=t.join("||")),""!==t&&(m[r+"_"+a]=t),jQuery.each(i,function(e){r===e?""!==t&&(m[e+"_"+a]=t):m[e+"_"+a]=i[e]}),jQuery.each(um_member_directories,function(e){var r=um_member_directories[e];if(r!==a){var t=um_get_data_for_directory(jQuery('.um-directory[data-hash="'+r+'"]'));jQuery.each(t,function(e){m[e+"_"+r]=t[e]})}});var d=[];jQuery.each(m,function(e){d.push(e+"="+m[e])});var s="?"+(d=wp.hooks.applyFilters("um_member_directory_url_attrs",d)).join("&");"?"===s&&(s=""),window.history.pushState("string","UM Member Directory",window.location.origin+window.location.pathname+s)}function um_members_get_hash(e){return e.data("hash")}function um_is_directory_busy(e){var r=um_members_get_hash(e);return void 0!==um_members_directory_busy[r]&&um_members_directory_busy[r]}function um_members_show_preloader(e){um_members_directory_busy[um_members_get_hash(e)]=!0,e.find(".um-members-overlay").show()}function um_members_hide_preloader(e){um_members_directory_busy[um_members_get_hash(e)]=!1,e.find(".um-members-overlay").hide()}function um_set_range_label(e,r){var t="",a=e.siblings(".um-slider-range").data("placeholder-s"),i=e.siblings(".um-slider-range").data("placeholder-p");t=r?r.values[0]===r.values[1]?a.replace("{value}",r.values[0]).replace("{field_label}",e.siblings(".um-slider-range").data("label")):i.replace("{min_range}",r.values[0]).replace("{max_range}",r.values[1]).replace("{field_label}",e.siblings(".um-slider-range").data("label")):e.slider("values",0)===e.slider("values",1)?a.replace("{value}",e.slider("values",0)).replace("{field_label}",e.siblings(".um-slider-range").data("label")):i.replace("{min_range}",e.slider("values",0)).replace("{max_range}",e.slider("values",1)).replace("{field_label}",e.siblings(".um-slider-range").data("label")),e.siblings(".um-slider-range").html(t),e.siblings(".um_range_min").val(e.slider("values",0)),e.siblings(".um_range_max").val(e.slider("values",1))}function um_get_search(e){return e.find(".um-search-line").length?e.find(".um-search-line").val():""}function um_get_sort(e){return e.data("sorting")}function um_get_current_page(e){var r=e.data("page");return r&&void 0!==r||(r=1),r}function um_time_convert(e,r){var t=Math.floor(e/60),a=e%60;return 60<=a&&(a=0,24<=(t+=1)&&(t=0)),a<10&&(a="0"+a),t+":"+a}function um_ajax_get_members(u,e){var t=um_members_get_hash(u);if(wp.hooks.applyFilters("um_member_directory_get_members_allow",!0,t,u)){var r=um_get_current_page(u),a=um_get_search(u),i=um_get_sort(u),m=-(new Date).getTimezoneOffset()/60,_={directory_id:t,page:r,search:a,sorting:i,gmt_offset:m,post_refferer:u.data("base-post"),nonce:um_scripts.nonce};u.find(".um-search-filter").length&&u.find(".um-search-filter").each(function(){var e=jQuery(this);if(e.find(".um-slider").length){var r=e.find(".um-slider").data("field_name"),t=um_get_data_for_directory(u,"filter_"+r+"_from"),a=um_get_data_for_directory(u,"filter_"+r+"_to");void 0===t&&void 0===a||(_[r]=[t,a])}else if(e.find(".um-datepicker-filter").length){r=e.find(".um-datepicker-filter").data("filter_name"),t=um_get_data_for_directory(u,"filter_"+r+"_from"),a=um_get_data_for_directory(u,"filter_"+r+"_to");void 0===t&&void 0===a||(_[r]=[t,a])}else if(e.find(".um-timepicker-filter").length){r=e.find(".um-timepicker-filter").data("filter_name"),t=um_get_data_for_directory(u,"filter_"+r+"_from"),a=um_get_data_for_directory(u,"filter_"+r+"_to");if(void 0!==t)(i=1*(t=t.split(":"))[0])<10&&(i="0"+i),(d=1*t[1])<10&&(d="0"+d),t=i+":"+d+":00";if(void 0!==a){var i,m=a.split(":"),d=1*m[1];(i=1*m[0])<10&&(i="0"+i),d<10&&(d="0"+d),a=i+":"+d+":59"}void 0===t&&void 0===a||(_[r]=[t,a])}else if(e.find("select").length){r=e.find("select").attr("name");void 0!==(s=um_get_data_for_directory(u,"filter_"+r))&&(_[r]=s.split("||"))}else if(e.hasClass("um-text-filter-type")&&e.find('input[type="text"]').length){var s;r=e.find('input[type="text"]').attr("name");void 0!==(s=um_get_data_for_directory(u,"filter_"+r))&&(_[r]=s)}else _=wp.hooks.applyFilters("um_member_directory_custom_filter_handler",_,e,u)}),_=wp.hooks.applyFilters("um_member_directory_filter_request",_),wp.ajax.send("um_get_members",{data:_,success:function(e){um_member_directory_last_data[t]=e,um_build_template(u,e);var r=wp.template("um-members-pagination");u.find(".um-members-pagination-box").html(r(e)),u.data("total_pages",e.pagination.total_pages),e.pagination.total_pages?(u.find(".um-member-directory-sorting-options").prop("disabled",!1),u.find(".um-member-directory-view-type").removeClass("um-disabled")):(u.find(".um-member-directory-sorting-options").prop("disabled",!0),u.find(".um-member-directory-view-type").addClass("um-disabled")),wp.hooks.doAction("um_member_directory_loaded",u,e),um_init_new_dropdown(),um_members_hide_preloader(u)},error:function(e){console.log(e),um_members_hide_preloader(u)}})}else setTimeout(um_ajax_get_members,600,u,e)}function um_build_template(e,r){var t=e.data("view_type"),a=wp.template("um-member-"+t+"-"+um_members_get_hash(e));e.find(".um-members-grid, .um-members-list").remove(),e.find(".um-members-wrapper").prepend(a(r.users));var i=wp.template("um-members-header");e.find(".um-members-intro").remove();var m=wp.hooks.applyFilters("um_member_directory_generate_header",!1,e);(void 0!==r.is_search&&r.is_search||m)&&e.find(".um-members-wrapper").prepend(i(r)),e.addClass("um-loaded"),e.find(".um-members.um-members-grid").length&&UM_Member_Grid(e.find(".um-members.um-members-grid")),jQuery(document).trigger("um_build_template",[e,r]),jQuery(window).trigger("resize"),init_tipsy()}function UM_Member_Grid(e){e.find(".um-member").length&&e.imagesLoaded(function(){e.masonry({itemSelector:".um-member",columnWidth:".um-member",gutter:".um-gutter-sizer"}).on("layoutComplete",function(e,r){jQuery(document).trigger("um_grid_initialized",[e,r])})})}function um_get_filters_data(u){var _=[];return u.find(".um-search-filter").each(function(){var t,a,d,i=jQuery(this);if(i.find("input.um-datepicker-filter").length)d="datepicker",i.find("input.um-datepicker-filter").each(function(){if("to"!==jQuery(this).data("range")){var e=jQuery(this).data("filter_name"),r=um_get_data_for_directory(u,"filter_"+e+"_from"),t=um_get_data_for_directory(u,"filter_"+e+"_to");if(void 0!==r||void 0!==t){var a,i=jQuery(this).val(),m=u.find('input.um-datepicker-filter[data-range="to"][data-filter_name="'+e+'"]').val();i===m?a=m:""!==i&&""!==m?a=i+" - "+m:""===i?a="before "+m:""===m&&(a="since "+i),_.push({name:e,label:jQuery(this).data("filter-label"),value_label:a,value:[r,t],type:d})}}});else if(i.find("input.um-timepicker-filter").length)d="timepicker",i.find("input.um-timepicker-filter").each(function(){if("to"!==jQuery(this).data("range")){var e=jQuery(this).data("filter_name"),r=um_get_data_for_directory(u,"filter_"+e+"_from"),t=um_get_data_for_directory(u,"filter_"+e+"_to");if(void 0!==r||void 0!==t){var a,i=jQuery(this).val(),m=u.find('input.um-timepicker-filter[data-range="to"][data-filter_name="'+e+'"]').val();i===m?a=m:""!==i&&""!==m?a=i+" - "+m:""===i?a="before "+m:""===m&&(a="since "+i),_.push({name:e,label:jQuery(this).data("filter-label"),value_label:a,value:[r,t],type:d})}}});else if(i.find("select").length){d="select",t=i.find("select").attr("name"),a=i.find("select").data("placeholder"),m=void 0===(m=um_get_data_for_directory(u,"filter_"+t))?[]:m.split("||"),jQuery.each(m,function(e){var r=i.find('select option[value="'+m[e]+'"]').data("value_label");_.push({name:t,label:a,value_label:r,value:m[e],type:d})})}else if(i.hasClass("um-text-filter-type")&&i.find('input[type="text"]').length){var m;d="text",t=i.find('input[type="text"]').attr("name"),a=i.find('input[type="text"]').attr("placeholder"),void 0===(m=um_get_data_for_directory(u,"filter_"+t))&&(m=""),""!=m&&_.push({name:t,label:a,value_label:m,value:m,type:d})}else if(i.find("div.ui-slider").length){d="slider",t=i.find("div.ui-slider").data("field_name");var e,r=um_get_data_for_directory(u,"filter_"+t+"_from"),s=um_get_data_for_directory(u,"filter_"+t+"_to");if(void 0===r&&void 0===s)return;e=r===s?i.find("div.um-slider-range").data("placeholder-s").replace("{value}",r).replace("{field_label}",i.find("div.um-slider-range").data("label")):i.find("div.um-slider-range").data("placeholder-p").replace("{min_range}",r).replace("{max_range}",s).replace("{field_label}",i.find("div.um-slider-range").data("label")),a=i.find("div.um-slider-range").data("label"),_.push({name:t,label:a,value_label:e,value:[r,s],type:d})}else _=wp.hooks.applyFilters("um_member_directory_get_filter_data",_,u,i)}),_}function um_change_tag(e){var r=um_get_filters_data(e);e.find(".um-members-filter-tag").remove();var t=e.find(".um-filtered-line");if(t.length){var a=wp.template("um-members-filtered-line");t.prepend(a({filters:r})),0===e.find(".um-members-filter-remove").length?(e.find(".um-clear-filters").hide(),e.find(".um-clear-filters").parents(".um-member-directory-header-row").addClass("um-header-row-invisible")):(e.find(".um-clear-filters").show(),e.find(".um-clear-filters").parents(".um-member-directory-header-row").removeClass("um-header-row-invisible"))}}function um_run_search(e){if(!um_is_directory_busy(e)){um_members_show_preloader(e);var r=um_get_data_for_directory(e,"search"),t=e.find(".um-search-line").val();if(t===r||""===t&&void 0===r)um_members_hide_preloader(e);else{e.data("general_search",t),um_set_url_from_data(e,"search",t),e.data("page",1),um_set_url_from_data(e,"page","");var a=!1;if(!(a=wp.hooks.applyFilters("um_member_directory_ignore_after_search",a,e)))if(1===e.data("must-search")&&(t=um_get_search(e),0===e.find(".um-members-filter-remove").length&&!t))return e.data("searched",0),e.find(".um-members-grid, .um-members-list, .um-members-intro").remove(),e.find(".um-member-directory-sorting-options").prop("disabled",!0),e.find(".um-member-directory-view-type").addClass("um-disabled"),wp.hooks.doAction("um_member_directory_clear_not_searched",e),void um_members_hide_preloader(e);e.data("searched",1),e.find(".um-member-directory-sorting-options").prop("disabled",!1),e.find(".um-member-directory-view-type").removeClass("um-disabled"),um_ajax_get_members(e)}}}jQuery(document.body).ready(function(){jQuery(".um-directory .um-search-filter select").each(function(){1===jQuery(this).find("option:not(:disabled)").length&&jQuery(this).prop("disabled",!0),jQuery(this).select2("destroy").select2()}),jQuery(document.body).on("mouseover",".um-directory .um-member-directory-view-type",function(){if(!jQuery(this).hasClass("um-disabled")){var e=jQuery(this).find(".um-member-directory-view-type-a:visible");e.hide(),e.next().length?e.next().show().tipsy("show"):jQuery(this).find(".um-member-directory-view-type-a:first").show().tipsy("show")}}).on("mouseout",".um-directory .um-member-directory-view-type",function(){jQuery(this).hasClass("um-disabled")||(jQuery(this).find(".um-member-directory-view-type-a").hide().tipsy("hide"),jQuery(this).find('.um-member-directory-view-type-a[data-type="'+jQuery(this).parents(".um-directory").data("view_type")+'"]').show())}),jQuery(document.body).on("click",".um-directory .um-member-directory-view-type-a",function(){var e=jQuery(this).parents(".um-directory");if(um_is_directory_busy(e))return!1;var r=jQuery(this),t=r.parents(".um-member-directory-view-type");if(!t.hasClass("um-disabled")){um_members_show_preloader(e);var a=t.find(".um-member-directory-view-type-a:visible");a.hide(),a.next().length?a.next().show().tipsy("show"):t.find(".um-member-directory-view-type-a:first").show().tipsy("show");var i=um_member_directory_last_data[um_members_get_hash(e)];if(null!==i){var m=r.data("type");um_set_url_from_data(e,"view_type",m),e.data("view_type",m),um_build_template(e,i),um_init_new_dropdown()}um_members_hide_preloader(e)}}),jQuery(document.body).on("click",".um-directory .um-do-search",function(){um_run_search(jQuery(this).parents(".um-directory"))}),jQuery(document.body).on("keypress",".um-directory .um-search-line",function(e){13===e.which&&um_run_search(jQuery(this).parents(".um-directory"))}),jQuery(document.body).on("click",".um-directory .um-member-directory-sorting-a .um-new-dropdown li a",function(){var e=jQuery(this).parents(".um-directory");if(!um_is_directory_busy(e)&&1!==jQuery(this).data("selected")){um_members_show_preloader(e);var r=jQuery(this).data("value");e.data("sorting",r),um_set_url_from_data(e,"sort",r),um_ajax_get_members(e),jQuery(this).parents(".um-new-dropdown").find("a").data("selected",0).prop("data-selected",0).attr("data-selected",0),jQuery(this).data("selected",1).prop("data-selected",1).attr("data-selected",1),jQuery(this).parents(".um-member-directory-sorting-a").find("> a").html(jQuery(this).html())}}),jQuery(document.body).on("click",".um-directory .pagi:not(.current)",function(){if(!jQuery(this).hasClass("disabled")){var e,r=jQuery(this).parents(".um-directory");if(!um_is_directory_busy(r))um_members_show_preloader(r),1===(e="first"===jQuery(this).data("page")?1:"prev"===jQuery(this).data("page")?1*r.data("page")-1:"next"===jQuery(this).data("page")?1*r.data("page")+1:"last"===jQuery(this).data("page")?parseInt(r.data("total_pages")):parseInt(jQuery(this).data("page")))?(r.find('.pagi[data-page="first"], .pagi[data-page="prev"]').addClass("disabled"),r.find('.pagi[data-page="prev"], .pagi[data-page="last"]').removeClass("disabled")):(e===parseInt(r.data("total_pages"))?r.find('.pagi[data-page="prev"], .pagi[data-page="last"]').addClass("disabled"):r.find('.pagi[data-page="prev"], .pagi[data-page="last"]').removeClass("disabled"),r.find('.pagi[data-page="first"], .pagi[data-page="prev"]').removeClass("disabled")),r.find(".pagi").removeClass("current"),r.find('.pagi[data-page="'+e+'"]').addClass("current"),r.data("page",e),um_set_url_from_data(r,"page",1===e?"":e),um_ajax_get_members(r)}}),jQuery(document.body).on("change",".um-directory .um-members-pagi-dropdown",function(){var e=jQuery(this).parents(".um-directory");if(!um_is_directory_busy(e)){um_members_show_preloader(e);var r=jQuery(this).val();e.find(".pagi").removeClass("current"),e.find('.pagi[data-page="'+r+'"]').addClass("current"),e.data("page",r),um_set_url_from_data(e,"page",1===r?"":r),um_ajax_get_members(e)}}),jQuery(document.body).on("click",".um-directory .um-members.um-members-list .um-member-more a",function(e){e.preventDefault();var r=jQuery(this).parents(".um-member");return r.find(".um-member-more").hide(),r.find(".um-member-meta-main").slideDown(),r.find(".um-member-less").fadeIn(),!1}),jQuery(document.body).on("click",".um-directory .um-members.um-members-list .um-member-less a",function(e){e.preventDefault();var r=jQuery(this).parents(".um-member");return r.find(".um-member-less").hide(),r.find(".um-member-meta-main").slideUp(),r.find(".um-member-more").fadeIn(),!1}),jQuery(document.body).on("click",".um-directory .um-members.um-members-grid .um-member-more a",function(e){e.preventDefault();var r=jQuery(this).parents(".um-member"),t=jQuery(this).parents(".um-members");return r.find(".um-member-more").hide(),r.find(".um-member-meta").slideDown(function(){UM_Member_Grid(t)}),r.find(".um-member-less").fadeIn(),setTimeout(function(){UM_Member_Grid(t)},100),!1}),jQuery(document.body).on("click",".um-directory .um-members.um-members-grid .um-member-less a",function(e){e.preventDefault();var r=jQuery(this).parents(".um-member"),t=jQuery(this).parents(".um-members");return r.find(".um-member-less").hide(),r.find(".um-member-meta").slideUp(function(){r.find(".um-member-more").fadeIn(),UM_Member_Grid(t)}),!1}),jQuery(".um-member-directory-filters-a").click(function(){var e=jQuery(this),r=e.parents(".um-directory").find(".um-search");r.is(":visible")?r.slideUp(250,function(){e.toggleClass("um-member-directory-filters-visible"),r.parents(".um-member-directory-header-row").toggleClass("um-header-row-invisible")}):r.slideDown({duration:250,start:function(){jQuery(this).css({display:"grid"}),e.toggleClass("um-member-directory-filters-visible"),r.parents(".um-member-directory-header-row").toggleClass("um-header-row-invisible")}})}),jQuery(document.body).on("change",".um-directory .um-search-filter select",function(){if(""!==jQuery(this).val()){var e=jQuery(this).parents(".um-directory");if(!um_is_directory_busy(e)){um_members_show_preloader(e);var r=jQuery(this).prop("name"),t=um_get_data_for_directory(e,"filter_"+r);t=void 0===t?[]:t.split("||"),-1===jQuery.inArray(jQuery(this).val(),t)&&(t.push(jQuery(this).val()),um_set_url_from_data(e,"filter_"+r,t=t.join("||")),e.data("page",1),um_set_url_from_data(e,"page","")),jQuery(this).find('option[value="'+jQuery(this).val()+'"]').prop("disabled",!0).hide(),1===jQuery(this).find("option:not(:disabled)").length&&jQuery(this).prop("disabled",!0),jQuery(this).select2("destroy").select2(),jQuery(this).val("").trigger("change"),um_ajax_get_members(e),um_change_tag(e),e.data("searched",1),e.find(".um-member-directory-sorting-options").prop("disabled",!1),e.find(".um-member-directory-view-type").removeClass("um-disabled")}}}),jQuery(document.body).on("blur",'.um-directory .um-search-filter.um-text-filter-type input[type="text"]',function(){var e=jQuery(this).parents(".um-directory");if(!um_is_directory_busy(e)){var r=jQuery(this).val(),t=jQuery(this).prop("name"),a=um_get_data_for_directory(e,"filter_"+t);void 0===a&&(a=""),r!==a&&(um_members_show_preloader(e),um_set_url_from_data(e,"filter_"+t,r),e.data("page",1),um_set_url_from_data(e,"page",""),um_ajax_get_members(e),um_change_tag(e),e.data("searched",1),e.find(".um-member-directory-sorting-options").prop("disabled",!1),e.find(".um-member-directory-view-type").removeClass("um-disabled"))}}),jQuery(document.body).on("keypress",'.um-directory .um-search-filter.um-text-filter-type input[type="text"]',function(e){if(13===e.which){var r=jQuery(this).parents(".um-directory");if(um_is_directory_busy(r))return;var t=jQuery(this).val(),a=jQuery(this).prop("name"),i=um_get_data_for_directory(r,"filter_"+a);if(void 0===i&&(i=""),t===i)return;um_members_show_preloader(r),um_set_url_from_data(r,"filter_"+a,t),r.data("page",1),um_set_url_from_data(r,"page",""),um_ajax_get_members(r),um_change_tag(r),r.data("searched",1),r.find(".um-member-directory-sorting-options").prop("disabled",!1),r.find(".um-member-directory-view-type").removeClass("um-disabled")}}),jQuery(document.body).on("click",".um-directory .um-members-filter-remove",function(){var e=jQuery(this).parents(".um-directory");if(!um_is_directory_busy(e)&&e){um_members_show_preloader(e);var r=jQuery(this).data("value"),t=jQuery(this).data("name"),a=jQuery(this).data("type");if("text"===a)um_set_url_from_data(e,"filter_"+t,""),jQuery('.um-search-filter input[name="'+t+'"]').val("");else if("select"===a){var i=um_get_data_for_directory(e,"filter_"+t);i=void 0===i?[]:i.split("||"),-1!==jQuery.inArray(r.toString(),i)&&(i=jQuery.grep(i,function(e){return e!==r.toString()})),i.length||(i=""),um_set_url_from_data(e,"filter_"+t,i);var m=jQuery('.um-search-filter select[name="'+t+'"]');m.find('option[value="'+r+'"]').prop("disabled",!1).show(),1<m.find("option:not(:disabled)").length&&m.prop("disabled",!1),m.select2("destroy").select2(),0<e.find('.um-search-filter select[data-um-parent="'+t+'"]').length&&m.trigger("change")}else if("slider"===a){um_set_url_from_data(e,"filter_"+t+"_from",""),um_set_url_from_data(e,"filter_"+t+"_to","");var d=jQuery(".um-search-filter #"+t+"_min").siblings(".um-slider"),s=d.slider("option");d.slider("values",[s.min,s.max]),jQuery(".um-search-filter #"+t+"_min").val(""),jQuery(".um-search-filter #"+t+"_max").val(""),um_set_range_label(d)}else"datepicker"===a?(um_set_url_from_data(e,"filter_"+t+"_from",""),um_set_url_from_data(e,"filter_"+t+"_to",""),jQuery(".um-search-filter #"+t+"_from").val(""),jQuery(".um-search-filter #"+t+"_to").val("")):"timepicker"===a?(um_set_url_from_data(e,"filter_"+t+"_from",""),um_set_url_from_data(e,"filter_"+t+"_to",""),jQuery(".um-search-filter #"+t+"_from").val(""),jQuery(".um-search-filter #"+t+"_to").val("")):wp.hooks.doAction("um_member_directory_filter_remove",a,e,t,r);e.data("page",1),um_set_url_from_data(e,"page",""),jQuery(this).tipsy("hide"),jQuery(this).parents(".um-members-filter-tag").remove(),0===e.find(".um-members-filter-remove").length?e.find(".um-clear-filters").hide():e.find(".um-clear-filters").show();var u=!1;if(!(u=wp.hooks.applyFilters("um_member_directory_ignore_after_search",u,e)))if(1===e.data("must-search")){var _=um_get_search(e);if(0===e.find(".um-members-filter-remove").length&&!_)return e.data("searched",0),e.find(".um-members-grid, .um-members-list, .um-members-intro").remove(),e.find(".um-member-directory-sorting-options").prop("disabled",!0),e.find(".um-member-directory-view-type").addClass("um-disabled"),wp.hooks.doAction("um_member_directory_clear_not_searched",e),void um_members_hide_preloader(e)}e.find(".um-member-directory-sorting-options").prop("disabled",!1),e.find(".um-member-directory-view-type").removeClass("um-disabled"),um_ajax_get_members(e)}}),jQuery(document.body).on("click",".um-directory .um-clear-filters-a",function(){var s=jQuery(this).parents(".um-directory");if(!um_is_directory_busy(s)){um_members_show_preloader(s),s.find(".um-members-filter-remove").each(function(){var r=jQuery(this).data("value"),e=jQuery(this).data("name"),t=jQuery(this).data("type");if("text"===t)um_set_url_from_data(s,"filter_"+e,""),jQuery('.um-search-filter input[name="'+e+'"]').val("");else if("select"===t){var a=um_get_data_for_directory(s,"filter_"+e);a=void 0===a?[]:a.split("||"),-1!==jQuery.inArray(r.toString(),a)&&(a=jQuery.grep(a,function(e){return e!==r.toString()})),a.length||(a=""),um_set_url_from_data(s,"filter_"+e,a);var i=jQuery('.um-search-filter select[name="'+e+'"]');i.find('option[value="'+r+'"]').prop("disabled",!1).show(),1<i.find("option:not(:disabled)").length&&i.prop("disabled",!1),i.select2("destroy").select2(),0<s.find('.um-search-filter select[data-um-parent="'+e+'"]').length&&i.trigger("change")}else if("slider"===t){um_set_url_from_data(s,"filter_"+e+"_from",""),um_set_url_from_data(s,"filter_"+e+"_to","");var m=jQuery(".um-search-filter #"+e+"_min").siblings(".um-slider"),d=m.slider("option");m.slider("values",[d.min,d.max]),jQuery(".um-search-filter #"+e+"_min").val(""),jQuery(".um-search-filter #"+e+"_max").val(""),um_set_range_label(m)}else"datepicker"===t?(um_set_url_from_data(s,"filter_"+e+"_from",""),um_set_url_from_data(s,"filter_"+e+"_to",""),jQuery(".um-search-filter #"+e+"_from").val(""),jQuery(".um-search-filter #"+e+"_to").val("")):"timepicker"===t?(um_set_url_from_data(s,"filter_"+e+"_from",""),um_set_url_from_data(s,"filter_"+e+"_to",""),jQuery(".um-search-filter #"+e+"_from").val(""),jQuery(".um-search-filter #"+e+"_to").val("")):wp.hooks.doAction("um_member_directory_clear_filters",t,s,e,r)}),s.data("page",1),um_set_url_from_data(s,"page",""),s.find(".um-members-filter-tag").remove(),0===s.find(".um-members-filter-remove").length?(s.find(".um-clear-filters").hide(),s.find(".um-clear-filters").parents(".um-member-directory-header-row").addClass("um-header-row-invisible")):(s.find(".um-clear-filters").show(),s.find(".um-clear-filters").parents(".um-member-directory-header-row").removeClass("um-header-row-invisible"));var e=!1;if(!(e=wp.hooks.applyFilters("um_member_directory_ignore_after_search",e,s)))if(1===s.data("must-search"))if(!um_get_search(s))return s.data("searched",0),s.find(".um-members-grid, .um-members-list, .um-members-intro").remove(),s.find(".um-member-directory-sorting-options").prop("disabled",!0),s.find(".um-member-directory-view-type").addClass("um-disabled"),wp.hooks.doAction("um_member_directory_clear_not_searched",s),void um_members_hide_preloader(s);s.find(".um-member-directory-sorting-options").prop("disabled",!1),s.find(".um-member-directory-view-type").removeClass("um-disabled"),um_ajax_get_members(s)}}),wp.hooks.doAction("um_member_directory_on_first_pages_loading"),jQuery(".um-directory").each(function(){var e=jQuery(this),r=um_members_get_hash(e);um_member_directories.push(r),e.find(".um-search").length&&(e.find(".um-search").is(":visible")||e.find(".um-search").css({display:"grid"}).slideUp(1)),e.find(".um-slider").each(function(){var e=jQuery(this),t=e.parents(".um-directory"),a=e.data("field_name"),r=um_get_data_for_directory(t,"filter_"+a+"_from"),i=um_get_data_for_directory(t,"filter_"+a+"_to");void 0===r&&(r=parseInt(e.data("min"))),void 0===i&&(i=parseInt(e.data("max")));var m=[r,i];e.slider({range:!0,min:parseInt(e.data("min")),max:parseInt(e.data("max")),values:m,create:function(e,r){},step:1,slide:function(e,r){um_set_range_label(jQuery(this),r)},stop:function(e,r){um_is_directory_busy(t)||(um_members_show_preloader(t),um_set_url_from_data(t,"filter_"+a+"_from",r.values[0]),um_set_url_from_data(t,"filter_"+a+"_to",r.values[1]),t.data("page",1),um_set_url_from_data(t,"page",""),um_ajax_get_members(t),um_change_tag(t),t.data("searched",1),t.find(".um-member-directory-sorting-options").prop("disabled",!1),t.find(".um-member-directory-view-type").removeClass("um-disabled"))}}),um_set_range_label(e)}),e.find(".um-datepicker-filter").each(function(){var s=jQuery(this),u=new Date(1e3*s.data("date_min")),_=new Date(1e3*s.data("date_max")),e=s.pickadate({selectYears:!0,min:u,max:_,formatSubmit:"yyyy/mm/dd",hiddenName:!0,onOpen:function(){s.blur()},onClose:function(){s.blur()},onSet:function(e){if(e.select){var r=s.parents(".um-directory");if(!um_is_directory_busy(r)){um_members_show_preloader(r);var t=s.data("filter_name"),a=s.data("range"),i=um_get_data_for_directory(r,"filter_"+t+"_from"),m=um_get_data_for_directory(r,"filter_"+t+"_to");void 0===i&&(i=u/1e3),void 0===m&&(m=_/1e3);var d=e.select/1e3;s.val();"from"===a?i=d:"to"===a&&(m=d),um_set_url_from_data(r,"filter_"+t+"_from",i),um_set_url_from_data(r,"filter_"+t+"_to",m),r.data("page",1),um_set_url_from_data(r,"page",""),um_ajax_get_members(r),um_change_tag(r),r.data("searched",1),r.find(".um-member-directory-sorting-options").prop("disabled",!1),r.find(".um-member-directory-view-type").removeClass("um-disabled")}}}}).pickadate("picker"),r=s.data("filter_name"),t=s.data("range"),a=um_get_data_for_directory(s.parents(".um-directory"),"filter_"+r+"_"+t);void 0!==a&&e.set("select",1e3*a)}),e.find(".um-timepicker-filter").each(function(){var u=jQuery(this),_=u.attr("id"),o=u.data("filter_name"),l=u.attr("data-min"),n=u.attr("data-max"),e=l.split(":"),r=n.split(":"),t=u.pickatime({format:u.data("format"),interval:parseInt(u.data("intervals")),min:[e[0],e[1]],max:[r[0],r[1]],formatSubmit:"HH:i",hiddenName:!0,onOpen:function(){u.blur()},onClose:function(){u.blur()},onSet:function(e){if(e.select){var r=u.parents(".um-directory");if(!um_is_directory_busy(r)){um_members_show_preloader(r);var t=u.data("filter_name"),a=u.data("range"),i=um_get_data_for_directory(r,"filter_"+t+"_from"),m=um_get_data_for_directory(r,"filter_"+t+"_to");if(void 0===i&&(i=l),void 0===m&&(m=n),void 0!==e.select){var d=um_time_convert(e.select,a);"from"===a?i=d:"to"===a&&(m=d)}else"from"===a?i=l:"to"===a&&(m=n);var s=jQuery("#"+_).val();"from"===u.data("range")?jQuery("#"+o+"_to").pickatime("picker").set("min",s):jQuery("#"+o+"_from").pickatime("picker").set("max",s),um_set_url_from_data(r,"filter_"+t+"_from",i),um_set_url_from_data(r,"filter_"+t+"_to",m),r.data("page",1),um_set_url_from_data(r,"page",""),um_ajax_get_members(r),um_change_tag(r),r.data("searched",1),r.find(".um-member-directory-sorting-options").prop("disabled",!1),r.find(".um-member-directory-view-type").removeClass("um-disabled")}}}}).pickatime("picker"),a=u.data("filter_name"),i=u.data("range"),m=um_get_data_for_directory(u.parents(".um-directory"),"filter_"+a+"_"+i);if(void 0!==m){var d=m.split(":");t.set("select",60*d[0]+1*d[1])}}),wp.hooks.doAction("um_member_directory_on_init",e,r);var t=!1;if(!(t=wp.hooks.applyFilters("um_member_directory_ignore_after_search",t,e))&&1===e.data("must-search")){var a=um_get_search(e);if(!um_get_filters_data(e).length&&!a)return}wp.hooks.applyFilters("um_member_directory_prevent_default_first_loading",!1,e,r)||(um_members_show_preloader(e),um_ajax_get_members(e,{first_load:!0}),um_change_tag(e))}),window.addEventListener("popstate",function(e){jQuery(".um-directory").each(function(){var d=jQuery(this),e=um_members_get_hash(d);(um_member_directories.push(e),um_members_show_preloader(d),d.find(".um-members-grid, .um-members-list, .um-members-intro").remove(),d.find(".um-member-directory-search-line").length)&&(void 0===(s=um_get_data_for_directory(d,"search"))&&(s=""),d.data("general_search",s),d.find(".um-search-line").val(s));var r=um_get_data_for_directory(d,"page");if(void 0===r?r=1:r>d.data("total_pages")&&(r=d.data("total_pages")),d.data("page",r).attr("data-page",r),d.find(".um-member-directory-sorting").length){var t=um_get_data_for_directory(d,"sort");void 0===t&&(t=d.find('.um-new-dropdown[data-element=".um-member-directory-sorting-a"]').find('a[data-default="1"]').data("value")),d.data("sorting",t);var a=d.find('.um-new-dropdown[data-element=".um-member-directory-sorting-a"]');a.find("a").data("selected",0).prop("data-selected",0).attr("data-selected",0),a.find('a[data-value="'+t+'"]').data("selected",1).prop("data-selected",1).attr("data-selected",1),d.find(".um-member-directory-sorting-a").find("> a").html(a.find('a[data-value="'+t+'"]').html())}if(d.find(".um-member-directory-view-type").length){var i=um_get_data_for_directory(d,"view_type");void 0===i&&(i=d.find('.um-member-directory-view-type-a[data-default="1"]').data("type")),d.data("view_type",i),d.find(".um-member-directory-view-type .um-member-directory-view-type-a").hide(),d.find('.um-member-directory-view-type .um-member-directory-view-type-a[data-type="'+i+'"]').show()}d.find(".um-datepicker-filter").each(function(){var e=jQuery(this),r=e.pickadate("picker"),t=e.data("filter_name"),a=e.data("range"),i=um_get_data_for_directory(d,"filter_"+t+"_"+a);void 0!==i?r.set("select",1e3*i):r.clear()}),d.find(".um-slider").each(function(){var e=jQuery(this),r=e.data("field_name"),t=um_get_data_for_directory(d,"filter_"+r+"_from"),a=um_get_data_for_directory(d,"filter_"+r+"_to");void 0===t&&(t=e.data("min")),t=parseInt(t),void 0===a&&(a=e.data("max")),a=parseInt(a),e.slider("values",[t,a]),um_set_range_label(e)}),d.find(".um-timepicker-filter").each(function(){var e=jQuery(this),r=e.pickatime("picker"),t=e.data("filter_name"),a=e.data("range"),i=um_get_data_for_directory(d,"filter_"+t+"_"+a);if(void 0!==i){var m=i.split(":");r.set("select",60*m[0])}else r.clear()});var m=!1;if(!(m=wp.hooks.applyFilters("um_member_directory_ignore_after_search",m,d))&&1===d.data("must-search")){var s=um_get_search(d);if(!um_get_filters_data(d).length&&!s)return d.data("searched",0),void um_members_hide_preloader(d);d.data("searched",1)}wp.hooks.applyFilters("um_member_directory_prevent_default_first_loading",!1,d,e)||(um_ajax_get_members(d),um_change_tag(d))})})});
|
includes/admin/assets/css/um-admin-modal.css
CHANGED
@@ -181,7 +181,7 @@
|
|
181 |
|
182 |
.um-admin-btn-content {
|
183 |
display: none;
|
184 |
-
padding:
|
185 |
}
|
186 |
|
187 |
.um-admin-btn-content p {
|
@@ -190,6 +190,15 @@
|
|
190 |
padding: 0 !important;
|
191 |
}
|
192 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
193 |
.dynamic-mce-content {display: none}
|
194 |
|
195 |
/*
|
181 |
|
182 |
.um-admin-btn-content {
|
183 |
display: none;
|
184 |
+
padding: 5px 0 0 0;
|
185 |
}
|
186 |
|
187 |
.um-admin-btn-content p {
|
190 |
padding: 0 !important;
|
191 |
}
|
192 |
|
193 |
+
.um-admin-btn-content p.um-admin-conditions-notice {
|
194 |
+
width: 100%;
|
195 |
+
margin: 0 0 9px 0 !important;
|
196 |
+
}
|
197 |
+
|
198 |
+
.um-admin-btn-content .um-admin-cur-condition:not(:last-child) {
|
199 |
+
margin: 0 0 5px 0;
|
200 |
+
}
|
201 |
+
|
202 |
.dynamic-mce-content {display: none}
|
203 |
|
204 |
/*
|
includes/admin/assets/js/um-admin-blocks.js
CHANGED
@@ -1,24 +1,24 @@
|
|
1 |
'use strict';
|
2 |
|
3 |
-
/**
|
4 |
-
* Add Control element
|
5 |
-
*/
|
6 |
-
var um_el = wp.element.createElement;
|
7 |
-
|
8 |
var um_components = wp.components,
|
9 |
-
umToggleControl = um_components.ToggleControl,
|
10 |
umSelectControl = um_components.SelectControl,
|
11 |
-
umTextareaControl = um_components.TextareaControl
|
12 |
-
|
|
|
|
|
|
|
|
|
13 |
|
14 |
var um_block_restriction = wp.compose.createHigherOrderComponent( function( BlockEdit ) {
|
15 |
var um_condition_fields = {
|
16 |
-
um_who_access:'um_block_settings_hide',
|
17 |
-
um_roles_access:'um_block_settings_hide',
|
18 |
-
um_message_type:'um_block_settings_hide',
|
19 |
-
um_message_content:'um_block_settings_hide'
|
20 |
};
|
21 |
|
|
|
|
|
22 |
return function( props ) {
|
23 |
|
24 |
if ( props.attributes.um_is_restrict !== true ) {
|
@@ -53,20 +53,22 @@ var um_block_restriction = wp.compose.createHigherOrderComponent( function( Bloc
|
|
53 |
}
|
54 |
}
|
55 |
|
56 |
-
|
|
|
|
|
57 |
wp.element.Fragment,
|
58 |
{},
|
59 |
-
|
60 |
-
|
61 |
wp.editor.InspectorControls,
|
62 |
{},
|
63 |
-
|
64 |
-
|
65 |
{
|
66 |
title: wp.i18n.__( 'UM access Controls', 'ultimate-member' )
|
67 |
},
|
68 |
-
|
69 |
-
|
70 |
{
|
71 |
label: wp.i18n.__( 'Restrict access?', 'ultimate-member' ),
|
72 |
checked: props.attributes.um_is_restrict,
|
@@ -80,10 +82,12 @@ var um_block_restriction = wp.compose.createHigherOrderComponent( function( Bloc
|
|
80 |
} else {
|
81 |
um_condition_fields['um_who_access'] = '';
|
82 |
}
|
|
|
|
|
83 |
}
|
84 |
}
|
85 |
),
|
86 |
-
|
87 |
umSelectControl,
|
88 |
{
|
89 |
type: 'number',
|
@@ -117,10 +121,12 @@ var um_block_restriction = wp.compose.createHigherOrderComponent( function( Bloc
|
|
117 |
um_condition_fields['um_message_type'] = '';
|
118 |
um_condition_fields['um_roles_access'] = 'um_block_settings_hide';
|
119 |
}
|
|
|
|
|
120 |
}
|
121 |
}
|
122 |
),
|
123 |
-
|
124 |
umSelectControl,
|
125 |
{
|
126 |
multiple: true,
|
@@ -133,7 +139,7 @@ var um_block_restriction = wp.compose.createHigherOrderComponent( function( Bloc
|
|
133 |
}
|
134 |
}
|
135 |
),
|
136 |
-
|
137 |
umSelectControl,
|
138 |
{
|
139 |
type: 'number',
|
@@ -164,7 +170,7 @@ var um_block_restriction = wp.compose.createHigherOrderComponent( function( Bloc
|
|
164 |
}
|
165 |
}
|
166 |
),
|
167 |
-
|
168 |
umTextareaControl,
|
169 |
{
|
170 |
type: 'number',
|
@@ -175,7 +181,8 @@ var um_block_restriction = wp.compose.createHigherOrderComponent( function( Bloc
|
|
175 |
props.setAttributes({ um_message_content: value });
|
176 |
}
|
177 |
}
|
178 |
-
)
|
|
|
179 |
)
|
180 |
)
|
181 |
);
|
@@ -208,6 +215,8 @@ var um_block_restrict_settings = {
|
|
208 |
}
|
209 |
};
|
210 |
|
|
|
|
|
211 |
|
212 |
/**
|
213 |
*
|
1 |
'use strict';
|
2 |
|
|
|
|
|
|
|
|
|
|
|
3 |
var um_components = wp.components,
|
|
|
4 |
umSelectControl = um_components.SelectControl,
|
5 |
+
umTextareaControl = um_components.TextareaControl;
|
6 |
+
|
7 |
+
|
8 |
+
function um_admin_blocks_custom_fields( um_condition_fields, props ) {
|
9 |
+
return wp.hooks.applyFilters( 'um_admin_blocks_custom_fields', [], um_condition_fields, props );
|
10 |
+
}
|
11 |
|
12 |
var um_block_restriction = wp.compose.createHigherOrderComponent( function( BlockEdit ) {
|
13 |
var um_condition_fields = {
|
14 |
+
um_who_access: 'um_block_settings_hide',
|
15 |
+
um_roles_access: 'um_block_settings_hide',
|
16 |
+
um_message_type: 'um_block_settings_hide',
|
17 |
+
um_message_content: 'um_block_settings_hide'
|
18 |
};
|
19 |
|
20 |
+
um_condition_fields = wp.hooks.applyFilters( 'um_admin_blocks_condition_fields_default', um_condition_fields );
|
21 |
+
|
22 |
return function( props ) {
|
23 |
|
24 |
if ( props.attributes.um_is_restrict !== true ) {
|
53 |
}
|
54 |
}
|
55 |
|
56 |
+
um_condition_fields = wp.hooks.applyFilters( 'um_admin_blocks_condition_fields', um_condition_fields, props );
|
57 |
+
|
58 |
+
return wp.element.createElement(
|
59 |
wp.element.Fragment,
|
60 |
{},
|
61 |
+
wp.element.createElement( BlockEdit, props ),
|
62 |
+
wp.element.createElement(
|
63 |
wp.editor.InspectorControls,
|
64 |
{},
|
65 |
+
wp.element.createElement(
|
66 |
+
wp.components.PanelBody,
|
67 |
{
|
68 |
title: wp.i18n.__( 'UM access Controls', 'ultimate-member' )
|
69 |
},
|
70 |
+
wp.element.createElement(
|
71 |
+
wp.components.ToggleControl,
|
72 |
{
|
73 |
label: wp.i18n.__( 'Restrict access?', 'ultimate-member' ),
|
74 |
checked: props.attributes.um_is_restrict,
|
82 |
} else {
|
83 |
um_condition_fields['um_who_access'] = '';
|
84 |
}
|
85 |
+
|
86 |
+
um_condition_fields = wp.hooks.applyFilters( 'um_admin_blocks_condition_fields_on_change', um_condition_fields, 'um_is_restrict', value );
|
87 |
}
|
88 |
}
|
89 |
),
|
90 |
+
wp.element.createElement(
|
91 |
umSelectControl,
|
92 |
{
|
93 |
type: 'number',
|
121 |
um_condition_fields['um_message_type'] = '';
|
122 |
um_condition_fields['um_roles_access'] = 'um_block_settings_hide';
|
123 |
}
|
124 |
+
|
125 |
+
um_condition_fields = wp.hooks.applyFilters( 'um_admin_blocks_condition_fields_on_change', um_condition_fields, 'um_who_access', value );
|
126 |
}
|
127 |
}
|
128 |
),
|
129 |
+
wp.element.createElement(
|
130 |
umSelectControl,
|
131 |
{
|
132 |
multiple: true,
|
139 |
}
|
140 |
}
|
141 |
),
|
142 |
+
wp.element.createElement(
|
143 |
umSelectControl,
|
144 |
{
|
145 |
type: 'number',
|
170 |
}
|
171 |
}
|
172 |
),
|
173 |
+
wp.element.createElement(
|
174 |
umTextareaControl,
|
175 |
{
|
176 |
type: 'number',
|
181 |
props.setAttributes({ um_message_content: value });
|
182 |
}
|
183 |
}
|
184 |
+
),
|
185 |
+
um_admin_blocks_custom_fields( um_condition_fields, props )
|
186 |
)
|
187 |
)
|
188 |
);
|
215 |
}
|
216 |
};
|
217 |
|
218 |
+
um_block_restrict_settings = wp.hooks.applyFilters( 'um_admin_blocks_restrict_settings', um_block_restrict_settings );
|
219 |
+
|
220 |
|
221 |
/**
|
222 |
*
|
includes/admin/assets/js/um-admin-modal.js
CHANGED
@@ -18,7 +18,7 @@ function um_admin_new_modal( id, ajax, size ) {
|
|
18 |
|
19 |
um_admin_remove_modal();
|
20 |
|
21 |
-
jQuery('body').addClass('um-admin-modal-open').append('<div class="um-admin-overlay"
|
22 |
jQuery('#' + id).prependTo('.um-admin-modal');
|
23 |
jQuery('#' + id).show();
|
24 |
jQuery('.um-admin-modal').show();
|
18 |
|
19 |
um_admin_remove_modal();
|
20 |
|
21 |
+
jQuery('body').addClass('um-admin-modal-open').append('<div class="um-admin-overlay"></div><div class="um-admin-modal"></div>');
|
22 |
jQuery('#' + id).prependTo('.um-admin-modal');
|
23 |
jQuery('#' + id).show();
|
24 |
jQuery('.um-admin-modal').show();
|
includes/admin/core/class-admin-builder.php
CHANGED
@@ -227,8 +227,16 @@ if ( ! class_exists( 'um\admin\core\Admin_Builder' ) ) {
|
|
227 |
|
228 |
<div class="um-admin-clear"></div>
|
229 |
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
230 |
<p><a href="javascript:void(0);" class="um-admin-new-condition button button-primary um-admin-tipsy-n" title="Add new condition"><?php _e( 'Add new rule', 'ultimate-member' ); ?></a></p>
|
231 |
<p class="um-admin-reset-conditions"><a href="javascript:void(0);" class="button"><?php _e( 'Reset all rules', 'ultimate-member' ); ?></a></p>
|
|
|
232 |
<div class="um-admin-clear"></div>
|
233 |
|
234 |
<?php if ( isset( $edit_array['conditions'] ) && count( $edit_array['conditions'] ) != 0 ) {
|
227 |
|
228 |
<div class="um-admin-clear"></div>
|
229 |
</div>
|
230 |
+
<p class="um-admin-conditions-notice">
|
231 |
+
<small>
|
232 |
+
<?php _e( 'Use the condition operator `equals to` or `not equals` if the parent field has a single option.', 'ultimate-member' ); ?>
|
233 |
+
<br><?php _e( 'Use the condition operator `greater than` or `less than` if the parent field is a number.', 'ultimate-member' ); ?>
|
234 |
+
<br><?php _e( 'Use the condition operator `contains` if the parent field has multiple options.', 'ultimate-member' ); ?>
|
235 |
+
</small>
|
236 |
+
</p>
|
237 |
<p><a href="javascript:void(0);" class="um-admin-new-condition button button-primary um-admin-tipsy-n" title="Add new condition"><?php _e( 'Add new rule', 'ultimate-member' ); ?></a></p>
|
238 |
<p class="um-admin-reset-conditions"><a href="javascript:void(0);" class="button"><?php _e( 'Reset all rules', 'ultimate-member' ); ?></a></p>
|
239 |
+
|
240 |
<div class="um-admin-clear"></div>
|
241 |
|
242 |
<?php if ( isset( $edit_array['conditions'] ) && count( $edit_array['conditions'] ) != 0 ) {
|
includes/admin/core/class-admin-enqueue.php
CHANGED
@@ -437,7 +437,7 @@ if ( ! class_exists( 'um\admin\core\Admin_Enqueue' ) ) {
|
|
437 |
return;
|
438 |
}
|
439 |
|
440 |
-
wp_register_script( 'um_block_js', $this->js_url . 'um-admin-blocks.js', array( 'wp-i18n', 'wp-blocks', 'wp-components' ), ultimatemember_version, true );
|
441 |
wp_set_script_translations( 'um_block_js', 'ultimate-member' );
|
442 |
|
443 |
$restrict_options = array();
|
437 |
return;
|
438 |
}
|
439 |
|
440 |
+
wp_register_script( 'um_block_js', $this->js_url . 'um-admin-blocks.js', array( 'wp-i18n', 'wp-blocks', 'wp-components', 'wp-hooks' ), ultimatemember_version, true );
|
441 |
wp_set_script_translations( 'um_block_js', 'ultimate-member' );
|
442 |
|
443 |
$restrict_options = array();
|
includes/admin/core/class-admin-metabox.php
CHANGED
@@ -1130,7 +1130,7 @@ if ( ! class_exists( 'um\admin\core\Admin_Metabox' ) ) {
|
|
1130 |
}
|
1131 |
}
|
1132 |
|
1133 |
-
update_post_meta( $post_id, '_um_search_filters_gmt',
|
1134 |
}
|
1135 |
|
1136 |
|
1130 |
}
|
1131 |
}
|
1132 |
|
1133 |
+
update_post_meta( $post_id, '_um_search_filters_gmt', (int) $_POST['um-gmt-offset'] );
|
1134 |
}
|
1135 |
|
1136 |
|
includes/admin/core/class-admin-settings.php
CHANGED
@@ -1703,7 +1703,7 @@ if ( ! class_exists( 'um\admin\core\Admin_Settings' ) ) {
|
|
1703 |
|
1704 |
if ( ( ! wp_verify_nonce( $nonce, 'um-settings-nonce' ) || empty( $nonce ) ) || ! current_user_can( 'manage_options' ) ) {
|
1705 |
// This nonce is not valid.
|
1706 |
-
wp_die( 'Security Check' );
|
1707 |
}
|
1708 |
|
1709 |
/**
|
@@ -2689,7 +2689,7 @@ Require a strong password: <?php echo $this->info_value( UM()->options()->get('
|
|
2689 |
--- UM Access Configuration ---
|
2690 |
|
2691 |
Panic Key: <?php echo UM()->options()->get('panic_key') . "\n"; ?>
|
2692 |
-
Global Site Access: <?php $arr = array('Site accessible to Everyone','','Site accessible to Logged In Users'); echo $arr[
|
2693 |
<?php if( UM()->options()->get('accessible') == 2 ) { ?>
|
2694 |
Custom Redirect URL: <?php echo UM()->options()->get('access_redirect')."\n";?>
|
2695 |
Exclude the following URLs:<?php echo "\t\t\t\t".implode("\t\n\t\t\t\t\t\t\t\t\t\t",UM()->options()->get('access_exclude_uris') )."\n";?>
|
1703 |
|
1704 |
if ( ( ! wp_verify_nonce( $nonce, 'um-settings-nonce' ) || empty( $nonce ) ) || ! current_user_can( 'manage_options' ) ) {
|
1705 |
// This nonce is not valid.
|
1706 |
+
wp_die( __( 'Security Check', 'ultimate-member' ) );
|
1707 |
}
|
1708 |
|
1709 |
/**
|
2689 |
--- UM Access Configuration ---
|
2690 |
|
2691 |
Panic Key: <?php echo UM()->options()->get('panic_key') . "\n"; ?>
|
2692 |
+
Global Site Access: <?php $arr = array('Site accessible to Everyone','','Site accessible to Logged In Users'); echo $arr[ (int) UM()->options()->get('accessible') ] . "\n"; ?>
|
2693 |
<?php if( UM()->options()->get('accessible') == 2 ) { ?>
|
2694 |
Custom Redirect URL: <?php echo UM()->options()->get('access_redirect')."\n";?>
|
2695 |
Exclude the following URLs:<?php echo "\t\t\t\t".implode("\t\n\t\t\t\t\t\t\t\t\t\t",UM()->options()->get('access_exclude_uris') )."\n";?>
|
includes/admin/core/class-admin-upgrade.php
CHANGED
@@ -186,7 +186,7 @@ if ( ! class_exists( 'um\admin\core\Admin_Upgrade' ) ) {
|
|
186 |
if ( $handle ) {
|
187 |
while ( false !== ( $filename = readdir( $handle ) ) ) {
|
188 |
if ( $filename != '.' && $filename != '..' ) {
|
189 |
-
if ( is_dir( $this->packages_dir .
|
190 |
$update_versions[] = $filename;
|
191 |
}
|
192 |
}
|
@@ -205,7 +205,7 @@ if ( ! class_exists( 'um\admin\core\Admin_Upgrade' ) ) {
|
|
205 |
*/
|
206 |
function init_packages_ajax() {
|
207 |
foreach ( $this->necessary_packages as $package ) {
|
208 |
-
$hooks_file = $this->packages_dir .
|
209 |
if ( file_exists( $hooks_file ) ) {
|
210 |
$pack_ajax_hooks = include_once $hooks_file;
|
211 |
|
@@ -222,7 +222,7 @@ if ( ! class_exists( 'um\admin\core\Admin_Upgrade' ) ) {
|
|
222 |
*/
|
223 |
function init_packages_ajax_handlers() {
|
224 |
foreach ( $this->necessary_packages as $package ) {
|
225 |
-
$handlers_file = $this->packages_dir .
|
226 |
if ( file_exists( $handlers_file ) ) {
|
227 |
include_once $handlers_file;
|
228 |
}
|
@@ -257,6 +257,7 @@ if ( ! class_exists( 'um\admin\core\Admin_Upgrade' ) ) {
|
|
257 |
</div>
|
258 |
|
259 |
<script type="text/javascript">
|
|
|
260 |
var um_packages;
|
261 |
|
262 |
jQuery( document ).ready( function() {
|
@@ -293,23 +294,26 @@ if ( ! class_exists( 'um\admin\core\Admin_Upgrade' ) ) {
|
|
293 |
*/
|
294 |
function um_run_upgrade() {
|
295 |
if ( um_packages.length ) {
|
296 |
-
|
297 |
-
|
298 |
-
|
299 |
-
|
300 |
-
|
301 |
-
|
302 |
-
|
303 |
-
|
304 |
-
|
305 |
-
|
306 |
-
|
307 |
-
|
308 |
-
|
309 |
-
|
310 |
-
|
311 |
-
|
312 |
-
|
|
|
|
|
|
|
313 |
} else {
|
314 |
window.location = '<?php echo add_query_arg( array( 'page' => 'ultimatemember', 'msg' => 'updated' ), admin_url( 'admin.php' ) ) ?>'
|
315 |
}
|
@@ -353,7 +357,7 @@ if ( ! class_exists( 'um\admin\core\Admin_Upgrade' ) ) {
|
|
353 |
exit('');
|
354 |
} else {
|
355 |
ob_start();
|
356 |
-
include_once $this->packages_dir .
|
357 |
ob_get_flush();
|
358 |
exit;
|
359 |
}
|
186 |
if ( $handle ) {
|
187 |
while ( false !== ( $filename = readdir( $handle ) ) ) {
|
188 |
if ( $filename != '.' && $filename != '..' ) {
|
189 |
+
if ( is_dir( $this->packages_dir . $filename ) ) {
|
190 |
$update_versions[] = $filename;
|
191 |
}
|
192 |
}
|
205 |
*/
|
206 |
function init_packages_ajax() {
|
207 |
foreach ( $this->necessary_packages as $package ) {
|
208 |
+
$hooks_file = $this->packages_dir . $package . DIRECTORY_SEPARATOR . 'hooks.php';
|
209 |
if ( file_exists( $hooks_file ) ) {
|
210 |
$pack_ajax_hooks = include_once $hooks_file;
|
211 |
|
222 |
*/
|
223 |
function init_packages_ajax_handlers() {
|
224 |
foreach ( $this->necessary_packages as $package ) {
|
225 |
+
$handlers_file = $this->packages_dir . $package . DIRECTORY_SEPARATOR . 'functions.php';
|
226 |
if ( file_exists( $handlers_file ) ) {
|
227 |
include_once $handlers_file;
|
228 |
}
|
257 |
</div>
|
258 |
|
259 |
<script type="text/javascript">
|
260 |
+
var um_request_throttle = 15000;
|
261 |
var um_packages;
|
262 |
|
263 |
jQuery( document ).ready( function() {
|
294 |
*/
|
295 |
function um_run_upgrade() {
|
296 |
if ( um_packages.length ) {
|
297 |
+
// 30s between upgrades
|
298 |
+
setTimeout( function () {
|
299 |
+
var pack = um_packages.shift();
|
300 |
+
um_add_upgrade_log( '<br />=================================================================' );
|
301 |
+
um_add_upgrade_log( '<h4 style="font-weight: bold;">Prepare package "' + pack + '" version...</h4>' );
|
302 |
+
jQuery.ajax({
|
303 |
+
url: '<?php echo esc_js( admin_url( 'admin-ajax.php' ) ) ?>',
|
304 |
+
type: 'POST',
|
305 |
+
dataType: 'html',
|
306 |
+
data: {
|
307 |
+
action: 'um_run_package',
|
308 |
+
pack: pack,
|
309 |
+
nonce: um_admin_scripts.nonce
|
310 |
+
},
|
311 |
+
success: function( html ) {
|
312 |
+
um_add_upgrade_log( 'Package "' + pack + '" is ready. Start the execution...' );
|
313 |
+
jQuery( '#run_upgrade' ).after( html );
|
314 |
+
}
|
315 |
+
});
|
316 |
+
}, um_request_throttle );
|
317 |
} else {
|
318 |
window.location = '<?php echo add_query_arg( array( 'page' => 'ultimatemember', 'msg' => 'updated' ), admin_url( 'admin.php' ) ) ?>'
|
319 |
}
|
357 |
exit('');
|
358 |
} else {
|
359 |
ob_start();
|
360 |
+
include_once $this->packages_dir . sanitize_text_field( $_POST['pack'] ) . DIRECTORY_SEPARATOR . 'init.php';
|
361 |
ob_get_flush();
|
362 |
exit;
|
363 |
}
|
includes/admin/core/class-admin-users.php
CHANGED
@@ -138,7 +138,7 @@ if ( ! class_exists( 'um\admin\core\Admin_Users' ) ) {
|
|
138 |
|
139 |
case 'um_delete':
|
140 |
if ( is_admin() ) {
|
141 |
-
wp_die( 'This action is not allowed in backend.', 'ultimate-member' );
|
142 |
}
|
143 |
UM()->user()->delete();
|
144 |
break;
|
@@ -328,11 +328,10 @@ if ( ! class_exists( 'um\admin\core\Admin_Users' ) ) {
|
|
328 |
*/
|
329 |
function filter_users_by_status( $query ) {
|
330 |
global $wpdb, $pagenow;
|
|
|
331 |
|
332 |
-
|
333 |
-
|
334 |
-
$status = sanitize_key( $_GET['um_status'] );
|
335 |
-
|
336 |
if ( $status == 'needs-verification' ) {
|
337 |
$query->query_where = str_replace('WHERE 1=1',
|
338 |
"WHERE 1=1 AND {$wpdb->users}.ID IN (
|
138 |
|
139 |
case 'um_delete':
|
140 |
if ( is_admin() ) {
|
141 |
+
wp_die( __( 'This action is not allowed in backend.', 'ultimate-member' ) );
|
142 |
}
|
143 |
UM()->user()->delete();
|
144 |
break;
|
328 |
*/
|
329 |
function filter_users_by_status( $query ) {
|
330 |
global $wpdb, $pagenow;
|
331 |
+
if ( is_admin() && $pagenow == 'users.php' && ! empty( $_REQUEST['um_status'] ) ) {
|
332 |
|
333 |
+
$status = sanitize_key( $_REQUEST['um_status'] );
|
334 |
+
|
|
|
|
|
335 |
if ( $status == 'needs-verification' ) {
|
336 |
$query->query_where = str_replace('WHERE 1=1',
|
337 |
"WHERE 1=1 AND {$wpdb->users}.ID IN (
|
includes/admin/core/packages/2.0-beta1/init.php
CHANGED
@@ -23,7 +23,10 @@
|
|
23 |
success: function( response ) {
|
24 |
if ( typeof response.data != 'undefined' ) {
|
25 |
um_add_upgrade_log( response.data.message );
|
26 |
-
|
|
|
|
|
|
|
27 |
} else {
|
28 |
um_wrong_ajax();
|
29 |
}
|
@@ -50,7 +53,10 @@
|
|
50 |
um_roles_data = response.data.roles;
|
51 |
|
52 |
um_add_upgrade_log( '<?php echo esc_js( __( 'Upgrade Users...', 'ultimate-member' ) ) ?>' );
|
53 |
-
|
|
|
|
|
|
|
54 |
} else {
|
55 |
um_wrong_ajax();
|
56 |
}
|
@@ -86,7 +92,9 @@
|
|
86 |
um_add_upgrade_log( '<?php echo esc_js( __( 'Start users upgrading...', 'ultimate-member' ) ) ?>');
|
87 |
users_pages = Math.ceil( response.data.count / users_per_page );
|
88 |
|
89 |
-
|
|
|
|
|
90 |
} else {
|
91 |
um_wrong_ajax();
|
92 |
}
|
@@ -96,7 +104,9 @@
|
|
96 |
}
|
97 |
});
|
98 |
} else {
|
99 |
-
|
|
|
|
|
100 |
}
|
101 |
|
102 |
return false;
|
@@ -120,7 +130,9 @@
|
|
120 |
if ( typeof response.data != 'undefined' ) {
|
121 |
um_add_upgrade_log( response.data.message );
|
122 |
current_page++;
|
123 |
-
|
|
|
|
|
124 |
} else {
|
125 |
um_wrong_ajax();
|
126 |
}
|
@@ -130,7 +142,9 @@
|
|
130 |
}
|
131 |
});
|
132 |
} else {
|
133 |
-
|
|
|
|
|
134 |
}
|
135 |
}
|
136 |
|
@@ -149,7 +163,9 @@
|
|
149 |
success: function( response ) {
|
150 |
if ( typeof response.data != 'undefined' ) {
|
151 |
um_add_upgrade_log( response.data.message );
|
152 |
-
|
|
|
|
|
153 |
} else {
|
154 |
um_wrong_ajax();
|
155 |
}
|
@@ -175,7 +191,9 @@
|
|
175 |
success: function( response ) {
|
176 |
if ( typeof response.data != 'undefined' ) {
|
177 |
um_add_upgrade_log( response.data.message );
|
178 |
-
|
|
|
|
|
179 |
} else {
|
180 |
um_wrong_ajax();
|
181 |
}
|
@@ -201,7 +219,9 @@
|
|
201 |
success: function( response ) {
|
202 |
if ( typeof response.data != 'undefined' ) {
|
203 |
um_add_upgrade_log( response.data.message );
|
204 |
-
|
|
|
|
|
205 |
} else {
|
206 |
um_wrong_ajax();
|
207 |
}
|
@@ -227,7 +247,9 @@
|
|
227 |
success: function( response ) {
|
228 |
if ( typeof response.data != 'undefined' ) {
|
229 |
um_add_upgrade_log( response.data.message );
|
230 |
-
|
|
|
|
|
231 |
} else {
|
232 |
um_wrong_ajax();
|
233 |
}
|
@@ -253,7 +275,9 @@
|
|
253 |
success: function( response ) {
|
254 |
if ( typeof response.data != 'undefined' ) {
|
255 |
um_add_upgrade_log( response.data.message );
|
256 |
-
|
|
|
|
|
257 |
} else {
|
258 |
um_wrong_ajax();
|
259 |
}
|
@@ -279,7 +303,9 @@
|
|
279 |
success: function( response ) {
|
280 |
if ( typeof response.data != 'undefined' ) {
|
281 |
um_add_upgrade_log( response.data.message );
|
282 |
-
|
|
|
|
|
283 |
} else {
|
284 |
um_wrong_ajax();
|
285 |
}
|
@@ -309,7 +335,9 @@
|
|
309 |
|
310 |
forums_pages = Math.ceil( response.data.count / users_per_page );
|
311 |
|
312 |
-
|
|
|
|
|
313 |
} else {
|
314 |
um_wrong_ajax();
|
315 |
}
|
@@ -336,7 +364,9 @@
|
|
336 |
if ( typeof response.data != 'undefined' ) {
|
337 |
um_add_upgrade_log( response.data.message );
|
338 |
current_page++;
|
339 |
-
|
|
|
|
|
340 |
} else {
|
341 |
um_wrong_ajax();
|
342 |
}
|
@@ -346,7 +376,9 @@
|
|
346 |
}
|
347 |
});
|
348 |
} else {
|
349 |
-
|
|
|
|
|
350 |
}
|
351 |
}
|
352 |
|
@@ -370,8 +402,9 @@
|
|
370 |
um_add_upgrade_log( response.data.message );
|
371 |
|
372 |
products_pages = Math.ceil( response.data.count / users_per_page );
|
373 |
-
|
374 |
-
|
|
|
375 |
} else {
|
376 |
um_wrong_ajax();
|
377 |
}
|
@@ -398,7 +431,9 @@
|
|
398 |
if ( typeof response.data != 'undefined' ) {
|
399 |
um_add_upgrade_log( response.data.message );
|
400 |
current_page++;
|
401 |
-
|
|
|
|
|
402 |
} else {
|
403 |
um_wrong_ajax();
|
404 |
}
|
@@ -408,7 +443,9 @@
|
|
408 |
}
|
409 |
});
|
410 |
} else {
|
411 |
-
|
|
|
|
|
412 |
}
|
413 |
}
|
414 |
|
23 |
success: function( response ) {
|
24 |
if ( typeof response.data != 'undefined' ) {
|
25 |
um_add_upgrade_log( response.data.message );
|
26 |
+
|
27 |
+
setTimeout( function () {
|
28 |
+
upgrade_roles();
|
29 |
+
}, um_request_throttle );
|
30 |
} else {
|
31 |
um_wrong_ajax();
|
32 |
}
|
53 |
um_roles_data = response.data.roles;
|
54 |
|
55 |
um_add_upgrade_log( '<?php echo esc_js( __( 'Upgrade Users...', 'ultimate-member' ) ) ?>' );
|
56 |
+
|
57 |
+
setTimeout( function () {
|
58 |
+
get_users_per_role();
|
59 |
+
}, um_request_throttle );
|
60 |
} else {
|
61 |
um_wrong_ajax();
|
62 |
}
|
92 |
um_add_upgrade_log( '<?php echo esc_js( __( 'Start users upgrading...', 'ultimate-member' ) ) ?>');
|
93 |
users_pages = Math.ceil( response.data.count / users_per_page );
|
94 |
|
95 |
+
setTimeout( function () {
|
96 |
+
update_user_per_page( role.role_key, role.key_in_meta );
|
97 |
+
}, um_request_throttle );
|
98 |
} else {
|
99 |
um_wrong_ajax();
|
100 |
}
|
104 |
}
|
105 |
});
|
106 |
} else {
|
107 |
+
setTimeout( function () {
|
108 |
+
upgrade_content_restriction();
|
109 |
+
}, um_request_throttle );
|
110 |
}
|
111 |
|
112 |
return false;
|
130 |
if ( typeof response.data != 'undefined' ) {
|
131 |
um_add_upgrade_log( response.data.message );
|
132 |
current_page++;
|
133 |
+
setTimeout( function () {
|
134 |
+
update_user_per_page( role_key, key_in_meta );
|
135 |
+
}, um_request_throttle );
|
136 |
} else {
|
137 |
um_wrong_ajax();
|
138 |
}
|
142 |
}
|
143 |
});
|
144 |
} else {
|
145 |
+
setTimeout( function () {
|
146 |
+
get_users_per_role();
|
147 |
+
}, um_request_throttle );
|
148 |
}
|
149 |
}
|
150 |
|
163 |
success: function( response ) {
|
164 |
if ( typeof response.data != 'undefined' ) {
|
165 |
um_add_upgrade_log( response.data.message );
|
166 |
+
setTimeout( function () {
|
167 |
+
upgrade_settings();
|
168 |
+
}, um_request_throttle );
|
169 |
} else {
|
170 |
um_wrong_ajax();
|
171 |
}
|
191 |
success: function( response ) {
|
192 |
if ( typeof response.data != 'undefined' ) {
|
193 |
um_add_upgrade_log( response.data.message );
|
194 |
+
setTimeout( function () {
|
195 |
+
upgrade_menus();
|
196 |
+
}, um_request_throttle );
|
197 |
} else {
|
198 |
um_wrong_ajax();
|
199 |
}
|
219 |
success: function( response ) {
|
220 |
if ( typeof response.data != 'undefined' ) {
|
221 |
um_add_upgrade_log( response.data.message );
|
222 |
+
setTimeout( function () {
|
223 |
+
upgrade_mc_lists();
|
224 |
+
}, um_request_throttle );
|
225 |
} else {
|
226 |
um_wrong_ajax();
|
227 |
}
|
247 |
success: function( response ) {
|
248 |
if ( typeof response.data != 'undefined' ) {
|
249 |
um_add_upgrade_log( response.data.message );
|
250 |
+
setTimeout( function () {
|
251 |
+
upgrade_social_login();
|
252 |
+
}, um_request_throttle );
|
253 |
} else {
|
254 |
um_wrong_ajax();
|
255 |
}
|
275 |
success: function( response ) {
|
276 |
if ( typeof response.data != 'undefined' ) {
|
277 |
um_add_upgrade_log( response.data.message );
|
278 |
+
setTimeout( function () {
|
279 |
+
upgrade_cpt();
|
280 |
+
}, um_request_throttle );
|
281 |
} else {
|
282 |
um_wrong_ajax();
|
283 |
}
|
303 |
success: function( response ) {
|
304 |
if ( typeof response.data != 'undefined' ) {
|
305 |
um_add_upgrade_log( response.data.message );
|
306 |
+
setTimeout( function () {
|
307 |
+
get_forums();
|
308 |
+
}, um_request_throttle );
|
309 |
} else {
|
310 |
um_wrong_ajax();
|
311 |
}
|
335 |
|
336 |
forums_pages = Math.ceil( response.data.count / users_per_page );
|
337 |
|
338 |
+
setTimeout( function () {
|
339 |
+
update_forums_per_page();
|
340 |
+
}, um_request_throttle );
|
341 |
} else {
|
342 |
um_wrong_ajax();
|
343 |
}
|
364 |
if ( typeof response.data != 'undefined' ) {
|
365 |
um_add_upgrade_log( response.data.message );
|
366 |
current_page++;
|
367 |
+
setTimeout( function () {
|
368 |
+
update_forums_per_page();
|
369 |
+
}, um_request_throttle );
|
370 |
} else {
|
371 |
um_wrong_ajax();
|
372 |
}
|
376 |
}
|
377 |
});
|
378 |
} else {
|
379 |
+
setTimeout( function () {
|
380 |
+
get_products();
|
381 |
+
}, um_request_throttle );
|
382 |
}
|
383 |
}
|
384 |
|
402 |
um_add_upgrade_log( response.data.message );
|
403 |
|
404 |
products_pages = Math.ceil( response.data.count / users_per_page );
|
405 |
+
setTimeout( function () {
|
406 |
+
update_products_per_page();
|
407 |
+
}, um_request_throttle );
|
408 |
} else {
|
409 |
um_wrong_ajax();
|
410 |
}
|
431 |
if ( typeof response.data != 'undefined' ) {
|
432 |
um_add_upgrade_log( response.data.message );
|
433 |
current_page++;
|
434 |
+
setTimeout( function () {
|
435 |
+
update_products_per_page();
|
436 |
+
}, um_request_throttle );
|
437 |
} else {
|
438 |
um_wrong_ajax();
|
439 |
}
|
443 |
}
|
444 |
});
|
445 |
} else {
|
446 |
+
setTimeout( function () {
|
447 |
+
upgrade_email_templates();
|
448 |
+
}, um_request_throttle );
|
449 |
}
|
450 |
}
|
451 |
|
includes/admin/core/packages/2.0.10/init.php
CHANGED
@@ -16,7 +16,9 @@
|
|
16 |
success: function( response ) {
|
17 |
if ( typeof response.data != 'undefined' ) {
|
18 |
um_add_upgrade_log( response.data.message );
|
19 |
-
|
|
|
|
|
20 |
} else {
|
21 |
um_wrong_ajax();
|
22 |
}
|
16 |
success: function( response ) {
|
17 |
if ( typeof response.data != 'undefined' ) {
|
18 |
um_add_upgrade_log( response.data.message );
|
19 |
+
setTimeout( function () {
|
20 |
+
um_clear_cache2010();
|
21 |
+
}, um_request_throttle );
|
22 |
} else {
|
23 |
um_wrong_ajax();
|
24 |
}
|
includes/admin/core/packages/2.1.0-beta1/init.php
CHANGED
@@ -17,7 +17,9 @@
|
|
17 |
success: function( response ) {
|
18 |
if ( typeof response.data != 'undefined' ) {
|
19 |
um_add_upgrade_log( response.data.message );
|
20 |
-
|
|
|
|
|
21 |
} else {
|
22 |
um_wrong_ajax();
|
23 |
}
|
17 |
success: function( response ) {
|
18 |
if ( typeof response.data != 'undefined' ) {
|
19 |
um_add_upgrade_log( response.data.message );
|
20 |
+
setTimeout( function () {
|
21 |
+
um_memberdir210beta1();
|
22 |
+
}, um_request_throttle );
|
23 |
} else {
|
24 |
um_wrong_ajax();
|
25 |
}
|
includes/admin/core/packages/2.1.3-beta3/init.php
CHANGED
@@ -24,7 +24,9 @@
|
|
24 |
|
25 |
users_pages = Math.ceil( response.data.count / users_per_page );
|
26 |
|
27 |
-
|
|
|
|
|
28 |
} else {
|
29 |
um_wrong_ajax();
|
30 |
}
|
@@ -49,7 +51,9 @@
|
|
49 |
if ( typeof response.data != 'undefined' ) {
|
50 |
um_add_upgrade_log( response.data.message );
|
51 |
current_page++;
|
52 |
-
|
|
|
|
|
53 |
} else {
|
54 |
um_wrong_ajax();
|
55 |
}
|
@@ -59,7 +63,9 @@
|
|
59 |
}
|
60 |
});
|
61 |
} else {
|
62 |
-
|
|
|
|
|
63 |
}
|
64 |
}
|
65 |
|
24 |
|
25 |
users_pages = Math.ceil( response.data.count / users_per_page );
|
26 |
|
27 |
+
setTimeout( function () {
|
28 |
+
um_update_metadata_per_user213beta3();
|
29 |
+
}, um_request_throttle );
|
30 |
} else {
|
31 |
um_wrong_ajax();
|
32 |
}
|
51 |
if ( typeof response.data != 'undefined' ) {
|
52 |
um_add_upgrade_log( response.data.message );
|
53 |
current_page++;
|
54 |
+
setTimeout( function () {
|
55 |
+
um_update_metadata_per_user213beta3();
|
56 |
+
}, um_request_throttle );
|
57 |
} else {
|
58 |
um_wrong_ajax();
|
59 |
}
|
63 |
}
|
64 |
});
|
65 |
} else {
|
66 |
+
setTimeout( function () {
|
67 |
+
um_metatable213beta3();
|
68 |
+
}, um_request_throttle );
|
69 |
}
|
70 |
}
|
71 |
|
includes/core/class-access.php
CHANGED
@@ -1394,6 +1394,9 @@ if ( ! class_exists( 'um\core\Access' ) ) {
|
|
1394 |
}
|
1395 |
}
|
1396 |
} else {
|
|
|
|
|
|
|
1397 |
if ( ! empty( $block['attrs']['um_roles_access'] ) ) {
|
1398 |
$display = false;
|
1399 |
foreach ( $block['attrs']['um_roles_access'] as $role ) {
|
@@ -1401,15 +1404,17 @@ if ( ! class_exists( 'um\core\Access' ) ) {
|
|
1401 |
$display = true;
|
1402 |
}
|
1403 |
}
|
|
|
1404 |
|
1405 |
-
|
1406 |
-
|
1407 |
-
|
1408 |
-
|
1409 |
-
|
1410 |
-
|
1411 |
-
|
1412 |
-
|
|
|
1413 |
}
|
1414 |
}
|
1415 |
}
|
1394 |
}
|
1395 |
}
|
1396 |
} else {
|
1397 |
+
$display = true;
|
1398 |
+
|
1399 |
+
// What roles can access this content?
|
1400 |
if ( ! empty( $block['attrs']['um_roles_access'] ) ) {
|
1401 |
$display = false;
|
1402 |
foreach ( $block['attrs']['um_roles_access'] as $role ) {
|
1404 |
$display = true;
|
1405 |
}
|
1406 |
}
|
1407 |
+
}
|
1408 |
|
1409 |
+
$display = apply_filters( 'um_loggedin_block_restriction', $display, $block );
|
1410 |
+
|
1411 |
+
if ( ! $display ) {
|
1412 |
+
$block_content = '';
|
1413 |
+
if ( isset( $block['attrs']['um_message_type'] ) ) {
|
1414 |
+
if ( $block['attrs']['um_message_type'] == '1' ) {
|
1415 |
+
$block_content = $default_message;
|
1416 |
+
} elseif ( $block['attrs']['um_message_type'] == '2' ) {
|
1417 |
+
$block_content = $block['attrs']['um_message_content'];
|
1418 |
}
|
1419 |
}
|
1420 |
}
|
includes/core/class-builtin.php
CHANGED
@@ -510,7 +510,7 @@ if ( ! class_exists( 'um\core\Builtin' ) ) {
|
|
510 |
'divider' => array(
|
511 |
'name' => 'Divider',
|
512 |
'col1' => array('_title','_width','_divider_text','_visibility'),
|
513 |
-
'col2' => array('_style','_color'),
|
514 |
'form_only' => true,
|
515 |
'validate' => array(
|
516 |
'_title' => array(
|
510 |
'divider' => array(
|
511 |
'name' => 'Divider',
|
512 |
'col1' => array('_title','_width','_divider_text','_visibility'),
|
513 |
+
'col2' => array('_style','_color','_public','_roles'),
|
514 |
'form_only' => true,
|
515 |
'validate' => array(
|
516 |
'_title' => array(
|
includes/core/class-fields.php
CHANGED
@@ -2354,7 +2354,7 @@ if ( ! class_exists( 'um\core\Fields' ) ) {
|
|
2354 |
|
2355 |
if ( $this->is_error( $key ) ) {
|
2356 |
$output .= $this->field_error( $this->show_error( $key ) );
|
2357 |
-
}
|
2358 |
$output .= $this->field_notice( $this->show_notice( $key ) );
|
2359 |
}
|
2360 |
|
@@ -2366,6 +2366,9 @@ if ( ! class_exists( 'um\core\Fields' ) ) {
|
|
2366 |
$output .= '<div ' . $this->get_atts( $key, $classes, $conditional, $data ) . '>';
|
2367 |
|
2368 |
if ( isset( $data['label'] ) ) {
|
|
|
|
|
|
|
2369 |
$output .= $this->field_label( sprintf( __( 'Confirm %s', 'ultimate-member' ), $data['label'] ), $key, $data );
|
2370 |
}
|
2371 |
|
2354 |
|
2355 |
if ( $this->is_error( $key ) ) {
|
2356 |
$output .= $this->field_error( $this->show_error( $key ) );
|
2357 |
+
} elseif ( $this->is_notice( $key ) ) {
|
2358 |
$output .= $this->field_notice( $this->show_notice( $key ) );
|
2359 |
}
|
2360 |
|
2366 |
$output .= '<div ' . $this->get_atts( $key, $classes, $conditional, $data ) . '>';
|
2367 |
|
2368 |
if ( isset( $data['label'] ) ) {
|
2369 |
+
|
2370 |
+
$data['label'] = __( $data['label'], 'ultimate-member' );
|
2371 |
+
|
2372 |
$output .= $this->field_label( sprintf( __( 'Confirm %s', 'ultimate-member' ), $data['label'] ), $key, $data );
|
2373 |
}
|
2374 |
|
includes/core/class-form.php
CHANGED
@@ -98,7 +98,7 @@ if ( ! class_exists( 'um\core\Form' ) ) {
|
|
98 |
$arr_options['status'] = 'success';
|
99 |
$arr_options['post'] = $_POST;
|
100 |
|
101 |
-
UM()->fields()->set_id =
|
102 |
UM()->fields()->set_mode = 'profile';
|
103 |
$form_fields = UM()->fields()->get_fields();
|
104 |
$arr_options['fields'] = $form_fields;
|
@@ -439,7 +439,7 @@ if ( ! class_exists( 'um\core\Form' ) ) {
|
|
439 |
}
|
440 |
|
441 |
if ( isset( $_POST[ UM()->honeypot ] ) && $_POST[ UM()->honeypot ] != '' ) {
|
442 |
-
wp_die( 'Hello, spam bot!', 'ultimate-member' );
|
443 |
}
|
444 |
|
445 |
/**
|
98 |
$arr_options['status'] = 'success';
|
99 |
$arr_options['post'] = $_POST;
|
100 |
|
101 |
+
UM()->fields()->set_id = absint( $_POST['form_id'] );
|
102 |
UM()->fields()->set_mode = 'profile';
|
103 |
$form_fields = UM()->fields()->get_fields();
|
104 |
$arr_options['fields'] = $form_fields;
|
439 |
}
|
440 |
|
441 |
if ( isset( $_POST[ UM()->honeypot ] ) && $_POST[ UM()->honeypot ] != '' ) {
|
442 |
+
wp_die( __( 'Hello, spam bot!', 'ultimate-member' ) );
|
443 |
}
|
444 |
|
445 |
/**
|
includes/core/class-gdpr.php
CHANGED
@@ -81,9 +81,7 @@ if ( ! class_exists( 'um\core\GDPR' ) ) {
|
|
81 |
*/
|
82 |
function email_registration_data( $submitted ) {
|
83 |
if ( ! empty( $submitted['use_gdpr_agreement'] ) ) {
|
84 |
-
$
|
85 |
-
|
86 |
-
$submitted['GDPR Applied'] = date( "d M Y H:i", $timestamp );
|
87 |
unset( $submitted['use_gdpr_agreement'] );
|
88 |
}
|
89 |
|
81 |
*/
|
82 |
function email_registration_data( $submitted ) {
|
83 |
if ( ! empty( $submitted['use_gdpr_agreement'] ) ) {
|
84 |
+
$submitted['GDPR Applied'] = date( "d M Y H:i", $submitted['use_gdpr_agreement'] );
|
|
|
|
|
85 |
unset( $submitted['use_gdpr_agreement'] );
|
86 |
}
|
87 |
|
includes/core/class-login.php
CHANGED
@@ -75,7 +75,8 @@ if ( ! class_exists( 'um\core\Login' ) ) {
|
|
75 |
}
|
76 |
|
77 |
if ( ! wp_verify_nonce( $args['_wpnonce'], 'um_login_form' ) || empty( $args['_wpnonce'] ) || ! isset( $args['_wpnonce'] ) ) {
|
78 |
-
|
|
|
79 |
}
|
80 |
|
81 |
return $args;
|
75 |
}
|
76 |
|
77 |
if ( ! wp_verify_nonce( $args['_wpnonce'], 'um_login_form' ) || empty( $args['_wpnonce'] ) || ! isset( $args['_wpnonce'] ) ) {
|
78 |
+
$url = apply_filters( 'um_login_invalid_nonce_redirect_url', add_query_arg( [ 'err' => 'invalid_nonce' ] ) );
|
79 |
+
exit( wp_redirect( $url ) );
|
80 |
}
|
81 |
|
82 |
return $args;
|
includes/core/class-member-directory-meta.php
CHANGED
@@ -308,14 +308,14 @@ if ( ! class_exists( 'um\core\Member_Directory_Meta' ) ) {
|
|
308 |
|
309 |
$values_array = array();
|
310 |
foreach ( $value as $single_val ) {
|
311 |
-
$single_val = stripslashes( $single_val );
|
312 |
|
313 |
-
$values_array[] = $wpdb->prepare( "{$join_slug}{$i}.um_value LIKE %s", '%"' .
|
314 |
-
$values_array[] = $wpdb->prepare( "{$join_slug}{$i}.um_value LIKE %s", '%' . serialize(
|
315 |
-
$values_array[] = $wpdb->prepare( "{$join_slug}{$i}.um_value = %s",
|
316 |
|
317 |
if ( is_numeric( $single_val ) ) {
|
318 |
-
$values_array[] = $wpdb->prepare( "{$join_slug}{$i}.um_value LIKE %s", '%' . serialize(
|
319 |
}
|
320 |
}
|
321 |
|
@@ -629,7 +629,7 @@ if ( ! class_exists( 'um\core\Member_Directory_Meta' ) ) {
|
|
629 |
|
630 |
$search_like_string = apply_filters( 'um_member_directory_meta_search_like_type', '%' . $search_line . '%', $search_line );
|
631 |
|
632 |
-
$this->where_clauses[] = $wpdb->prepare( "( umm_search.um_value = %s OR umm_search.um_value LIKE %s OR umm_search.um_value LIKE %s OR {$core_search}{$additional_search})", $search_line, $search_like_string, '%' . serialize(
|
633 |
|
634 |
$this->is_search = true;
|
635 |
}
|
308 |
|
309 |
$values_array = array();
|
310 |
foreach ( $value as $single_val ) {
|
311 |
+
$single_val = trim( stripslashes( $single_val ) );
|
312 |
|
313 |
+
$values_array[] = $wpdb->prepare( "{$join_slug}{$i}.um_value LIKE %s", '%"' . $single_val . '"%' );
|
314 |
+
$values_array[] = $wpdb->prepare( "{$join_slug}{$i}.um_value LIKE %s", '%' . serialize( (string) $single_val ) . '%' );
|
315 |
+
$values_array[] = $wpdb->prepare( "{$join_slug}{$i}.um_value = %s", $single_val );
|
316 |
|
317 |
if ( is_numeric( $single_val ) ) {
|
318 |
+
$values_array[] = $wpdb->prepare( "{$join_slug}{$i}.um_value LIKE %s", '%' . serialize( (int) $single_val ) . '%' );
|
319 |
}
|
320 |
}
|
321 |
|
629 |
|
630 |
$search_like_string = apply_filters( 'um_member_directory_meta_search_like_type', '%' . $search_line . '%', $search_line );
|
631 |
|
632 |
+
$this->where_clauses[] = $wpdb->prepare( "( umm_search.um_value = %s OR umm_search.um_value LIKE %s OR umm_search.um_value LIKE %s OR {$core_search}{$additional_search})", $search_line, $search_like_string, '%' . serialize( (string) $search_line ) . '%' );
|
633 |
|
634 |
$this->is_search = true;
|
635 |
}
|
includes/core/class-member-directory.php
CHANGED
@@ -1429,18 +1429,20 @@ if ( ! class_exists( 'um\core\Member_Directory' ) ) {
|
|
1429 |
if ( ! empty( $_POST['search'] ) ) {
|
1430 |
// complex using with change_meta_sql function
|
1431 |
|
|
|
|
|
1432 |
$meta_query = array(
|
1433 |
'relation' => 'OR',
|
1434 |
array(
|
1435 |
-
'value' =>
|
1436 |
'compare' => '=',
|
1437 |
),
|
1438 |
array(
|
1439 |
-
'value' =>
|
1440 |
'compare' => 'LIKE',
|
1441 |
),
|
1442 |
array(
|
1443 |
-
'value' =>
|
1444 |
'compare' => 'LIKE',
|
1445 |
),
|
1446 |
);
|
@@ -1614,22 +1616,22 @@ if ( ! class_exists( 'um\core\Member_Directory' ) ) {
|
|
1614 |
$field_query = array( 'relation' => 'OR' );
|
1615 |
|
1616 |
foreach ( $value as $single_val ) {
|
1617 |
-
$single_val = stripslashes( $single_val );
|
1618 |
|
1619 |
$arr_meta_query = array(
|
1620 |
array(
|
1621 |
'key' => $field,
|
1622 |
-
'value' =>
|
1623 |
'compare' => '=',
|
1624 |
),
|
1625 |
array(
|
1626 |
'key' => $field,
|
1627 |
-
'value' => serialize(
|
1628 |
'compare' => 'LIKE',
|
1629 |
),
|
1630 |
array(
|
1631 |
'key' => $field,
|
1632 |
-
'value' => '"' .
|
1633 |
'compare' => 'LIKE',
|
1634 |
)
|
1635 |
);
|
@@ -1638,7 +1640,7 @@ if ( ! class_exists( 'um\core\Member_Directory' ) ) {
|
|
1638 |
|
1639 |
$arr_meta_query[] = array(
|
1640 |
'key' => $field,
|
1641 |
-
'value' => serialize(
|
1642 |
'compare' => 'LIKE',
|
1643 |
);
|
1644 |
|
@@ -1883,20 +1885,22 @@ if ( ! class_exists( 'um\core\Member_Directory' ) ) {
|
|
1883 |
$field_query = array( 'relation' => 'OR' );
|
1884 |
|
1885 |
foreach ( $value as $single_val ) {
|
|
|
|
|
1886 |
$arr_meta_query = array(
|
1887 |
array(
|
1888 |
'key' => $field,
|
1889 |
-
'value' =>
|
1890 |
'compare' => '=',
|
1891 |
),
|
1892 |
array(
|
1893 |
'key' => $field,
|
1894 |
-
'value' => serialize(
|
1895 |
'compare' => 'LIKE',
|
1896 |
),
|
1897 |
array(
|
1898 |
'key' => $field,
|
1899 |
-
'value' => '"' .
|
1900 |
'compare' => 'LIKE',
|
1901 |
)
|
1902 |
);
|
@@ -1905,7 +1909,7 @@ if ( ! class_exists( 'um\core\Member_Directory' ) ) {
|
|
1905 |
|
1906 |
$arr_meta_query[] = array(
|
1907 |
'key' => $field,
|
1908 |
-
'value' => serialize(
|
1909 |
'compare' => 'LIKE',
|
1910 |
);
|
1911 |
|
@@ -2531,8 +2535,11 @@ if ( ! class_exists( 'um\core\Member_Directory' ) ) {
|
|
2531 |
|
2532 |
$this->cover_size = UM()->mobile()->isTablet() ? $sizes[1] : end( $sizes );
|
2533 |
|
|
|
|
|
2534 |
$avatar_size = UM()->options()->get( 'profile_photosize' );
|
2535 |
$this->avatar_size = str_replace( 'px', '', $avatar_size );
|
|
|
2536 |
|
2537 |
$users = array();
|
2538 |
foreach ( $user_ids as $user_id ) {
|
1429 |
if ( ! empty( $_POST['search'] ) ) {
|
1430 |
// complex using with change_meta_sql function
|
1431 |
|
1432 |
+
$search = trim( stripslashes( $_POST['search'] ) );
|
1433 |
+
|
1434 |
$meta_query = array(
|
1435 |
'relation' => 'OR',
|
1436 |
array(
|
1437 |
+
'value' => $search,
|
1438 |
'compare' => '=',
|
1439 |
),
|
1440 |
array(
|
1441 |
+
'value' => $search,
|
1442 |
'compare' => 'LIKE',
|
1443 |
),
|
1444 |
array(
|
1445 |
+
'value' => serialize( (string) $search ),
|
1446 |
'compare' => 'LIKE',
|
1447 |
),
|
1448 |
);
|
1616 |
$field_query = array( 'relation' => 'OR' );
|
1617 |
|
1618 |
foreach ( $value as $single_val ) {
|
1619 |
+
$single_val = trim( stripslashes( $single_val ) );
|
1620 |
|
1621 |
$arr_meta_query = array(
|
1622 |
array(
|
1623 |
'key' => $field,
|
1624 |
+
'value' => $single_val,
|
1625 |
'compare' => '=',
|
1626 |
),
|
1627 |
array(
|
1628 |
'key' => $field,
|
1629 |
+
'value' => serialize( (string) $single_val ),
|
1630 |
'compare' => 'LIKE',
|
1631 |
),
|
1632 |
array(
|
1633 |
'key' => $field,
|
1634 |
+
'value' => '"' . $single_val . '"',
|
1635 |
'compare' => 'LIKE',
|
1636 |
)
|
1637 |
);
|
1640 |
|
1641 |
$arr_meta_query[] = array(
|
1642 |
'key' => $field,
|
1643 |
+
'value' => serialize( (int) $single_val ),
|
1644 |
'compare' => 'LIKE',
|
1645 |
);
|
1646 |
|
1885 |
$field_query = array( 'relation' => 'OR' );
|
1886 |
|
1887 |
foreach ( $value as $single_val ) {
|
1888 |
+
$single_val = trim( $single_val );
|
1889 |
+
|
1890 |
$arr_meta_query = array(
|
1891 |
array(
|
1892 |
'key' => $field,
|
1893 |
+
'value' => $single_val,
|
1894 |
'compare' => '=',
|
1895 |
),
|
1896 |
array(
|
1897 |
'key' => $field,
|
1898 |
+
'value' => serialize( (string) $single_val ),
|
1899 |
'compare' => 'LIKE',
|
1900 |
),
|
1901 |
array(
|
1902 |
'key' => $field,
|
1903 |
+
'value' => '"' . $single_val . '"',
|
1904 |
'compare' => 'LIKE',
|
1905 |
)
|
1906 |
);
|
1909 |
|
1910 |
$arr_meta_query[] = array(
|
1911 |
'key' => $field,
|
1912 |
+
'value' => serialize( (int) $single_val ),
|
1913 |
'compare' => 'LIKE',
|
1914 |
);
|
1915 |
|
2535 |
|
2536 |
$this->cover_size = UM()->mobile()->isTablet() ? $sizes[1] : end( $sizes );
|
2537 |
|
2538 |
+
$this->cover_size = apply_filters( 'um_member_directory_cover_image_size', $this->cover_size, $directory_data );
|
2539 |
+
|
2540 |
$avatar_size = UM()->options()->get( 'profile_photosize' );
|
2541 |
$this->avatar_size = str_replace( 'px', '', $avatar_size );
|
2542 |
+
$this->avatar_size = apply_filters( 'um_member_directory_avatar_image_size', $this->avatar_size, $directory_data );
|
2543 |
|
2544 |
$users = array();
|
2545 |
foreach ( $user_ids as $user_id ) {
|
includes/core/class-password.php
CHANGED
@@ -445,7 +445,7 @@ if ( ! class_exists( 'um\core\Password' ) ) {
|
|
445 |
function um_reset_password_errors_hook( $args ) {
|
446 |
|
447 |
if ( $_POST[ UM()->honeypot ] != '' ) {
|
448 |
-
wp_die( 'Hello, spam bot!', 'ultimate-member' );
|
449 |
}
|
450 |
|
451 |
$user = "";
|
@@ -471,7 +471,7 @@ if ( ! class_exists( 'um\core\Password' ) ) {
|
|
471 |
}
|
472 |
|
473 |
$attempts = (int) get_user_meta( $user_id, 'password_rst_attempts', true );
|
474 |
-
$is_admin = user_can(
|
475 |
|
476 |
if ( UM()->options()->get( 'enable_reset_password_limit' ) ) { // if reset password limit is set
|
477 |
|
@@ -527,7 +527,7 @@ if ( ! class_exists( 'um\core\Password' ) ) {
|
|
527 |
*/
|
528 |
function um_change_password_errors_hook( $args ) {
|
529 |
if ( isset( $_POST[ UM()->honeypot ] ) && $_POST[ UM()->honeypot ] != '' ) {
|
530 |
-
wp_die( 'Hello, spam bot!', 'ultimate-member' );
|
531 |
}
|
532 |
|
533 |
if ( ! is_user_logged_in() && isset( $args ) && ! um_is_core_page( 'password-reset' ) ||
|
445 |
function um_reset_password_errors_hook( $args ) {
|
446 |
|
447 |
if ( $_POST[ UM()->honeypot ] != '' ) {
|
448 |
+
wp_die( __( 'Hello, spam bot!', 'ultimate-member' ) );
|
449 |
}
|
450 |
|
451 |
$user = "";
|
471 |
}
|
472 |
|
473 |
$attempts = (int) get_user_meta( $user_id, 'password_rst_attempts', true );
|
474 |
+
$is_admin = user_can( absint( $user_id ),'manage_options' );
|
475 |
|
476 |
if ( UM()->options()->get( 'enable_reset_password_limit' ) ) { // if reset password limit is set
|
477 |
|
527 |
*/
|
528 |
function um_change_password_errors_hook( $args ) {
|
529 |
if ( isset( $_POST[ UM()->honeypot ] ) && $_POST[ UM()->honeypot ] != '' ) {
|
530 |
+
wp_die( __( 'Hello, spam bot!', 'ultimate-member' ) );
|
531 |
}
|
532 |
|
533 |
if ( ! is_user_logged_in() && isset( $args ) && ! um_is_core_page( 'password-reset' ) ||
|
includes/core/class-profile.php
CHANGED
@@ -192,7 +192,7 @@ if ( ! class_exists( 'um\core\Profile' ) ) {
|
|
192 |
if ( isset( $tab_data['default_privacy'] ) ) {
|
193 |
$privacy = $tab_data['default_privacy'];
|
194 |
} else {
|
195 |
-
$privacy =
|
196 |
}
|
197 |
|
198 |
$privacy = apply_filters( 'um_profile_menu_tab_privacy', $privacy, $tab );
|
192 |
if ( isset( $tab_data['default_privacy'] ) ) {
|
193 |
$privacy = $tab_data['default_privacy'];
|
194 |
} else {
|
195 |
+
$privacy = (int) UM()->options()->get( 'profile_tab_' . $tab . '_privacy' );
|
196 |
}
|
197 |
|
198 |
$privacy = apply_filters( 'um_profile_menu_tab_privacy', $privacy, $tab );
|
includes/core/class-register.php
CHANGED
@@ -68,7 +68,8 @@ if ( ! class_exists( 'um\core\Register' ) ) {
|
|
68 |
}
|
69 |
|
70 |
if ( ! wp_verify_nonce( $args['_wpnonce'], 'um_register_form' ) || empty( $args['_wpnonce'] ) || ! isset( $args['_wpnonce'] ) ) {
|
71 |
-
|
|
|
72 |
}
|
73 |
|
74 |
return $args;
|
68 |
}
|
69 |
|
70 |
if ( ! wp_verify_nonce( $args['_wpnonce'], 'um_register_form' ) || empty( $args['_wpnonce'] ) || ! isset( $args['_wpnonce'] ) ) {
|
71 |
+
$url = apply_filters( 'um_register_invalid_nonce_redirect_url', add_query_arg( [ 'err' => 'invalid_nonce' ] ) );
|
72 |
+
exit( wp_redirect( $url ) );
|
73 |
}
|
74 |
|
75 |
return $args;
|
includes/core/class-user.php
CHANGED
@@ -1228,7 +1228,7 @@ if ( ! class_exists( 'um\core\User' ) ) {
|
|
1228 |
* Set last login for new registered users
|
1229 |
*/
|
1230 |
function set_last_login() {
|
1231 |
-
update_user_meta(
|
1232 |
}
|
1233 |
|
1234 |
|
@@ -2013,7 +2013,7 @@ if ( ! class_exists( 'um\core\User' ) ) {
|
|
2013 |
*
|
2014 |
*/
|
2015 |
function user_exists_by_id( $user_id ) {
|
2016 |
-
$aux = get_userdata(
|
2017 |
if ( $aux == false ) {
|
2018 |
return false;
|
2019 |
} else {
|
1228 |
* Set last login for new registered users
|
1229 |
*/
|
1230 |
function set_last_login() {
|
1231 |
+
update_user_meta( $this->id, '_um_last_login', current_time( 'timestamp' ) );
|
1232 |
}
|
1233 |
|
1234 |
|
2013 |
*
|
2014 |
*/
|
2015 |
function user_exists_by_id( $user_id ) {
|
2016 |
+
$aux = get_userdata( absint( $user_id ) );
|
2017 |
if ( $aux == false ) {
|
2018 |
return false;
|
2019 |
} else {
|
includes/core/class-validation.php
CHANGED
@@ -162,19 +162,24 @@ if ( ! class_exists( 'um\core\Validation' ) ) {
|
|
162 |
|
163 |
|
164 |
/**
|
165 |
-
* Password test
|
166 |
*
|
167 |
-
* @param $candidate
|
168 |
*
|
169 |
* @return bool
|
170 |
*/
|
171 |
function strong_pass( $candidate ) {
|
172 |
-
|
173 |
-
$
|
174 |
-
|
175 |
-
|
176 |
-
|
177 |
-
|
|
|
|
|
|
|
|
|
|
|
178 |
return true;
|
179 |
}
|
180 |
|
162 |
|
163 |
|
164 |
/**
|
165 |
+
* Password strength test
|
166 |
*
|
167 |
+
* @param string $candidate
|
168 |
*
|
169 |
* @return bool
|
170 |
*/
|
171 |
function strong_pass( $candidate ) {
|
172 |
+
// are used Unicode Regular Expressions
|
173 |
+
$regexps = [
|
174 |
+
'/[\p{Lu}]/u', // any Letter Uppercase symbol
|
175 |
+
'/[\p{Ll}]/u', // any Letter Lowercase symbol
|
176 |
+
'/[\p{N}]/u', // any Number symbol
|
177 |
+
];
|
178 |
+
foreach ( $regexps as $regexp ) {
|
179 |
+
if ( preg_match_all( $regexp, $candidate, $o ) < 1 ) {
|
180 |
+
return false;
|
181 |
+
}
|
182 |
+
}
|
183 |
return true;
|
184 |
}
|
185 |
|
includes/core/um-actions-account.php
CHANGED
@@ -526,9 +526,11 @@ function um_after_account_privacy( $args ) {
|
|
526 |
ARRAY_A );
|
527 |
|
528 |
if ( ! empty( $completed ) ) {
|
529 |
-
|
|
|
|
|
530 |
echo '<p>' . esc_html__( 'You could download your previous data:', 'ultimate-member' ) . '</p>';
|
531 |
-
echo '<a href="' . get_post_meta( $completed['ID'], '
|
532 |
echo '<p>' . esc_html__( 'You could send a new request for an export of personal your data.', 'ultimate-member' ) . '</p>';
|
533 |
|
534 |
}
|
526 |
ARRAY_A );
|
527 |
|
528 |
if ( ! empty( $completed ) ) {
|
529 |
+
|
530 |
+
$exports_url = wp_privacy_exports_url();
|
531 |
+
|
532 |
echo '<p>' . esc_html__( 'You could download your previous data:', 'ultimate-member' ) . '</p>';
|
533 |
+
echo '<a href="'.esc_attr( $exports_url . get_post_meta( $completed['ID'], '_export_file_name', true ) ) . '">' . esc_html__( 'Download Personal Data', 'ultimate-member' ) . '</a>';
|
534 |
echo '<p>' . esc_html__( 'You could send a new request for an export of personal your data.', 'ultimate-member' ) . '</p>';
|
535 |
|
536 |
}
|
includes/core/um-actions-form.php
CHANGED
@@ -837,4 +837,20 @@ function um_submit_form_errors_hook_( $args ) {
|
|
837 |
} // end if ( isset in args array )
|
838 |
}
|
839 |
}
|
840 |
-
add_action( 'um_submit_form_errors_hook_', 'um_submit_form_errors_hook_', 10 );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
837 |
} // end if ( isset in args array )
|
838 |
}
|
839 |
}
|
840 |
+
add_action( 'um_submit_form_errors_hook_', 'um_submit_form_errors_hook_', 10 );
|
841 |
+
|
842 |
+
|
843 |
+
/**
|
844 |
+
* @param string $url
|
845 |
+
*
|
846 |
+
* @return string
|
847 |
+
*/
|
848 |
+
function um_invalid_nonce_redirect_url( $url ) {
|
849 |
+
$url = add_query_arg( [
|
850 |
+
'um-hash' => substr( md5( rand() ), 0, 6 ),
|
851 |
+
], remove_query_arg( 'um-hash', $url ) );
|
852 |
+
|
853 |
+
return $url;
|
854 |
+
}
|
855 |
+
add_filter( 'um_login_invalid_nonce_redirect_url', 'um_invalid_nonce_redirect_url', 10, 1 );
|
856 |
+
add_filter( 'um_register_invalid_nonce_redirect_url', 'um_invalid_nonce_redirect_url', 10, 1 );
|
includes/core/um-actions-global.php
CHANGED
@@ -24,8 +24,6 @@ function um_add_security_checks( $args ) {
|
|
24 |
return;
|
25 |
} ?>
|
26 |
|
27 |
-
<input type="hidden" name="timestamp" class="um_timestamp" value="<?php echo esc_attr( current_time( 'timestamp' ) ) ?>" />
|
28 |
-
|
29 |
<p class="<?php echo esc_attr( UM()->honeypot ); ?>_name">
|
30 |
<label for="<?php echo esc_attr( UM()->honeypot ) . '_' . $args['form_id']; ?>"><?php _e( 'Only fill in if you are not human' ); ?></label>
|
31 |
<input type="hidden" name="<?php echo esc_attr( UM()->honeypot ); ?>" id="<?php echo esc_attr( UM()->honeypot ) . '_' . $args['form_id']; ?>" class="input" value="" size="25" autocomplete="off" />
|
24 |
return;
|
25 |
} ?>
|
26 |
|
|
|
|
|
27 |
<p class="<?php echo esc_attr( UM()->honeypot ); ?>_name">
|
28 |
<label for="<?php echo esc_attr( UM()->honeypot ) . '_' . $args['form_id']; ?>"><?php _e( 'Only fill in if you are not human' ); ?></label>
|
29 |
<input type="hidden" name="<?php echo esc_attr( UM()->honeypot ); ?>" id="<?php echo esc_attr( UM()->honeypot ) . '_' . $args['form_id']; ?>" class="input" value="" size="25" autocomplete="off" />
|
includes/core/um-actions-misc.php
CHANGED
@@ -186,6 +186,10 @@ function um_add_update_notice( $args ) {
|
|
186 |
$err = __( 'Your membership request has been rejected.', 'ultimate-member' );
|
187 |
break;
|
188 |
|
|
|
|
|
|
|
|
|
189 |
}
|
190 |
}
|
191 |
|
186 |
$err = __( 'Your membership request has been rejected.', 'ultimate-member' );
|
187 |
break;
|
188 |
|
189 |
+
case 'invalid_nonce':
|
190 |
+
$err = __( 'An error has been encountered. Probably page was cached. Please try again.', 'ultimate-member' );
|
191 |
+
break;
|
192 |
+
|
193 |
}
|
194 |
}
|
195 |
|
includes/core/um-actions-profile.php
CHANGED
@@ -733,9 +733,9 @@ function um_profile_dynamic_meta_desc() {
|
|
733 |
<meta property="og:title" content="<?php echo esc_attr( $title ); ?>"/>
|
734 |
<meta property="og:description" content="<?php echo esc_attr( $description ); ?>"/>
|
735 |
<meta property="og:image" content="<?php echo esc_url( $image ); ?>"/>
|
736 |
-
<meta property="og:image:alt" content="<?php
|
737 |
-
<meta property="og:image:height" content="<?php echo
|
738 |
-
<meta property="og:image:width" content="<?php echo
|
739 |
<meta property="og:url" content="<?php echo esc_url( $url ); ?>"/>
|
740 |
|
741 |
<meta name="twitter:card" content="summary"/>
|
@@ -743,7 +743,7 @@ function um_profile_dynamic_meta_desc() {
|
|
743 |
<meta name="twitter:title" content="<?php echo esc_attr( $title ); ?>"/>
|
744 |
<meta name="twitter:description" content="<?php echo esc_attr( $description ); ?>"/>
|
745 |
<meta name="twitter:image" content="<?php echo esc_url( $image ); ?>"/>
|
746 |
-
<meta name="twitter:image:alt" content="<?php
|
747 |
<meta name="twitter:url" content="<?php echo esc_url( $url ); ?>"/>
|
748 |
|
749 |
<script type="application/ld+json"><?php echo json_encode( $person ); ?></script>
|
733 |
<meta property="og:title" content="<?php echo esc_attr( $title ); ?>"/>
|
734 |
<meta property="og:description" content="<?php echo esc_attr( $description ); ?>"/>
|
735 |
<meta property="og:image" content="<?php echo esc_url( $image ); ?>"/>
|
736 |
+
<meta property="og:image:alt" content="<?php esc_attr_e( 'Profile photo', 'ultimate-member' ); ?>"/>
|
737 |
+
<meta property="og:image:height" content="<?php echo (int) $size; ?>"/>
|
738 |
+
<meta property="og:image:width" content="<?php echo (int) $size; ?>"/>
|
739 |
<meta property="og:url" content="<?php echo esc_url( $url ); ?>"/>
|
740 |
|
741 |
<meta name="twitter:card" content="summary"/>
|
743 |
<meta name="twitter:title" content="<?php echo esc_attr( $title ); ?>"/>
|
744 |
<meta name="twitter:description" content="<?php echo esc_attr( $description ); ?>"/>
|
745 |
<meta name="twitter:image" content="<?php echo esc_url( $image ); ?>"/>
|
746 |
+
<meta name="twitter:image:alt" content="<?php esc_attr_e( 'Profile photo', 'ultimate-member' ); ?>"/>
|
747 |
<meta name="twitter:url" content="<?php echo esc_url( $url ); ?>"/>
|
748 |
|
749 |
<script type="application/ld+json"><?php echo json_encode( $person ); ?></script>
|
includes/core/um-actions-register.php
CHANGED
@@ -386,6 +386,12 @@ function um_submit_form_register( $args ) {
|
|
386 |
}
|
387 |
|
388 |
$args['submitted'] = array_merge( $args['submitted'], $credentials );
|
|
|
|
|
|
|
|
|
|
|
|
|
389 |
$args = array_merge( $args, $credentials );
|
390 |
|
391 |
//get user role from global or form's settings
|
386 |
}
|
387 |
|
388 |
$args['submitted'] = array_merge( $args['submitted'], $credentials );
|
389 |
+
|
390 |
+
// set timestamp
|
391 |
+
$timestamp = current_time( 'timestamp' );
|
392 |
+
$args['submitted']['timestamp'] = $timestamp;
|
393 |
+
$args['timestamp'] = $timestamp;
|
394 |
+
|
395 |
$args = array_merge( $args, $credentials );
|
396 |
|
397 |
//get user role from global or form's settings
|
includes/core/um-filters-fields.php
CHANGED
@@ -763,7 +763,9 @@ function um_profile_field_filter_xss_validation( $value, $data, $type = '' ) {
|
|
763 |
}
|
764 |
|
765 |
if ( ! empty( $arr ) && empty( $data['custom_dropdown_options_source'] ) ) {
|
766 |
-
$
|
|
|
|
|
767 |
}
|
768 |
|
769 |
if ( $option_pairs ) {
|
763 |
}
|
764 |
|
765 |
if ( ! empty( $arr ) && empty( $data['custom_dropdown_options_source'] ) ) {
|
766 |
+
$arr = wp_unslash( $arr );
|
767 |
+
$arr = wp_slash( array_map( 'trim', $arr ) );
|
768 |
+
$value = array_intersect( $value, $arr );
|
769 |
}
|
770 |
|
771 |
if ( $option_pairs ) {
|
readme.txt
CHANGED
@@ -6,8 +6,8 @@ Donate link:
|
|
6 |
Tags: community, member, membership, user-profile, user-registration
|
7 |
Requires PHP: 5.6
|
8 |
Requires at least: 5.0
|
9 |
-
Tested up to: 5.
|
10 |
-
Stable tag: 2.1.
|
11 |
License: GNU Version 2 or Any Later Version
|
12 |
License URI: http://www.gnu.org/licenses/gpl-3.0.txt
|
13 |
|
@@ -155,6 +155,33 @@ The plugin works with popular caching plugins by automatically excluding Ultimat
|
|
155 |
* To learn more about version 2.1 please see this [docs](https://docs.ultimatemember.com/article/1512-upgrade-2-1-0)
|
156 |
* UM2.1+ is a significant update to the Member Directories' code base from 2.0.x. Please make sure you take a full-site backup with restore point before updating the plugin
|
157 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
158 |
= 2.1.12: October 29, 2020 =
|
159 |
|
160 |
* Enhancements:
|
6 |
Tags: community, member, membership, user-profile, user-registration
|
7 |
Requires PHP: 5.6
|
8 |
Requires at least: 5.0
|
9 |
+
Tested up to: 5.6
|
10 |
+
Stable tag: 2.1.13
|
11 |
License: GNU Version 2 or Any Later Version
|
12 |
License URI: http://www.gnu.org/licenses/gpl-3.0.txt
|
13 |
|
155 |
* To learn more about version 2.1 please see this [docs](https://docs.ultimatemember.com/article/1512-upgrade-2-1-0)
|
156 |
* UM2.1+ is a significant update to the Member Directories' code base from 2.0.x. Please make sure you take a full-site backup with restore point before updating the plugin
|
157 |
|
158 |
+
= 2.1.13: December 8, 2020 =
|
159 |
+
|
160 |
+
* Enhancements:
|
161 |
+
|
162 |
+
- Added: `um_member_directory_cover_image_size` hook with ability to change the cover photo size on the member directory
|
163 |
+
- Added: `um_member_directory_avatar_image_size` hook with ability to change the profile photo size on the member directory
|
164 |
+
- Added: `um_member_directory_get_members_allow` JS hook for 3rd-party integration with the member directory. You could use a time throttle until some data is loaded
|
165 |
+
- Added: Notice about the fields' conditional logic rules + small CSS enhancements
|
166 |
+
- Added: Invalid nonce validation on Login and Registration pages instead of wp_die()
|
167 |
+
- Added: Privacy settings for the Divider field type (#688)
|
168 |
+
- Added: Ability for the integration with Gutenberg Block restriction settings (extends the block restriction settings via 3rd-party plugins)
|
169 |
+
- Added: Strings translations
|
170 |
+
|
171 |
+
* Bugfixes:
|
172 |
+
|
173 |
+
- Fixed: Upgrade process on websites where a hosting locks the frequent AJAX requests (added default JS throttle between requests)
|
174 |
+
- Fixed: Getting page content of the GDPR privacy policies
|
175 |
+
- Fixed: Password strength validation for Unicode symbols
|
176 |
+
- Fixed: Issue with apostrophe options in the multiselect/checkbox fields (#689)
|
177 |
+
- Fixed: Translation for Password field's label
|
178 |
+
- Fixed: Download Personal Data URL
|
179 |
+
- Fixed: Vulnerability with timestamp field on UM Forms (the hidden field with name='timestamp' is deprecated)
|
180 |
+
|
181 |
+
* Tweaks:
|
182 |
+
|
183 |
+
- There are changed PHP’s intval(), strval(), floatval(), and boolval() typecasting functions to (int), (string), (float) and (bool) regarding [this doc](https://make.wordpress.org/core/2020/11/20/miscellaneous-developer-focused-changes-in-wordpress-5-6/).
|
184 |
+
|
185 |
= 2.1.12: October 29, 2020 =
|
186 |
|
187 |
* Enhancements:
|
templates/gdpr-register.php
CHANGED
@@ -6,8 +6,9 @@
|
|
6 |
<div class="um-gdpr-content" style="display:none;">
|
7 |
<?php if ( ! empty( $args['use_gdpr_content_id'] ) ) {
|
8 |
$um_content_query = get_post( $args['use_gdpr_content_id'] );
|
9 |
-
if (
|
10 |
-
|
|
|
11 |
}
|
12 |
} ?>
|
13 |
</div>
|
6 |
<div class="um-gdpr-content" style="display:none;">
|
7 |
<?php if ( ! empty( $args['use_gdpr_content_id'] ) ) {
|
8 |
$um_content_query = get_post( $args['use_gdpr_content_id'] );
|
9 |
+
if ( ! empty( $um_content_query ) && ! is_wp_error( $um_content_query ) ) {
|
10 |
+
$content = apply_filters( 'um_gdpr_policies_page_content', $um_content_query->post_content, $args );
|
11 |
+
echo apply_filters( 'the_content', $content, $um_content_query->ID );
|
12 |
}
|
13 |
} ?>
|
14 |
</div>
|
templates/message.php
CHANGED
@@ -3,7 +3,9 @@
|
|
3 |
<div class="um <?php echo esc_attr( $this->get_class( $mode ) ); ?> um-<?php echo esc_attr( $form_id ); ?>">
|
4 |
|
5 |
<div class="um-postmessage">
|
6 |
-
<?php
|
|
|
|
|
7 |
</div>
|
8 |
|
9 |
</div>
|
3 |
<div class="um <?php echo esc_attr( $this->get_class( $mode ) ); ?> um-<?php echo esc_attr( $form_id ); ?>">
|
4 |
|
5 |
<div class="um-postmessage">
|
6 |
+
<?php
|
7 |
+
// translators: %s: The message after registration process based on a role data and user status after registration
|
8 |
+
printf( __( '%s', 'ultimate-member' ), $this->custom_message ); ?>
|
9 |
</div>
|
10 |
|
11 |
</div>
|
templates/register.php
CHANGED
@@ -135,7 +135,7 @@ if ( ! is_user_logged_in() ) {
|
|
135 |
* }
|
136 |
* ?>
|
137 |
*/
|
138 |
-
do_action(
|
139 |
|
140 |
</form>
|
141 |
|
135 |
* }
|
136 |
* ?>
|
137 |
*/
|
138 |
+
do_action( 'um_after_form', $args ); ?>
|
139 |
|
140 |
</form>
|
141 |
|
templates/restricted-taxonomy.php
CHANGED
@@ -2,52 +2,53 @@
|
|
2 |
|
3 |
get_header(); ?>
|
4 |
|
5 |
-
|
6 |
-
|
7 |
-
|
8 |
-
|
9 |
-
|
10 |
-
|
11 |
-
|
12 |
-
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
}
|
24 |
-
} elseif ( is_category() ) {
|
25 |
-
$um_category = get_category( get_query_var( 'cat' ) );
|
26 |
-
|
27 |
-
if ( ! empty( $um_category->term_id ) ) {
|
28 |
-
$restriction = get_term_meta( $um_category->term_id, 'um_content_restriction', true );
|
29 |
-
}
|
30 |
-
} elseif ( is_tax() ) {
|
31 |
-
$tax_name = get_query_var( 'taxonomy' );
|
32 |
-
$term_name = get_query_var( 'term' );
|
33 |
-
$term = get_term_by( 'slug', $term_name, $tax_name );
|
34 |
-
if ( ! empty( $term->term_id ) ) {
|
35 |
-
$restriction = get_term_meta( $term->term_id, 'um_content_restriction', true );
|
36 |
-
}
|
37 |
}
|
|
|
|
|
38 |
|
39 |
-
if ( !
|
40 |
-
$
|
41 |
-
$message = stripslashes( $restricted_global_message );
|
42 |
-
} elseif ( '1' == $restriction['_um_restrict_by_custom_message'] ) {
|
43 |
-
$message = ! empty( $restriction['_um_restrict_custom_message'] ) ? stripslashes( $restriction['_um_restrict_custom_message'] ) : '';
|
44 |
}
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
52 |
|
53 |
<?php get_footer();
|
2 |
|
3 |
get_header(); ?>
|
4 |
|
5 |
+
<div class="wrap">
|
6 |
+
|
7 |
+
<?php if ( have_posts() ) : ?>
|
8 |
+
<header class="page-header">
|
9 |
+
<?php
|
10 |
+
the_archive_title( '<h1 class="page-title">', '</h1>' );
|
11 |
+
the_archive_description( '<div class="taxonomy-description">', '</div>' );
|
12 |
+
?>
|
13 |
+
</header><!-- .page-header -->
|
14 |
+
<?php endif; ?>
|
15 |
+
|
16 |
+
<div id="primary" class="content-area">
|
17 |
+
<main id="main" class="site-main" role="main">
|
18 |
+
|
19 |
+
<?php if ( is_tag() ) {
|
20 |
+
$tag_id = get_query_var( 'tag_id' );
|
21 |
+
if ( ! empty( $tag_id ) ) {
|
22 |
+
$restriction = get_term_meta( $tag_id, 'um_content_restriction', true );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
23 |
}
|
24 |
+
} elseif ( is_category() ) {
|
25 |
+
$um_category = get_category( get_query_var( 'cat' ) );
|
26 |
|
27 |
+
if ( ! empty( $um_category->term_id ) ) {
|
28 |
+
$restriction = get_term_meta( $um_category->term_id, 'um_content_restriction', true );
|
|
|
|
|
|
|
29 |
}
|
30 |
+
} elseif ( is_tax() ) {
|
31 |
+
$tax_name = get_query_var( 'taxonomy' );
|
32 |
+
$term_name = get_query_var( 'term' );
|
33 |
+
$term = get_term_by( 'slug', $term_name, $tax_name );
|
34 |
+
if ( ! empty( $term->term_id ) ) {
|
35 |
+
$restriction = get_term_meta( $term->term_id, 'um_content_restriction', true );
|
36 |
+
}
|
37 |
+
}
|
38 |
+
|
39 |
+
if ( ! isset( $restriction['_um_restrict_by_custom_message'] ) || '0' == $restriction['_um_restrict_by_custom_message'] ) {
|
40 |
+
$restricted_global_message = UM()->options()->get( 'restricted_access_message' );
|
41 |
+
$message = stripslashes( $restricted_global_message );
|
42 |
+
} elseif ( '1' == $restriction['_um_restrict_by_custom_message'] ) {
|
43 |
+
$message = ! empty( $restriction['_um_restrict_custom_message'] ) ? stripslashes( $restriction['_um_restrict_custom_message'] ) : '';
|
44 |
+
}
|
45 |
+
|
46 |
+
// translators: %s: Restricted taxonomy message.
|
47 |
+
printf( __( '%s', 'ultimate-member' ), $message ); ?>
|
48 |
+
|
49 |
+
</main><!-- #main -->
|
50 |
+
</div><!-- #primary -->
|
51 |
+
<?php get_sidebar(); ?>
|
52 |
+
</div><!-- .wrap -->
|
53 |
|
54 |
<?php get_footer();
|
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.1.
|
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.1.13
|
7 |
Author: Ultimate Member
|
8 |
Author URI: http://ultimatemember.com/
|
9 |
Text Domain: ultimate-member
|