Implemented global ajax settings - no documentation yet
This commit is contained in:
parent
30dc79f1d0
commit
fc84b9db10
|
@ -1,6 +1,6 @@
|
||||||
body, div, h1 { font-family: 'trebuchet ms', verdana, arial; margin: 0; padding: 0 }
|
body, div, h1 { font-family: 'trebuchet ms', verdana, arial; margin: 0; padding: 0 }
|
||||||
body { margin: 0; padding: 0; font-size: small; }
|
body {font-size: 10pt; }
|
||||||
h1 { padding: 15px; margin: 0; font-size: large; background-color: #06b; color: white; }
|
h1 { padding: 15px; font-size: large; background-color: #06b; color: white; }
|
||||||
h2 { padding: 10px; background-color: #eee; color: black; margin: 0; font-size: small; font-weight: normal }
|
h2 { padding: 10px; background-color: #eee; color: black; margin: 0; font-size: small; font-weight: normal }
|
||||||
|
|
||||||
.pass { color: green; }
|
.pass { color: green; }
|
||||||
|
|
|
@ -407,7 +407,7 @@ jQuery.extend({
|
||||||
},
|
},
|
||||||
|
|
||||||
// timeout (ms)
|
// timeout (ms)
|
||||||
timeout: 0,
|
//timeout: 0,
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Set the timeout of all AJAX requests to a specific amount of time.
|
* Set the timeout of all AJAX requests to a specific amount of time.
|
||||||
|
@ -428,11 +428,26 @@ jQuery.extend({
|
||||||
* @cat AJAX
|
* @cat AJAX
|
||||||
*/
|
*/
|
||||||
ajaxTimeout: function(timeout) {
|
ajaxTimeout: function(timeout) {
|
||||||
jQuery.timeout = timeout;
|
//jQuery.timeout = timeout;
|
||||||
|
jQuery.ajaxSettings.timeout = timeout;
|
||||||
|
},
|
||||||
|
|
||||||
|
ajaxSetup: function(settings) {
|
||||||
|
jQuery.extend(jQuery.ajaxSettings, settings);
|
||||||
},
|
},
|
||||||
|
|
||||||
// Last-Modified header cache for next request
|
// Last-Modified header cache for next request
|
||||||
lastModified: {},
|
lastModified: {},
|
||||||
|
|
||||||
|
// TODO document me
|
||||||
|
ajaxSettings: {
|
||||||
|
global: true,
|
||||||
|
type: "GET",
|
||||||
|
timeout: 0,
|
||||||
|
contentType: "application/x-www-form-urlencoded",
|
||||||
|
processData: true,
|
||||||
|
async: true
|
||||||
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Load a remote page using an HTTP request.
|
* Load a remote page using an HTTP request.
|
||||||
|
@ -555,22 +570,7 @@ jQuery.extend({
|
||||||
*/
|
*/
|
||||||
ajax: function( s ) {
|
ajax: function( s ) {
|
||||||
// TODO introduce global settings, allowing the client to modify them for all requests, not only timeout
|
// TODO introduce global settings, allowing the client to modify them for all requests, not only timeout
|
||||||
s = jQuery.extend({
|
s = jQuery.extend({}, jQuery.ajaxSettings, s);
|
||||||
global: true,
|
|
||||||
ifModified: false,
|
|
||||||
type: "GET",
|
|
||||||
timeout: jQuery.timeout,
|
|
||||||
complete: null,
|
|
||||||
success: null,
|
|
||||||
error: null,
|
|
||||||
dataType: null,
|
|
||||||
url: null,
|
|
||||||
data: null,
|
|
||||||
contentType: "application/x-www-form-urlencoded",
|
|
||||||
processData: true,
|
|
||||||
async: true,
|
|
||||||
beforeSend: null
|
|
||||||
}, s);
|
|
||||||
|
|
||||||
// if data available
|
// if data available
|
||||||
if ( s.data ) {
|
if ( s.data ) {
|
||||||
|
@ -677,14 +677,12 @@ jQuery.extend({
|
||||||
if(s.timeout > 0)
|
if(s.timeout > 0)
|
||||||
setTimeout(function(){
|
setTimeout(function(){
|
||||||
// Check to see if the request is still happening
|
// Check to see if the request is still happening
|
||||||
if (xml) {
|
if(xml) {
|
||||||
// Cancel the request
|
// Cancel the request
|
||||||
xml.abort();
|
xml.abort();
|
||||||
|
|
||||||
if ( !requestDone ) onreadystatechange( "timeout" );
|
if( !requestDone )
|
||||||
|
onreadystatechange( "timeout" );
|
||||||
// Clear from memory
|
|
||||||
xml = null;
|
|
||||||
}
|
}
|
||||||
}, s.timeout);
|
}, s.timeout);
|
||||||
|
|
||||||
|
|
|
@ -127,6 +127,7 @@ test("test global handlers - failure", function() {
|
||||||
counter.error = counter.success = counter.complete = counter.send = 0;
|
counter.error = counter.success = counter.complete = counter.send = 0;
|
||||||
$.ajaxTimeout(500);
|
$.ajaxTimeout(500);
|
||||||
$.ajax({url: "data/name.php?wait=5", global: false, beforeSend: send, success: success, error: error, complete: function() {
|
$.ajax({url: "data/name.php?wait=5", global: false, beforeSend: send, success: success, error: error, complete: function() {
|
||||||
|
var x = counter;
|
||||||
ok( counter.error == 1, 'Check failed request without globals' );
|
ok( counter.error == 1, 'Check failed request without globals' );
|
||||||
ok( counter.success == 0, 'Check failed request without globals' );
|
ok( counter.success == 0, 'Check failed request without globals' );
|
||||||
ok( counter.complete == 0, 'Check failed request without globals' );
|
ok( counter.complete == 0, 'Check failed request without globals' );
|
||||||
|
@ -331,4 +332,17 @@ test("$.ajax - beforeSend", function() {
|
||||||
start();
|
start();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
test("ajaxSetup()", function() {
|
||||||
|
expect(1);
|
||||||
|
stop();
|
||||||
|
$.ajaxSetup({
|
||||||
|
url: "data/name.php?name=foo",
|
||||||
|
success: function(msg){
|
||||||
|
ok( msg == 'bar', 'Check for GET' );
|
||||||
|
start();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
$.ajax();
|
||||||
|
});
|
||||||
|
|
Loading…
Reference in a new issue