Collections functions
General functions
Node functions
Render functions
Theme permission functions
User functions
Resource functions

config_generate_AutoSaveConfigOption_function()

Description

Generate Javascript function used for auto saving individual config options

Parameters

ColumnTypeDefaultDescription
$post_url string URL to where the data will be posted

Location

include/config_functions.php lines 1080 to 1138

Definition

 
function config_generate_AutoSaveConfigOption_function($post_url)
    {
    global 
$lang;
    
?>
    
    <script>
    function AutoSaveConfigOption(option_name, reload_page = false)
        {
        jQuery('#AutoSaveStatus-' + option_name).html(' echo escape($lang["saving"]); ?>');
        jQuery('#AutoSaveStatus-' + option_name).show();

        if (jQuery('input[name=' + option_name + ']').is(':checkbox')) {
            var option_value = jQuery('input[name=' + option_name + ']:checked').map(function(){
            return jQuery(this).val();
          }).get().toString();
        
        }
        
        else {
            var option_value = jQuery('#' + option_name).val();
        }
        
        var post_url  = ' echo $post_url?>';
        var post_data = {
            ajax: true,
            autosave: true,
            autosave_option_name: option_name,
            autosave_option_value: option_value,
             echo generateAjaxToken($post_url); ?>
        };

        jQuery.post(post_url, post_data, function(response) {

            if(response.success === true)
                {
                jQuery('#AutoSaveStatus-' + option_name).html(' echo escape($lang["saved"]); ?>');
                jQuery('#AutoSaveStatus-' + option_name).fadeOut('slow');
                if (reload_page)
                    {
                    location.reload();
                    }
                }
            else if(response.success === false && response.message && response.message.length > 0)
                {
                jQuery('#AutoSaveStatus-' + option_name).html(" echo escape($lang['save-error']); ?> " + response.message);
                }
            else
                {
                jQuery('#AutoSaveStatus-' + option_name).html(" echo escape($lang['save-error']); ?>");
                }

        }, 'json');

        return true;
        }
    </script>
    
    
    
}

This article was last updated 19th March 2024 07:35 Europe/London time based on the source file dated 15th March 2024 17:00 Europe/London time.