jQuery.fn.autosave = function(pOptions){
	var defaults = { timeout:500, onSave:null, getData:null };
	var options = jQuery.extend(defaults, pOptions);
		
	//для смены сохраняемых данных
	this.session = new Array();
	this.session.push(new Array());
	
	var _this = this;
	this.change(function(){
		
		var sessionIdx = _this.session.length-1;
		var info = _this.session[sessionIdx];
		if(options.getData){
			info.push(options.getData(this.value));
		} else {
			info.push(this.value);	
		}		
		var infoIdx = info.length - 1;
		
		var data = {session:sessionIdx, info:infoIdx};
  	setTimeout(function(){
			var curLastIndex = _this.session[data.session].length-1;
			if(curLastIndex==data.info){
				if(options.onSave){
					var session = _this.session[data.session];					
					options.onSave(session[data.info]);										
				}
			}
		}, options.timeout);
	});
		
	
	//вообще другие данные уже редактируются	
	this.newSession = function(){	_this.session.push(new Array()); };	
	return this.newSession; 
}

