mirror of
https://github.com/DataTables/DataTables.git
synced 2024-12-12 00:08:48 +01:00
85b923cff3
Updated: Now use jQuery's JSON parse function (in jQuery 1.4) rather than JSON.js Fixed: State saving cookie used single quote strings in places (in correct JSON). This has now been addressed, and a work around in place (replace) until a sufficient period has passed
96 lines
2.2 KiB
JavaScript
Executable File
96 lines
2.2 KiB
JavaScript
Executable File
// DATA_TEMPLATE: dom_data
|
|
oTest.fnStart( "Cookie callback" );
|
|
|
|
|
|
$(document).ready( function () {
|
|
var mPass;
|
|
/* Note that in order to be fully effective here for saving state, there would need to be a
|
|
* stringify function to serialise the data array
|
|
*/
|
|
|
|
oTest.fnTest(
|
|
"null by default",
|
|
function () {
|
|
$('#example').dataTable();
|
|
},
|
|
function () { return $('#example').dataTable().fnSettings().fnCookieCallback == null; }
|
|
);
|
|
|
|
oTest.fnTest(
|
|
"Number of arguments",
|
|
function () {
|
|
$('#example').dataTable( {
|
|
"bDestroy": true,
|
|
"bStateSave": true,
|
|
"fnCookieCallback": function (sName, oData, sExpires, sPath) {
|
|
mPass = arguments.length;
|
|
return sName + "=; expires=" + sExpires +"; path=" + sPath;
|
|
}
|
|
} );
|
|
},
|
|
function () { return mPass == 4; }
|
|
);
|
|
|
|
oTest.fnTest(
|
|
"Name",
|
|
function () {
|
|
$('#example').dataTable( {
|
|
"bDestroy": true,
|
|
"bStateSave": true,
|
|
"fnCookieCallback": function (sName, oData, sExpires, sPath) {
|
|
mPass = sName=="SpryMedia_DataTables_example_dom_data.php";
|
|
return sName + "=; expires=" + sExpires +"; path=" + sPath;
|
|
}
|
|
} );
|
|
},
|
|
function () { return mPass; }
|
|
);
|
|
|
|
oTest.fnTest(
|
|
"Data",
|
|
function () {
|
|
$('#example').dataTable( {
|
|
"bDestroy": true,
|
|
"bStateSave": true,
|
|
"fnCookieCallback": function (sName, oData, sExpires, sPath) {
|
|
mPass = typeof oData.iStart != 'undefined';
|
|
return sName + "=; expires=" + sExpires +"; path=" + sPath;
|
|
}
|
|
} );
|
|
},
|
|
function () { return mPass; }
|
|
);
|
|
|
|
oTest.fnTest(
|
|
"Expires",
|
|
function () {
|
|
$('#example').dataTable( {
|
|
"bDestroy": true,
|
|
"bStateSave": true,
|
|
"fnCookieCallback": function (sName, oData, sExpires, sPath) {
|
|
mPass = sExpires.match(/GMT/);
|
|
return sName + "=; expires=" + sExpires +"; path=" + sPath;
|
|
}
|
|
} );
|
|
},
|
|
function () { return mPass; }
|
|
);
|
|
|
|
oTest.fnTest(
|
|
"Path",
|
|
function () {
|
|
$('#example').dataTable( {
|
|
"bDestroy": true,
|
|
"bStateSave": true,
|
|
"fnCookieCallback": function (sName, oData, sExpires, sPath) {
|
|
mPass = sPath.match(/media\/unit_testing\/templates/);
|
|
return sName + "=; expires=" + sExpires +"; path=" + sPath;
|
|
}
|
|
} );
|
|
},
|
|
function () { return mPass; }
|
|
);
|
|
|
|
|
|
oTest.fnComplete();
|
|
} ); |