/home/techb158/dev.aleamaralawal.com/wp-content/plugins/gravityforms/js
NameSizeModeActions
components/-0755rm
vendor/-0755rm
chosen.jquery.min.js291210644editdlrm
conditional_logic.js254200644editdlrm
conditional_logic.min.js99610644editdlrm
datepicker-legacy.js15650644editdlrm
datepicker-legacy.min.js9590644editdlrm
datepicker.js69130644editdlrm
datepicker.min.js29950644editdlrm
duplicate-submissions.js32170644editdlrm
duplicate-submissions.min.js9030644editdlrm
forms.js19330644editdlrm
forms.min.js10360644editdlrm
form_admin.js661060644editdlrm
form_admin.min.js341850644editdlrm
form_editor.js1727450644editdlrm
form_editor.min.js1101650644editdlrm
gforms_hooks.js41010644editdlrm
gforms_hooks.min.js21390644editdlrm
gf_field_filter.js126340644editdlrm
gf_field_filter.min.js58940644editdlrm
gravityforms.js1093840644editdlrm
gravityforms.min.js454880644editdlrm
index.php270644editdlrm
jquery.json-1.3.js48840644editdlrm
jquery.json-1.3.min.js17200644editdlrm
jquery.json.js52560644editdlrm
jquery.json.min.js18230644editdlrm
jquery.maskedinput-1.3.1.min.js44120644editdlrm
jquery.maskedinput.js106520644editdlrm
jquery.maskedinput.min.js41590644editdlrm
jquery.textareaCounter.plugin.js62350644editdlrm
jquery.textareaCounter.plugin.min.js19330644editdlrm
layout_editor.js412340644editdlrm
layout_editor.min.js131130644editdlrm
page_conditional_logic.js54090644editdlrm
page_conditional_logic.min.js23960644editdlrm
placeholders.jquery.min.js46390644editdlrm
plugin_settings.js18770644editdlrm
plugin_settings.min.js11730644editdlrm
preview.js22690644editdlrm
preview.min.js14680644editdlrm
shortcode-ui.js263460644editdlrm
shortcode-ui.min.js109100644editdlrm
skip.js1270644editdlrm
skip.min.js550644editdlrm
tooltip_init.js24330644editdlrm
tooltip_init.min.js13560644editdlrm
Edit: /home/techb158/dev.aleamaralawal.com/wp-content/plugins/gravityforms/js/duplicate-submissions.js (3217B)
/** * Provides functionality to allow browsers to re-submit forms without creating duplicate submissions. */ (function() { var config = window.gf_duplicate_submissions || {}; /** * Check if the current browser is Safari. * * @returns {boolean} */ var isSafari = function() { var ua = window.navigator.userAgent; var iOS = !!ua.match( /iP(ad|od|hone)/i ); var hasSafariInUa = !!ua.match( /Safari/i ); var noOtherBrowsersInUa = !ua.match( /Chrome|CriOS|OPiOS|mercury|FxiOS|Firefox/i ) var result = false; if ( iOS ) { //detecting Safari in IOS mobile browsers var webkit = !!ua.match( /WebKit/i ); result = webkit && hasSafariInUa && noOtherBrowsersInUa; } else if ( window.safari !== undefined ) { //detecting Safari in Desktop Browsers result = true; } else { // detecting Safari in other platforms result = hasSafariInUa && noOtherBrowsersInUa; } return result; }; /** * Update a Query Var based on the provided key/value. * * @param {string} key The key to update. * @param {string} value The value to which the key should be updated. * @param {string} url The URL to update. * * @returns {string} */ var updateQueryVar = function( key, value, url ) { var separator = '?'; var hashSplit = url.split( '#' ), hash = hashSplit[ 1 ] ? '#' + hashSplit[ 1 ] : '', querySplit = hashSplit[ 0 ].split( '?' ), host = querySplit[ 0 ], query = querySplit[ 1 ], params = query !== undefined ? query.split( '&' ) : [], updated = false; for ( var index = 0; index < params.length; index++ ) { var item = params[ index ]; // No need to process this parameter since it doesn't match the one we're updating. if ( ! item.startsWith( key + '=' ) ) { continue; } // Update the param if the value is non-empty, otherwise remove it. if ( value.length > 0 ) { params[ index ] = key + '=' + value; } else { params.splice( index, 1 ); } updated = true; } // Param didn't already exist; if the value is non-empty, add it to the param array. if ( ! updated && value.length > 0 ) { params[ params.length ] = key + '=' + value; } var queryString = params.join( '&' ); return host + separator + queryString + hash; }; /** * Get the properly-formatted URL for redirects. * * @returns {string} */ var getFormattedURL = function() { var baseUrl = updateQueryVar( config.safari_redirect_param, '', window.location.href ); var safariUrl = updateQueryVar( config.safari_redirect_param, '1', window.location.href ); console.log( baseUrl, safariUrl ); return isSafari() ? safariUrl : baseUrl; }; /** * Replace the current history state to avoid duplicate submissions. */ var handleReplaceState = function() { window.history.replaceState( null, null, getFormattedURL() ); }; /** * Initialize. */ var init = function() { if ( window.gf_duplicate_submissions_initialized || config.is_gf_submission !== '1' || !window.history.replaceState ) { return; } window.gf_duplicate_submissions_initialized = true; handleReplaceState(); }; init(); })();