/**
 * @author Anton Sidashin ( troy at simix dot ru )
 */


jQuery.fn.linkChecker = function(settings) {
	if(!this.length) return;
	settings = jQuery.extend({
															linksAtOnce: 2,
															checkScript: 'checklinks.php',
															//activeClass: 'active',
															activeClass: '<img src="download_green.png" />',
															//inactiveClass: 'inactive',
															inactiveClass: '<img src="download_red.png" />',
															timeout: 3
														}, settings);
	var urls = Array();
	this.each( function() {
		urls.push(this.href);
	} );

	while(urls.length) {
		linkSlice = Array();
		for(var i = 0; i<settings.linksAtOnce; i++) {
			if(urls.length) {
			 linkSlice.push(urls.shift());
			}
		}
		checkLinks(linkSlice, settings, this);
	}


	function checkLinks(urls, settings, jLinks) {
		jQuery.getJSON(settings.checkScript, {'links[]':urls, 'timeout':settings.timeout}, function(links){
			for(var i = 0; i<links.length; i++) {
				//jLinks.filter('[href^='+ links[i].href + ']').addClass(links[i].status == 'active' ? settings.activeClass : settings.inactiveClass);
				jLinks.filter('[href^='+ links[i].href + ']').html(links[i].status == 'active' ? settings.activeClass : settings.inactiveClass);
			}
		});
	}
}

