: str_replace(): Passing null to parameter #2 ($replace) of type array|string is deprecated in
return WFLS_ADMIN_TRANSLATIONS[string] || string;
this.basePageName = document.title;
var tabs = $('.wfls-page-tabs').find('.wfls-tab a');
$('.wfls-page-tabs').find('.wfls-tab').removeClass('wfls-active');
$('.wfls-tab-content').removeClass('wfls-active');
var tab = $(this).closest('.wfls-tab');
tab.addClass('wfls-active');
var content = $('#' + tab.data('target'));
content.addClass('wfls-active');
document.title = tab.data('pageTitle') + " \u2039 " + WFLS.basePageName;
$(window).trigger('wfls-tab-change', [tab.data('target')]);
if (window.location.hash) {
var hashes = WFLS.parseHashes();
var hash = hashes[hashes.length - 1];
for (var i = 0; i < tabs.length; i++) {
if (hash == $(tabs[i]).closest('.wfls-tab').data('target')) {
$(tabs[i]).trigger('click');
$(tabs[0]).trigger('click');
$(window).on('hashchange', function () {
var hashes = WFLS.parseHashes();
var hash = hashes[hashes.length - 1];
for (var i = 0; i < tabs.length; i++) {
if (hash == $(tabs[i]).closest('.wfls-tab').data('target')) {
$(tabs[i]).trigger('click');
$('.wfls-option.wfls-option-toggled .wfls-option-checkbox').each(function() {
$(this).on('keydown', function(e) {
$(this).trigger('click');
$(this).on('click', function(e) {
var optionElement = $(this).closest('.wfls-option');
if (optionElement.hasClass('wfls-option-premium') || optionElement.hasClass('wfls-disabled')) {
var option = optionElement.data('option');
var isActive = $(this).hasClass('wfls-checked');
$(this).removeClass('wfls-checked').attr('aria-checked', 'false');
value = optionElement.data('disabledValue');
$(this).addClass('wfls-checked').attr('aria-checked', 'true');
value = optionElement.data('enabledValue');
var originalValue = optionElement.data('originalValue');
if (originalValue == value) {
delete WFLS.pendingChanges[option];
WFLS.pendingChanges[option] = value;
$(optionElement).trigger('change', [false]);
WFLS.updatePendingChanges();
$(this).parent().find('.wfls-option-title').on('click', function(e) {
var links = $(this).find('a');
for (var i = 0; i < links.length; i++) {
var t = $(links[i]).offset().top;
var l = $(links[i]).offset().left;
var b = t + $(links[i]).height();
var r = l + $(links[i]).width();
if (e.pageX > l - buffer && e.pageX < r + buffer && e.pageY > t - buffer && e.pageY < b + buffer) {
$(this).parent().find('.wfls-option-checkbox').trigger('click');
}).css('cursor', 'pointer');
//On/Off Boolean Switch Option
$('.wfls-option.wfls-option-toggled-boolean-switch .wfls-boolean-switch').each(function() {
$(this).on('keydown', function(e) {
$(this).trigger('click');
$(this).on('click', function(e) {
$(this).find('.wfls-boolean-switch-handle').trigger('click');
$(this).find('.wfls-boolean-switch-handle').on('click', function(e) {
var optionElement = $(this).closest('.wfls-option');
if (optionElement.hasClass('wfls-option-premium') || optionElement.hasClass('wfls-disabled')) {
var switchElement = $(this).closest('.wfls-boolean-switch');
var option = optionElement.data('option');
var isActive = switchElement.hasClass('wfls-active');
switchElement.removeClass('wfls-active').attr('aria-checked', 'false');
value = optionElement.data('disabledValue');
switchElement.addClass('wfls-active').attr('aria-checked', 'true');
value = optionElement.data('enabledValue');
var originalValue = optionElement.data('originalValue');
if (originalValue == value) {
delete WFLS.pendingChanges[option];
WFLS.pendingChanges[option] = value;
$(optionElement).trigger('change', [false]);
WFLS.updatePendingChanges();
$(this).parent().find('.wfls-option-title').on('click', function(e) {
var links = $(this).find('a');
for (var i = 0; i < links.length; i++) {
var t = $(links[i]).offset().top;
var l = $(links[i]).offset().left;
var b = t + $(links[i]).height();
var r = l + $(links[i]).width();
if (e.pageX > l - buffer && e.pageX < r + buffer && e.pageY > t - buffer && e.pageY < b + buffer) {
$(this).parent().find('.wfls-boolean-switch-handle').trigger('click');
}).css('cursor', 'pointer');
//On/Off Segmented Option
$('.wfls-option.wfls-option-toggled-segmented [type=radio]').each(function() {
$(this).on('click', function(e) {
var optionElement = $(this).closest('.wfls-option');
if (optionElement.hasClass('wfls-option-premium') || optionElement.hasClass('wfls-disabled')) {
var option = optionElement.data('option');
var originalValue = optionElement.data('originalValue');
if (originalValue == value) {
delete WFLS.pendingChanges[option];
WFLS.pendingChanges[option] = value;
$(optionElement).trigger('change', [false]);
WFLS.updatePendingChanges();
$('.wfls-option.wfls-option-toggled-multiple .wfls-option-checkbox').each(function() {
$(this).on('keydown', function(e) {
$(this).trigger('click');
$(this).on('click', function(e) {
var optionElement = $(this).closest('.wfls-option');
if (optionElement.hasClass('wfls-option-premium') || optionElement.hasClass('wfls-disabled') || $(this).hasClass('wfls-disabled')) {
var checkboxElement = $(this).closest('ul');
var option = checkboxElement.data('option');
var isActive = $(this).hasClass('wfls-checked');
$(this).removeClass('wfls-checked').attr('aria-checked', 'false');
value = checkboxElement.data('disabledValue');
$(this).addClass('wfls-checked').attr('aria-checked', 'true');
value = checkboxElement.data('enabledValue');
var originalValue = checkboxElement.data('originalValue');
if (originalValue == value) {
delete WFLS.pendingChanges[option];
WFLS.pendingChanges[option] = value;
$(optionElement).trigger('change', [false]);
WFLS.updatePendingChanges();
$(this).parent().find('.wfls-option-title').on('click', function(e) {
var links = $(this).find('a');
for (var i = 0; i < links.length; i++) {
var t = $(links[i]).offset().top;
var l = $(links[i]).offset().left;
var b = t + $(links[i]).height();
var r = l + $(links[i]).width();
if (e.pageX > l - buffer && e.pageX < r + buffer && e.pageY > t - buffer && e.pageY < b + buffer) {
$(this).parent().find('.wfls-option-checkbox').trigger('click');
}).css('cursor', 'pointer');
$('.wfls-option.wfls-option-text > .wfls-option-content > ul > li.wfls-option-text input').on('change paste keyup', function() {
var optionElement = $(e).closest('.wfls-option');
var option = optionElement.data('textOption');
if (typeof option !== 'undefined') {
var originalValue = optionElement.data('originalTextValue');
if (originalValue == value) {
delete WFLS.pendingChanges[option];
WFLS.pendingChanges[option] = value;
$(optionElement).trigger('change', [false]);
WFLS.updatePendingChanges();
$('.wfls-option.wfls-option-toggled-select > .wfls-option-content > ul > li.wfls-option-select select, .wfls-option.wfls-option-select > .wfls-option-content > ul > li.wfls-option-select select, .wf-option.wfls-option-select > li.wfls-option-select select').each(function() {
if (!$.fn.wfselect2) { return; }
var width = (WFLS.screenSize(500) ? '200px' : 'resolve');
if ($(this).data('preferredWidth')) {
width = $(this).data('preferredWidth');
minimumResultsForSearch: -1,
}).on('change', function () {
var optionElement = $(this).closest('.wfls-option');
var option = optionElement.data('selectOption');
var value = $(this).val();
var originalValue = optionElement.data('originalSelectValue');
if (originalValue == value) {
delete WFLS.pendingChanges[option];
WFLS.pendingChanges[option] = value;
$(optionElement).trigger('change', [false]);
WFLS.updatePendingChanges();
}).triggerHandler('change');
$('.wfls-option.wfls-option-textarea > .wfls-option-content > ul > li.wfls-option-textarea textarea').on('change paste keyup', function() {
var optionElement = $(e).closest('.wfls-option');
var option = optionElement.data('textOption');
var originalValue = optionElement.data('originalTextValue');
if (originalValue == value) {
delete WFLS.pendingChanges[option];
WFLS.pendingChanges[option] = value;
$(optionElement).trigger('change', [false]);
WFLS.updatePendingChanges();
$('.wfls-option.wfls-option-switch .wfls-switch > li').each(function(index, element) {
$(this).on('keydown', function(e) {
$(this).trigger('click');
$(element).on('click', function(e) {
var optionElement = $(this).closest('ul.wfls-option-switch, div.wfls-option-switch');
var optionName = optionElement.data('optionName');
var originalValue = optionElement.data('originalValue');
var value = $(this).data('optionValue');
var control = $(this).closest('.wfls-switch');
control.find('li').each(function() {
$(this).toggleClass('wfls-active', value == $(this).data('optionValue')).attr('aria-checked', value == $(this).data('optionValue') ? 'true' : 'false');
if (originalValue == value) {
delete WFLS.pendingChanges[optionName];
WFLS.pendingChanges[optionName] = value;
$(optionElement).trigger('change', [false]);
WFLS.updatePendingChanges();
$('select.wfls-option-select, input.wfls-option-input').each(function() {
$(this).data('original', $(this).val());
}).on('change input', function(e) {
var name = input.attr('name');
var original = input.data('original');
if (value === original || (input.hasClass('wfls-option-input-required') && value === '')) {
delete WFLS.pendingChanges[name];
WFLS.pendingChanges[name] = value;
WFLS.updatePendingChanges();
$('#wfls-save-changes').on('click', function(e) {
WFLS.saveOptions(function(res) {
WFLS.pendingChanges = {};
WFLS.updatePendingChanges();
window.location.href = res.redirect;
window.location.reload(true);
$('#wfls-cancel-changes').on('click', function(e) {
$('.wfls-option.wfls-option-toggled').each(function() {
var enabledValue = $(this).data('enabledValue');
var disabledValue = $(this).data('disabledValue');
var originalValue = $(this).data('originalValue');
if (enabledValue == originalValue) {
$(this).find('.wfls-option-checkbox').addClass('wfls-checked').attr('aria-checked', 'true');
$(this).find('.wfls-option-checkbox').removeClass('wfls-checked').attr('aria-checked', 'false');
$(this).trigger('change', [true]);
$('.wfls-option-toggled-boolean-switch').each(function() {
var enabledValue = $(this).data('enabledValue');
var disabledValue = $(this).data('disabledValue');
var originalValue = $(this).data('originalValue');
if (enabledValue == originalValue) {
$(this).find('.wfls-boolean-switch').addClass('wfls-active').attr('aria-checked', 'true');
$(this).find('.wfls-boolean-switch').removeClass('wfls-active').attr('aria-checked', 'false');
$(this).trigger('change', [true]);
$('.wfls-option.wfls-option-toggled-segmented').each(function() {
var originalValue = $(this).data('originalValue');
$(this).find('[type=radio]').each(function() {
if (this.value == originalValue) {
$(this).trigger('change', [true]);
//On/Off multiple options
$('.wfls-option.wfls-option-toggled-multiple').each(function() {
$(this).find('.wfls-option-checkboxes > ul').each(function() {
var enabledValue = $(this).data('enabledValue');
var disabledValue = $(this).data('disabledValue');
var originalValue = $(this).data('originalValue');
if (enabledValue == originalValue) {
$(this).find('.wfls-option-checkbox').addClass('wfls-checked').attr('aria-checked', 'true');
$(this).find('.wfls-option-checkbox').removeClass('wfls-checked').attr('aria-checked', 'false');
$(this).trigger('change', [true]);
//On/Off options with menu
$('.wfls-option.wfls-option-toggled-select').each(function() {
var selectElement = $(this).find('.wfls-option-select select');
var enabledToggleValue = $(this).data('enabledToggleValue');
var disabledToggleValue = $(this).data('disabledToggleValue');
var originalToggleValue = $(this).data('originalToggleValue');
if (enabledToggleValue == originalToggleValue) {
$(this).find('.wfls-option-checkbox').addClass('wfls-checked').attr('aria-checked', 'true');
selectElement.attr('disabled', false);
$(this).find('.wfls-option-checkbox').removeClass('wfls-checked').attr('aria-checked', 'false');
selectElement.attr('disabled', true);
var originalSelectValue = $(this).data('originalSelectValue');
$(this).find('.wfls-option-select select').val(originalSelectValue).trigger('change');
$(this).trigger('change', [true]);
$('.wfls-option.wfls-option-select').each(function() {