Done !
Server IP : 162.0.217.223 / Your IP : 216.73.216.168 Web Server : LiteSpeed System : Linux premium269.web-hosting.com 4.18.0-553.lve.el8.x86_64 #1 SMP Mon May 27 15:27:34 UTC 2024 x86_64 User : mypckeys ( 1539) PHP Version : 8.1.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/mypckeys/yeslicense.org/wp-content/themes/woodmart/inc/admin/assets/js/ |
Upload File : |
/* global jQuery, woodmartConfig */ (function($) { 'use strict'; function saveThemeSettings() { let formChanged = false; let $form = $('.xts-options .xts-box-content form'); let $noticeWrapper = $form.find('.xts-notices-wrapper'); $(document).on('change irischange', 'input[name^="xts-woodmart-options"], select[name^="xts-woodmart-options"], textarea[name^="xts-woodmart-options"]', function () { let $this = $(this); if (! $this.attr('data-changed')) { $this.attr('data-changed', 1); clearNotice(); } formChanged = true; }) if ('undefined' !== typeof tinymce) { $('.xts-textarea-control textarea[name^="xts-woodmart-options"]').each(function() { let $textarea = $(this); let editor = tinymce.get($textarea.attr('id')); if (editor) { editor.on('change keyup', function () { if (! $textarea.attr('data-changed')) { $textarea.attr('data-changed', 1); clearNotice(); } formChanged = true; }); } }) } $(window).on('beforeunload', function (e) { if (formChanged) { e.preventDefault(); return ''; } }); $form.on('submit', function (e) { let $submit = $(e.originalEvent.submitter); if ('xts-woodmart-options[reset-defaults]' === $submit.attr('name') || 'xts-woodmart-options[import-btn]' === $submit.attr('name')) { formChanged = false; return; } e.preventDefault(); let $form = $(this); let $wrapper = $form.parents('.xts-box-content'); let formData = new FormData(); $form.find('> input[type="hidden"]').each(function () { formData.append($(this).attr('name'), $(this).val()); }) $form.find('[data-changed="1"][name^="xts-woodmart-options"]').each(function () { let $element = $(this); let name = $element.attr('name'); $element.attr('data-changed', null); $element.removeClass('xts-changed'); if (formData.has(name)) { return; } let match = name.match(/\[([^\]]+)\]\[([^\]]+)\]/); if (!match || match.length < 2) { if ( $element.attr('disabled') ) { formData.append(name, ''); } else if ($element.is('select[multiple]')) { let values = $element.val() || []; if (values.length === 0) { formData.append(name, ''); } else { values.forEach(value => { formData.append(name, value); }); } } else { formData.append(name, $element.val()); } } else { let mainKey = match[1]; $element .closest('.xts-fields') .find(`input[name^="xts-woodmart-options[${mainKey}]"], select[name^="xts-woodmart-options[${mainKey}]"]`) .each(function () { let $siblingElement = $(this); let siblingName = $siblingElement.attr('name'); $siblingElement.attr('data-changed', null); if (!formData.has(siblingName) && siblingName.search('{{index}}') === -1) { if ( $siblingElement.attr('disabled') ) { formData.append(siblingName, ''); } else if ($siblingElement.is('select[multiple]')) { let values = $siblingElement.val() || []; if (values.length === 0) { formData.append(siblingName, ''); } else { values.forEach(value => { formData.append(siblingName, value); }); } } else { formData.append(siblingName, $siblingElement.val()); } } }); } }); $wrapper.addClass('xts-loading'); $.ajax({ url: $form.attr('action'), type: 'POST', data: formData, processData: false, contentType: false, success: function (response) { let $responseHtml = $(response); let noticeContent = $responseHtml.find('.xts-notices-wrapper').html(); if ($responseHtml.find('.xts-header li > a').length !== $('.xts-header li > a').length || $responseHtml.find('#adminmenu li > a').length !== $('#adminmenu li > a').length) { formChanged = false; location.reload(); } $noticeWrapper.html(noticeContent); setTimeout(function () { clearNotice(); }, 30000); }, error: function () { $form.off('submit').trigger('submit'); }, complete: function () { formChanged = false; $wrapper.removeClass('xts-loading'); } }); }); function clearNotice() { if ($noticeWrapper.html()) { $noticeWrapper.html(''); } } } jQuery(document).ready(function() { saveThemeSettings(); }); })(jQuery);