/** @package Finder
*/

function bookmarkFinder(){
	var t = '123finder.com - domain name search engine';
	var u = 'http://www.123finder.com/';
    if (document.all) window.external.AddFavorite(u,t);
    else if (window.sidebar) window.sidebar.addPanel(t,u,'');
}

function JDomainFinder() {
	this.mPending = new Array();
	this.mURL = '';
}
JDomainFinder.prototype.verify = function ($pDomain,$pAuto){
	if ($pAuto) {
		requestPage(this.mURL+$pDomain+'&auto=1');
	} else {
		requestPage(this.mURL+$pDomain);
	} // fi
}
/** automatically find the domains in id */
JDomainFinder.prototype.queueDomains = function() { 
	var $vSpans = document.getElementsByTagName('span');
	var j=0;
	for (var i=0;i<$vSpans.length;i++) {
		if ($vSpans[i].id!='' && this.isDomain($vSpans[i].id)) {		
			this.mPending[j] = $vSpans[i].id;
			j++;
		} // fi
	} // rof
	//var_dump(this.mPending);
}
JDomainFinder.prototype.isDomain = function($pStr) {
	return ($pStr.match(/^\w+([\.-]?\w+)*(\.\w{2,4})+$/));
}

JDomainFinder.prototype.hasThisExt = function($pFullDomain,$pExt) {
	var $vPat = new RegExp($pExt+'$','g');
	return $pFullDomain.match($vPat);
}



JDomainFinder.prototype.verifyDomains = function() { 
	var $vDelay = 1000;
	for (var i=0;i<this.mPending.length;i++) {
		if (this.mPending[i]!='') {
			this.verify(this.mPending[i],true);
			this.mPending[i] = ''; // done w/ this one
			if (i<this.mPending.length-1) { // still have more
				var $vLeft = this.mPending.length-i+1;
				window.status=$vLeft+' domains waiting to be reverified';
				if (this.hasThisExt(this.mPending[i+1],'.org')) {
					$vDelay = 5000; // longer delay
				} // fi
				setTimeout('$vDom.verifyDomains()',$vDelay);
				break;
			} else {
				window.status='';
			} // fi
		} // fi
	} // rof
	
}
