/
var
/
www
/
barefootlaw.org
/
wp-content
/
plugins
/
addons-for-elementor
/
admin
/
assets
/
js
/
Upload File
HOME
/*global jQuery:false*/ /*global ajaxurl:false*/ /*global lae_admin_global_var*/ jQuery.noConflict(); (function ($) { "use strict"; // ================================================================== // Ajax Helper // ================================================================== var xhr, msg_strings = lae_admin_global_var.box_messages, msg_icons = lae_admin_global_var.box_icons; function Ajax_Helper(ajax_data) { // check if ajax request not proceeded and finish before running another one if (xhr && (xhr.readyState == 3 || xhr.readyState == 2 || xhr.readyState == 1)) { return false; } // prepare message icon var msg_state = msg_strings[ajax_data.func]; // retrieve callbacks var ajax_callbacks = ajax_data.callbacks; // delete callbacks to prevent fire function from $.ajax->data delete ajax_data.callbacks; // start ajax request xhr = $.ajax({ url: ajaxurl, type: 'POST', dataType: 'json', data: ajax_data, beforeSend: function () { var msg_before = msg_icons.before + msg_state.before; if (ajax_callbacks.before) { ajax_callbacks.before(ajax_data, msg_before); } }, error: function (response) { console.error(response); if (ajax_callbacks.error) { ajax_callbacks.error(ajax_data, response); } }, success: function (response) { // if a php script error occurs if (!response.success) { if (ajax_callbacks.error) { ajax_callbacks.error(ajax_data, response); } return false; } else { var msg_success = msg_icons.success + msg_state.success; if (ajax_callbacks.success) { ajax_callbacks.success(ajax_data, response, msg_success); } } } }); } // ================================================================== // Close info Box Helper // =================================================================== var infobox = '#lae-infobox', infobox_msg = '.lae-infobox-msg', infobox_loading = 'lae-infobox-loading'; $(document).on('click', infobox, function (e) { if ($(infobox).is(':visible') && ($(e.target).is('.lae-info-inner') || $(e.target).is('.lae-close-infobox'))) { $(infobox).removeClass(infobox_loading); setTimeout(function () { $(infobox).removeClass(infobox_loading); }, 300); } }); // show box message function show_message_load(ajax_data, msg) { $(infobox_msg).html(msg); $(infobox).addClass(infobox_loading); } // show error message function show_message_error(ajax_data, response) { $(infobox_msg).html(lae_admin_global_var.box_icons.error + response.message); setTimeout(function () { $(infobox).removeClass(infobox_loading); }, 1500); } // ================================================================== // GRID Global Settings - Save/reset settings // ================================================================== $(document).on('click', '#lae_settings_save, #lae_settings_reset', function () { var func = $(this).data('action'), reset = (func === 'lae_reset_settings') ? true : null, setting_data = get_settings_data(reset); Ajax_Helper({ nonce: lae_admin_global_var.nonce, action: 'lae_admin_ajax', func: func, reset: reset, setting_data: setting_data, callbacks: { before: show_message_load, success: show_save_settings_success, error: show_message_error } }); }); function get_settings_data(reset) { var setting_data = {}, setting_val; $('.lae-row').each(function () { var $setting = $(this).find('[name]'); if ($setting.length) { var setting_name = $setting.attr('name'); if (reset) { setting_val = $setting.data('default'); } else { setting_val = $setting.val(); if ($setting.is('.lae-checkbox')) { setting_val = $setting.is(':checked'); setting_val = (setting_val) ? setting_val : null; } } setting_data[setting_name] = setting_val; } }); return setting_data; } function show_save_settings_success(ajax_data, response, msg) { $(infobox_msg).html(msg); setTimeout(function () { $(infobox).removeClass(infobox_loading); if (response.content) { $('.lae-settings').html($(response.content).html()); LAE_JS.init(); } }, 800); } })(jQuery);