4 * Copyright (c) 2009 Fil (fil@rezo.net)
5 * Dual licensed under the MIT and GPL licenses:
6 * http://www.opensource.org/licenses/mit-license.php
7 * http://www.gnu.org/licenses/gpl.html
12 * Usage: $("form").autosave({options...});
13 * to use with SPIP's action/session.php
17 $.fn
.autosave = function(opt
) {
21 confirmstring
: 'Sauvegarder ?'
23 var save_changed = function(){
24 $('form.autosavechanged')
26 if (!opt
.confirm
|| confirm(opt
.confirmstring
)) {
27 var contenu
= $(this).serialize();
28 // ajoutons un timestamp
30 contenu
= contenu
+ "&__timestamp=" + d
.getTime();
33 'var': 'autosave_' + $('input[name=autosave]', this).val(),
37 }).removeClass('autosavechanged');
40 .bind('unload',save_changed
);
42 .bind('keyup', function() {
43 $(this).addClass('autosavechanged');
45 .bind('change', function() {
46 $(this).addClass('autosavechanged');
49 .bind('submit',function() {
51 /* trop agressif : exemple du submit previsu forum, ou des submit suivant/precedent d'un cvt multipage
52 on sauvegarde toujours, et le serveur videra quand il faudra */
53 /*$(this).removeClass('autosavechanged')*/;