/// 
//  jquery.linkchecker.js
//  
//  
//  Created by Ken on 2008-07-14.
//  Copyright 2008 Ken. All rights reserved.
// 
// original @author Anton Sidashin ( troy at simix dot ru )


// HISTORY
// 090506 CHANGE relative position to linkchecker.php has changed
// 090410 CHANGE checkScript relatief gemaakt (http://www.leveltendesign.com/solution/error-access-restricted-uri-denied-when-making-ajax-cal)


jQuery.fn.linkChecker = function(settings) {  
	if(!this.length) return;
	settings = jQuery.extend({																
					linksAtOnce: 2,
//					checkScript: 'http://nethome.be/_php/linkchecker.php',
					checkScript: '../php/linkchecker.php',
					activeClass: 'active',
					inactiveClass: 'inactive',
					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);
			}
		});				
	}
}

