plugin updates
This commit is contained in:
@@ -1,783 +0,0 @@
|
||||
/* eslint-env jquery */
|
||||
(function ($) {
|
||||
/**
|
||||
* AIOSRS Schema
|
||||
*
|
||||
* @class AIOSRSSchema
|
||||
* @since 1.0
|
||||
*/
|
||||
const AIOSRSSchema = {
|
||||
/**
|
||||
* Initializes a AIOSRS Schema.
|
||||
*
|
||||
* @since 1.0
|
||||
* @function init
|
||||
*/
|
||||
container: '',
|
||||
|
||||
init() {
|
||||
const self = this;
|
||||
|
||||
self.container = $(
|
||||
'#aiosrs-schema-settings, #aiosrs-pro-custom-fields'
|
||||
);
|
||||
|
||||
// Init backgrounds.
|
||||
$(document).ready(function () {
|
||||
$('.select2-class').select2();
|
||||
const selectOption = ['Site Meta', 'Post Meta (Basic Fields)'];
|
||||
const customOptionGroup = $('#bsf-aiosrs-schema-type').val();
|
||||
if ('custom-markup' === customOptionGroup) {
|
||||
for (let i = 0; i < selectOption.length; i++) {
|
||||
$(
|
||||
'#bsf-aiosrs-custom-markup-custom-markup optgroup[label="' +
|
||||
selectOption[i] +
|
||||
'"]'
|
||||
).remove();
|
||||
}
|
||||
}
|
||||
const customMarkupSchemId = $(
|
||||
'#custom-schema-schema-field'
|
||||
).val();
|
||||
if (customMarkupSchemId) {
|
||||
for (let i = 0; i < selectOption.length; i++) {
|
||||
$(
|
||||
'#custom-markup-' +
|
||||
customMarkupSchemId +
|
||||
'-custom-markup-connected optgroup[label="' +
|
||||
selectOption[i] +
|
||||
'"]'
|
||||
).remove();
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
self.container.on(
|
||||
'change',
|
||||
'select.bsf-aiosrs-schema-meta-field',
|
||||
function () {
|
||||
const selfFun = $(this),
|
||||
parent = selfFun.parent(),
|
||||
value = selfFun.val();
|
||||
|
||||
const textwrapperCustom = parent.find(
|
||||
'.bsf-aiosrs-schema-custom-text-wrap'
|
||||
);
|
||||
if ('custom-text' === value) {
|
||||
textwrapperCustom.removeClass('bsf-hidden-field');
|
||||
} else if (
|
||||
!textwrapperCustom.hasClass('bsf-hidden-field')
|
||||
) {
|
||||
textwrapperCustom.addClass('bsf-hidden-field');
|
||||
}
|
||||
|
||||
const textWrapperFixed = parent.find(
|
||||
'.bsf-aiosrs-schema-fixed-text-wrap'
|
||||
);
|
||||
if ('fixed-text' === value) {
|
||||
textWrapperFixed.removeClass('bsf-hidden-field');
|
||||
} else if (!textWrapperFixed.hasClass('bsf-hidden-field')) {
|
||||
textWrapperFixed.addClass('bsf-hidden-field');
|
||||
}
|
||||
|
||||
const specificMetaWrapper = parent.find(
|
||||
'.bsf-aiosrs-schema-specific-field-wrap'
|
||||
);
|
||||
if ('specific-field' === value) {
|
||||
specificMetaWrapper.removeClass('bsf-hidden-field');
|
||||
} else if (
|
||||
!specificMetaWrapper.hasClass('bsf-hidden-field')
|
||||
) {
|
||||
specificMetaWrapper.addClass('bsf-hidden-field');
|
||||
}
|
||||
}
|
||||
);
|
||||
|
||||
self.container.on(
|
||||
'change',
|
||||
'.bsf-aiosrs-schema-row-rating-type select.bsf-aiosrs-schema-meta-field',
|
||||
function (e) {
|
||||
e.preventDefault();
|
||||
|
||||
$(this)
|
||||
.closest('.bsf-aiosrs-schema-table')
|
||||
.find('.bsf-aiosrs-schema-row')
|
||||
.css('display', '');
|
||||
if ('accept-user-rating' === $(this).val()) {
|
||||
const reviewCountWrap = $(this)
|
||||
.closest('.bsf-aiosrs-schema-row')
|
||||
.next('.bsf-aiosrs-schema-row'),
|
||||
name = reviewCountWrap
|
||||
.find('.bsf-aiosrs-schema-meta-field')
|
||||
.attr('name');
|
||||
|
||||
const selectedSchemaType = jQuery(
|
||||
'.bsf-aiosrs-review-schema-type'
|
||||
).val();
|
||||
if (selectedSchemaType) {
|
||||
const prepareName =
|
||||
'bsf-aiosrs-review[' +
|
||||
selectedSchemaType +
|
||||
'-review-count]';
|
||||
|
||||
if (name.indexOf(prepareName) >= 0) {
|
||||
reviewCountWrap.hide();
|
||||
}
|
||||
}
|
||||
|
||||
if (name.indexOf('[review-count]') >= 0) {
|
||||
reviewCountWrap.hide();
|
||||
}
|
||||
}
|
||||
}
|
||||
);
|
||||
self.container
|
||||
.find('select.bsf-aiosrs-schema-meta-field')
|
||||
.trigger('change');
|
||||
|
||||
$('select.bsf-aiosrs-schema-select2').each(function (index, el) {
|
||||
self.init_target_rule_select2(el);
|
||||
});
|
||||
|
||||
self.container.on(
|
||||
'click',
|
||||
'.bsf-repeater-add-new-btn',
|
||||
function (event) {
|
||||
event.preventDefault();
|
||||
self.add_new_repeater($(this));
|
||||
self.prepare_event_schmea_fields();
|
||||
}
|
||||
);
|
||||
|
||||
self.container.on('click', '.bsf-repeater-close', function (event) {
|
||||
event.preventDefault();
|
||||
self.add_remove_repeater($(this));
|
||||
});
|
||||
|
||||
self.schemaTypeDependency();
|
||||
self.bindTooltip();
|
||||
if (!$('body').hasClass('post-type-aiosrs-schema')) {
|
||||
self.field_validation();
|
||||
}
|
||||
},
|
||||
field_validation() {
|
||||
$(
|
||||
'.wpsp-custom-field-connect, .wpsp-field-close, .bsf-aiosrs-schema-meta-field, image-field-wrap, .aiosrs-pro-custom-field, .wpsp-custom-field-connect'
|
||||
).on('click focus change', function () {
|
||||
$('.bsf-aiosrs-schema-type-wrap').each(function (
|
||||
index,
|
||||
repeater
|
||||
) {
|
||||
let fieldValue = $(repeater)
|
||||
.find('.wpsp-default-hidden-value')
|
||||
.val();
|
||||
const requiredPath = $(repeater)
|
||||
.parents('.bsf-aiosrs-schema-row-content')
|
||||
.prev();
|
||||
if (undefined !== fieldValue) {
|
||||
fieldValue = fieldValue.trim();
|
||||
if (fieldValue) {
|
||||
if ($('body').hasClass('block-editor-page')) {
|
||||
if (
|
||||
!$(repeater).find(
|
||||
'.wpsp-required-error-field'
|
||||
).length
|
||||
) {
|
||||
let metaField;
|
||||
switch (fieldValue) {
|
||||
case 'post_title':
|
||||
metaField = $(
|
||||
'.editor-post-title__input'
|
||||
).val();
|
||||
break;
|
||||
case 'post_content':
|
||||
metaField =
|
||||
$(
|
||||
'p.block-editor-rich-text__editable'
|
||||
).text().length > 1
|
||||
? $(
|
||||
'p.block-editor-rich-text__editable'
|
||||
).text()
|
||||
: '';
|
||||
break;
|
||||
case 'post_excerpt':
|
||||
metaField = $(
|
||||
'.components-textarea-control__input'
|
||||
).val();
|
||||
break;
|
||||
case 'featured_img':
|
||||
if (
|
||||
'Set featured image' ===
|
||||
$(
|
||||
'.editor-post-featured-image__toggle'
|
||||
).text()
|
||||
) {
|
||||
metaField = '';
|
||||
} else {
|
||||
metaField = $(
|
||||
'.components-responsive-wrapper__content'
|
||||
).attr('src');
|
||||
}
|
||||
break;
|
||||
default:
|
||||
requiredPath.removeClass(
|
||||
'wpsp-required-error-field'
|
||||
);
|
||||
requiredPath
|
||||
.find('label')
|
||||
.removeClass(
|
||||
'wpsp-required-error-field'
|
||||
);
|
||||
}
|
||||
|
||||
if (undefined !== metaField) {
|
||||
if ('' !== metaField) {
|
||||
requiredPath.removeClass(
|
||||
'wpsp-required-error-field'
|
||||
);
|
||||
requiredPath
|
||||
.find('label')
|
||||
.removeClass(
|
||||
'wpsp-required-error-field'
|
||||
);
|
||||
} else if (
|
||||
requiredPath.find('.required')
|
||||
.length
|
||||
) {
|
||||
requiredPath
|
||||
.find('label')
|
||||
.addClass(
|
||||
'wpsp-required-error-field'
|
||||
);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
requiredPath.removeClass(
|
||||
'wpsp-required-error-field'
|
||||
);
|
||||
requiredPath
|
||||
.find('label')
|
||||
.removeClass(
|
||||
'wpsp-required-error-field'
|
||||
);
|
||||
}
|
||||
} else {
|
||||
requiredPath.removeClass(
|
||||
'wpsp-required-error-field'
|
||||
);
|
||||
requiredPath
|
||||
.find('label')
|
||||
.removeClass('wpsp-required-error-field');
|
||||
}
|
||||
} else if (requiredPath.find('.required').length) {
|
||||
requiredPath
|
||||
.find('label')
|
||||
.addClass('wpsp-required-error-field');
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
},
|
||||
hide_review_count() {
|
||||
$(this)
|
||||
.closest('.bsf-aiosrs-schema-table')
|
||||
.find('.bsf-aiosrs-schema-row')
|
||||
.css('display', '');
|
||||
if ('accept-user-rating' === $(this).val()) {
|
||||
const reviewCountWrap = $(this)
|
||||
.closest('.bsf-aiosrs-schema-row')
|
||||
.next('.bsf-aiosrs-schema-row'),
|
||||
name = reviewCountWrap
|
||||
.find('.bsf-aiosrs-schema-meta-field')
|
||||
.attr('name');
|
||||
|
||||
const selectedSchemaType = jQuery(
|
||||
'.bsf-aiosrs-review-schema-type'
|
||||
).val();
|
||||
if (selectedSchemaType) {
|
||||
const prepareName =
|
||||
'bsf-aiosrs-review[' +
|
||||
selectedSchemaType +
|
||||
'-review-count]';
|
||||
|
||||
if (name.indexOf(prepareName) >= 0) {
|
||||
reviewCountWrap.hide();
|
||||
}
|
||||
}
|
||||
|
||||
if (name.indexOf('[review-count]') >= 0) {
|
||||
reviewCountWrap.hide();
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
add_new_repeater(selector) {
|
||||
const self = this,
|
||||
parentWrap = selector.closest('.bsf-aiosrs-schema-type-wrap'),
|
||||
totalCount = parentWrap.find('.aiosrs-pro-repeater-table-wrap')
|
||||
.length,
|
||||
template = parentWrap
|
||||
.find('.aiosrs-pro-repeater-table-wrap')
|
||||
.first()
|
||||
.clone();
|
||||
|
||||
template
|
||||
.find(
|
||||
'.bsf-aiosrs-schema-custom-text-wrap, .bsf-aiosrs-schema-specific-field-wrap'
|
||||
)
|
||||
.each(function () {
|
||||
if (!$(this).hasClass('bsf-hidden-field')) {
|
||||
$(this).addClass('bsf-hidden-field');
|
||||
}
|
||||
});
|
||||
|
||||
template
|
||||
.find('select.bsf-aiosrs-schema-meta-field')
|
||||
.each(function () {
|
||||
$(this).val('none');
|
||||
|
||||
const fieldName =
|
||||
'undefined' !== typeof $(this).attr('name')
|
||||
? $(this)
|
||||
.attr('name')
|
||||
.replace('[0]', '[' + totalCount + ']')
|
||||
: '',
|
||||
fieldClass =
|
||||
'undefined' !== typeof $(this).attr('class')
|
||||
? $(this)
|
||||
.attr('class')
|
||||
.replace('-0-', '-' + totalCount + '-')
|
||||
: '',
|
||||
fieldId =
|
||||
'undefined' !== typeof $(this).attr('id')
|
||||
? $(this)
|
||||
.attr('id')
|
||||
.replace('-0-', '-' + totalCount + '-')
|
||||
: '';
|
||||
|
||||
$(this).attr('name', fieldName);
|
||||
$(this).attr('class', fieldClass);
|
||||
$(this).attr('id', fieldId);
|
||||
});
|
||||
template
|
||||
.find(
|
||||
'input, textarea, select:not(.bsf-aiosrs-schema-meta-field)'
|
||||
)
|
||||
.each(function () {
|
||||
$(this).val('');
|
||||
|
||||
const fieldName =
|
||||
'undefined' !== typeof $(this).attr('name')
|
||||
? $(this)
|
||||
.attr('name')
|
||||
.replace('[0]', '[' + totalCount + ']')
|
||||
: '',
|
||||
fieldClass =
|
||||
'undefined' !== typeof $(this).attr('class')
|
||||
? $(this)
|
||||
.attr('class')
|
||||
.replace('-0-', '-' + totalCount + '-')
|
||||
: '',
|
||||
fieldId =
|
||||
'undefined' !== typeof $(this).attr('id')
|
||||
? $(this)
|
||||
.attr('id')
|
||||
.replace('-0-', '-' + totalCount + '-')
|
||||
: '';
|
||||
|
||||
$(this).attr('name', fieldName);
|
||||
$(this).attr('class', fieldClass);
|
||||
$(this).attr('id', fieldId);
|
||||
});
|
||||
|
||||
template.find('span.select2-container').each(function () {
|
||||
$(this).remove();
|
||||
});
|
||||
|
||||
template.insertBefore(selector);
|
||||
template
|
||||
.find('select.bsf-aiosrs-schema-select2')
|
||||
.each(function (index, el) {
|
||||
self.init_target_rule_select2(el);
|
||||
});
|
||||
|
||||
AIOSRSSchema.init_date_time_fields();
|
||||
},
|
||||
|
||||
add_remove_repeater(selector) {
|
||||
const parentWrap = selector.closest('.bsf-aiosrs-schema-type-wrap'),
|
||||
repeaterCount = parentWrap.find(
|
||||
'> .aiosrs-pro-repeater-table-wrap'
|
||||
).length;
|
||||
|
||||
if (repeaterCount > 1) {
|
||||
selector.closest('.aiosrs-pro-repeater-table-wrap').remove();
|
||||
|
||||
if ('aiosrs-pro-custom-fields' === this.container.attr('id')) {
|
||||
// Reset index to avoid duplicate names.
|
||||
parentWrap
|
||||
.find('> .aiosrs-pro-repeater-table-wrap')
|
||||
.each(function (wrapIndex, repeaterWap) {
|
||||
$(repeaterWap).each(function (
|
||||
elementIndex,
|
||||
element
|
||||
) {
|
||||
$(element)
|
||||
.find(
|
||||
'input, textarea, select:not(.bsf-aiosrs-schema-meta-field)'
|
||||
)
|
||||
.each(function (elIndex, el) {
|
||||
const fieldName =
|
||||
'undefined' !==
|
||||
typeof $(el).attr('name')
|
||||
? $(el)
|
||||
.attr('name')
|
||||
.replace(
|
||||
/\[\d+]/,
|
||||
'[' +
|
||||
wrapIndex +
|
||||
']'
|
||||
)
|
||||
: '';
|
||||
$(el).attr('name', fieldName);
|
||||
});
|
||||
});
|
||||
});
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
bindTooltip() {
|
||||
// Call Tooltip
|
||||
$('.bsf-aiosrs-schema-heading-help').tooltip({
|
||||
content() {
|
||||
return $(this).prop('title');
|
||||
},
|
||||
tooltipClass: 'bsf-aiosrs-schema-ui-tooltip',
|
||||
position: {
|
||||
my: 'center top',
|
||||
at: 'center bottom+10',
|
||||
},
|
||||
hide: {
|
||||
duration: 200,
|
||||
},
|
||||
show: {
|
||||
duration: 200,
|
||||
},
|
||||
});
|
||||
},
|
||||
|
||||
schemaTypeDependency() {
|
||||
const container = this.container;
|
||||
this.container.on(
|
||||
'change',
|
||||
'select[name="bsf-aiosrs-schema-type"]',
|
||||
function () {
|
||||
container
|
||||
.find('.bsf-aiosrs-schema-meta-wrap')
|
||||
.css('display', 'none');
|
||||
const schemaType = $(this).val();
|
||||
if (
|
||||
'undefined' !== typeof schemaType &&
|
||||
'' !== schemaType
|
||||
) {
|
||||
container
|
||||
.find('#bsf-' + schemaType + '-schema-meta-wrap')
|
||||
.css('display', '');
|
||||
}
|
||||
}
|
||||
);
|
||||
},
|
||||
|
||||
init_target_rule_select2(selector) {
|
||||
$(selector).select2({
|
||||
placeholder: 'Search Fields...',
|
||||
ajax: {
|
||||
url: ajaxurl,
|
||||
dataType: 'json',
|
||||
method: 'post',
|
||||
delay: 250,
|
||||
data(params) {
|
||||
return {
|
||||
nonce_ajax: AIOSRS_Rating.specified_field,
|
||||
q: params.term, // search term
|
||||
page: params.page,
|
||||
action: 'bsf_get_specific_meta_fields',
|
||||
};
|
||||
},
|
||||
processResults(data) {
|
||||
return {
|
||||
results: data,
|
||||
};
|
||||
},
|
||||
cache: true,
|
||||
},
|
||||
minimumInputLength: 2,
|
||||
});
|
||||
},
|
||||
|
||||
get_review_item_type_html(itemType) {
|
||||
jQuery
|
||||
.post({
|
||||
url: ajaxurl,
|
||||
data: {
|
||||
action: 'fetch_item_type_html',
|
||||
itemType,
|
||||
nonce: AIOSRS_Rating.security,
|
||||
post_id: jQuery('#post_ID').val(),
|
||||
},
|
||||
})
|
||||
.done(function (response) {
|
||||
$('.bsf-review-item-type-field').remove();
|
||||
$(response).insertAfter(
|
||||
jQuery('#bsf-aiosrs-review-schema-type')
|
||||
.parent()
|
||||
.parent()
|
||||
.closest('tr')
|
||||
);
|
||||
$('select.bsf-aiosrs-schema-select2').each(function (
|
||||
index,
|
||||
el
|
||||
) {
|
||||
AIOSRSSchema.init_target_rule_select2(el);
|
||||
});
|
||||
|
||||
const itemSpecificType =
|
||||
'.bsf-aiosrs-review-' + itemType + '-rating';
|
||||
$(itemSpecificType).each(function () {
|
||||
$(this)
|
||||
.closest('.bsf-aiosrs-schema-table')
|
||||
.find('.bsf-aiosrs-schema-row')
|
||||
.css('display', '');
|
||||
if ('accept-user-rating' === $(this).val()) {
|
||||
const reviewCountWrap = $(this)
|
||||
.closest('.bsf-aiosrs-schema-row')
|
||||
.next('.bsf-aiosrs-schema-row'),
|
||||
name = reviewCountWrap
|
||||
.find('.bsf-aiosrs-schema-meta-field')
|
||||
.attr('name');
|
||||
|
||||
const selectedSchemaType = jQuery(
|
||||
'.bsf-aiosrs-review-schema-type'
|
||||
).val();
|
||||
if (selectedSchemaType) {
|
||||
const prepareName =
|
||||
'bsf-aiosrs-review[' +
|
||||
selectedSchemaType +
|
||||
'-review-count]';
|
||||
|
||||
if (name.indexOf(prepareName) >= 0) {
|
||||
reviewCountWrap.hide();
|
||||
}
|
||||
}
|
||||
|
||||
if (name.indexOf('[review-count]') >= 0) {
|
||||
reviewCountWrap.hide();
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
AIOSRSSchema.init_date_time_fields();
|
||||
AIOSRSSchema.prepare_event_schmea_fields();
|
||||
})
|
||||
.fail(function () { });
|
||||
},
|
||||
|
||||
prepare_event_schmea_fields() {
|
||||
$(
|
||||
'.wpsp-dropdown-event-status, .wpsp-dropdown-bsf-aiosrs-event-event-status'
|
||||
).change(function () {
|
||||
const parent = $(this).parents(
|
||||
'.bsf-aiosrs-schema-meta-wrap, .aiosrs-pro-meta-fields-wrap'
|
||||
);
|
||||
|
||||
parent
|
||||
.find(
|
||||
'td.wpsp-event-status-rescheduled, td.bsf-aiosrs-review-bsf-aiosrs-event-previous-date'
|
||||
)
|
||||
.hide();
|
||||
if (!this.value) {
|
||||
this.value = 'EventScheduled';
|
||||
}
|
||||
|
||||
if ('EventRescheduled' === this.value) {
|
||||
parent
|
||||
.find(
|
||||
'td.wpsp-event-status-rescheduled, td.bsf-aiosrs-review-bsf-aiosrs-event-previous-date'
|
||||
)
|
||||
.show();
|
||||
}
|
||||
|
||||
const eventStatus = $(
|
||||
'.wpsp-dropdown-event-attendance-mode, .wpsp-dropdown-bsf-aiosrs-event-event-attendance-mode'
|
||||
).val();
|
||||
|
||||
if (
|
||||
'EventMovedOnline' === this.value ||
|
||||
'OfflineEventAttendanceMode' !== eventStatus
|
||||
) {
|
||||
parent.find('td.wpsp-event-status-offline').hide();
|
||||
parent.find('td.wpsp-event-status-online').show();
|
||||
parent.find('td.wpsp-online-event-timezone').show();
|
||||
parent
|
||||
.find(
|
||||
'.wpsp-dropdown-event-attendance-mode, .wpsp-dropdown-bsf-aiosrs-event-event-attendance-mode'
|
||||
)
|
||||
.val('OnlineEventAttendanceMode');
|
||||
} else {
|
||||
parent.find('td.wpsp-event-status-offline').show();
|
||||
parent.find('td.wpsp-event-status-online').hide();
|
||||
parent.find('td.wpsp-online-event-timezone').hide();
|
||||
}
|
||||
});
|
||||
$(
|
||||
'.wpsp-dropdown-event-attendance-mode, .wpsp-dropdown-bsf-aiosrs-event-event-attendance-mode'
|
||||
).change(function () {
|
||||
const parent = $(this).parents(
|
||||
'.bsf-aiosrs-schema-meta-wrap, .aiosrs-pro-meta-fields-wrap'
|
||||
);
|
||||
parent.find('td.wpsp-event-status-rescheduled').hide();
|
||||
const eventStatus = $(
|
||||
'.wpsp-dropdown-event-status, .wpsp-dropdown-bsf-aiosrs-event-event-status'
|
||||
).val();
|
||||
|
||||
if ('EventMovedOnline' !== eventStatus) {
|
||||
parent.find('td.wpsp-event-status-offline').show();
|
||||
parent.find('td.wpsp-event-status-online').hide();
|
||||
parent.find('td.wpsp-online-event-timezone').hide();
|
||||
}
|
||||
|
||||
if ('OfflineEventAttendanceMode' !== this.value) {
|
||||
parent.find('td.wpsp-event-status-offline').hide();
|
||||
parent.find('td.wpsp-event-status-online').show();
|
||||
parent.find('td.wpsp-online-event-timezone').show();
|
||||
}
|
||||
|
||||
if ('MixedEventAttendanceMode' === this.value) {
|
||||
parent.find('td.wpsp-event-status-offline').show();
|
||||
parent.find('td.wpsp-event-status-online').show();
|
||||
parent.find('td.wpsp-online-event-timezone').show();
|
||||
}
|
||||
});
|
||||
|
||||
$(
|
||||
'.wpsp-dropdown-event-attendance-mode, .wpsp-dropdown-bsf-aiosrs-event-event-attendance-mode'
|
||||
).trigger('change');
|
||||
},
|
||||
|
||||
init_date_time_fields() {
|
||||
$(
|
||||
'.wpsp-datetime-local-field, .wpsp-date-field, .wpsp-time-duration-field'
|
||||
).each(function () {
|
||||
$(this).removeClass('hasDatepicker');
|
||||
});
|
||||
|
||||
const startDateSelectors =
|
||||
'.wpsp-date-published-date, .wpsp-datetime-local-event-start-date, .wpsp-date-start-date, .wpsp-datetime-local-start-date';
|
||||
const endDateSelectors =
|
||||
'.wpsp-date-modified-date, .wpsp-datetime-local-event-end-date, .wpsp-date-end-date, .wpsp-datetime-local-end-date';
|
||||
|
||||
$(document).on('focus', '.wpsp-time-duration-field', function () {
|
||||
$(this).timepicker({
|
||||
timeFormat: 'HH:mm:ss',
|
||||
hourMin: 0,
|
||||
hourMax: 99,
|
||||
oneLine: true,
|
||||
currentText: 'Clear',
|
||||
onSelect() {
|
||||
updateTimeFormat(this);
|
||||
},
|
||||
});
|
||||
});
|
||||
|
||||
$(document).on(
|
||||
'focus',
|
||||
'.wpsp-datetime-local-field, .wpsp-date-field',
|
||||
function () {
|
||||
$(this).datetimepicker({
|
||||
dateFormat: 'yy-mm-dd',
|
||||
timeFormat: 'hh:mm TT',
|
||||
changeMonth: true,
|
||||
changeYear: true,
|
||||
showOn: 'focus',
|
||||
showButtonPanel: true,
|
||||
closeText: 'Done',
|
||||
currentText: 'Clear',
|
||||
yearRange: '-100:+10', // last hundred year
|
||||
onClose(dateText, inst) {
|
||||
const thisEle = '#' + inst.id;
|
||||
if (jQuery(thisEle).is(startDateSelectors)) {
|
||||
$(endDateSelectors).datetimepicker(
|
||||
'option',
|
||||
'minDate',
|
||||
new Date(dateText)
|
||||
);
|
||||
} else if (jQuery(thisEle).is(endDateSelectors)) {
|
||||
$(startDateSelectors).datetimepicker(
|
||||
'option',
|
||||
'maxDate',
|
||||
new Date(dateText)
|
||||
);
|
||||
}
|
||||
jQuery(thisEle)
|
||||
.parents('.wpsp-local-fields')
|
||||
.find('.wpsp-default-hidden-value')
|
||||
.val(dateText);
|
||||
},
|
||||
});
|
||||
}
|
||||
);
|
||||
|
||||
$.datepicker._gotoToday = function (id) {
|
||||
$(id).datepicker('setDate', '').datepicker('hide').blur();
|
||||
};
|
||||
|
||||
function updateTimeFormat(thisEle) {
|
||||
const durationWrap = $(thisEle).closest(
|
||||
'.aiosrs-pro-custom-field-time-duration'
|
||||
);
|
||||
const inputField = durationWrap.find('.time-duration-field');
|
||||
let value = $(thisEle).val();
|
||||
value = value.replace(/:/, 'H');
|
||||
value = value.replace(/:/, 'M');
|
||||
value = 'PT' + value + 'S';
|
||||
inputField.val(value);
|
||||
|
||||
// Post/pages related support.
|
||||
const parent = $(thisEle).parents('.wpsp-local-fields');
|
||||
parent.find('.wpsp-default-hidden-value').val(value);
|
||||
}
|
||||
},
|
||||
};
|
||||
|
||||
/* Initializes the AIOSRS Schema. */
|
||||
$(function () {
|
||||
AIOSRSSchema.init();
|
||||
|
||||
if (!$('body').hasClass('aiosrs-pro-setup')) {
|
||||
AIOSRSSchema.init_date_time_fields();
|
||||
}
|
||||
});
|
||||
|
||||
$(document).ready(function () {
|
||||
let parent = $('.aiosrs-pro-meta-fields-wrap');
|
||||
parent.each(function (index, value) {
|
||||
let labelMarkup = $(value).find('.wpsp-field-label');
|
||||
let label = labelMarkup.text();
|
||||
if ('Image License' === label.trim()) {
|
||||
labelMarkup.attr('style', 'width:6%');
|
||||
}
|
||||
});
|
||||
$('#bsf-aiosrs-review-schema-type').change(function () {
|
||||
const itemVal = $(this).val().trim();
|
||||
if (!itemVal) {
|
||||
$('.bsf-review-item-type-field').remove();
|
||||
return;
|
||||
}
|
||||
AIOSRSSchema.get_review_item_type_html(itemVal);
|
||||
});
|
||||
$('#bsf-aiosrs-review-schema-type').change();
|
||||
|
||||
AIOSRSSchema.prepare_event_schmea_fields();
|
||||
});
|
||||
})(jQuery);
|
||||
Reference in New Issue
Block a user