File: /var/www/html/wp-content/plugins/memberpress/js/mphelpers.js
jQuery(document).ready(function($) {
if(typeof ajaxurl == 'undefined') { return; } //Prevent errors when ajaxurl is not defined
$('.mepr_suggest_user').suggest(
ajaxurl+'?action=mepr_user_search', {
delay: 500,
minchars: 2
}
);
$('.mepr_suggest_subscr_num').suggest(
ajaxurl+'?action=mepr_subscr_num_search', {
delay: 500,
minchars: 5
}
);
var mepr_set_todays_date = function(button_selector) {
$.post(ajaxurl, { action: 'mepr_todays_date', datetime: true }, function(res) {
var trimmed_data = res.replace(/^\s+|\s+$/g, ''); //Trim whitespace
$(button_selector).parent().find('input.mepr-date-picker').val(trimmed_data); // This will work for created_at and refunded_at.
});
};
// no need to do this ... PHP handles this on the initial load
//mepr_set_todays_date('a.mepr-today-button');
// Get todays date
$('a.mepr-today-button').on('click', function(e) {
e.preventDefault();
mepr_set_todays_date(this);
});
var mepr_set_default_expiration = function(expires_at_obj, set_only_empty) {
// don't continue if there aren't any results for the selector
if(expires_at_obj.length <= 0) { return; }
// If we are only setting expirations on empty expires_at then bail if not empty
var expires_at = expires_at_obj.find('input.mepr-expires-at').val();
if(set_only_empty && expires_at && expires_at.length > 0) { return; }
var membership_field_id = expires_at_obj.data('membership_field_id');
var membership_id = $('#'+membership_field_id).val();
var created_at_field_id = expires_at_obj.data('created_at_field_id');
var created_at = $('#'+created_at_field_id+' input.mepr-created-at').val();
var data = {
action: 'mepr_default_expiration',
product_id: membership_id,
created_at: created_at
};
$.post(ajaxurl, data, function(res) {
var trimmed_data = res.replace(/^\s+|\s+$/g, ''); //Trim whitespace
expires_at_obj.find('input.mepr-expires-at').val(trimmed_data);
});
};
//This is causing problems
//mepr_set_default_expiration($('a.mepr-default-expiration-button').parent(), true);
// Get default expiration date
$('a.mepr-default-expiration-button').on('click', function(e) {
e.preventDefault();
mepr_set_default_expiration($(this).parent(), false);
});
// Get default expiration date
$('select.mepr-membership-dropdown').on('change', function(e) {
e.preventDefault();
var expires_at_field_id = $(this).data('expires_at_field_id');
if(expires_at_field_id != undefined && expires_at_field_id && expires_at_field_id.length>0) {
mepr_set_default_expiration($('#' + expires_at_field_id), false);
}
});
if ($('select.mepr-membership-dropdown').val() > 0) {
var expires_at_field_id = $('select.mepr-membership-dropdown').data('expires_at_field_id');
if (expires_at_field_id != undefined && expires_at_field_id && $('#' + expires_at_field_id).find('input.mepr-expires-at').length) {
var expiry_field = $('#' + expires_at_field_id).find('input.mepr-expires-at');
var initial_raw_value = expiry_field.data('initial_raw_value');
if (initial_raw_value !== '0000-00-00 00:00:00' && expiry_field.val().length === 0) {
$('select.mepr-membership-dropdown').trigger('change');
}
}
}
// Get lifetime expiration
$('a.mepr-lifetime-expiration-button').on('click', function(e) {
e.preventDefault();
$(this).parent().find('input.mepr-expires-at').val('');
});
});