var timer = 0;

var ExpaticaFavoriteJobs = {
		start: function() {
				$('#ajaxSave').bind('click' , ExpaticaFavoriteJobs.send);
		} ,

		send: function(event) {
				event.preventDefault();
				var arrParams = new Array();
				$('input.ajaxPersonalList').each(function() {
						if($(this).attr('checked')) {
								arrParams.push($(this).attr('value'));
						}
				});
				if(arrParams.length != 0) {
						$('#ajaxSave').css('background-image' , 'url(/img/saving.jpg)').css('width' , '75px');
						$.ajax({
								type: "GET" ,
								dataType: "json" ,
								url: '/favorites/new/id/' + arrParams.join(',') ,
								success: ExpaticaFavoriteJobs.end ,
								error: ExpaticaFavoriteJobs.error
						});
				}
		},

		end: function(data) {
				$('#ajaxSave').css('background-image' , 'url(/img/saved.jpg)').css('width' , '61px');
				$('input').attr('checked' , false);

				$.each(data , function (id) {
						$('input#ajax_' + data[id]).attr('checked' , true);
				});

				timer = window.setInterval(ExpaticaFavoriteJobs.reset , 2000);
		},

		error: function(object , string , errorType) {
				document.location = object.responseText;
		},

		reset: function() {
				$('#ajaxSave').css('background-image' , 'url(/img/save.jpg)').css('width' , '55px');
				timer = window.clearInterval(timer);
		}
};

$(window).load(function() {
	ExpaticaFavoriteJobs.start();
});