Version Description
Download this release
Release Info
| Developer | nsinelnikov |
| 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
|
