// Author: Bob Borst 
// Website: http://www.bobborst.com/
//
// If you use a this or a variant of this in your page, then please email (bob@bobborst.com)
// I just would like to know if anyone else finds this useful :-)
// These comments must be kept in the code. Thank you!

var fc = 0;
var fc1 = 25;
var fc2 = 14.5833333333333;

var fr1 = 0;
var fr2 = 0;

var fval1 = 0;
var fval2 = 0;


var numbsteps = 12;



function showDiv(divid)
{
setStyle(divid,'display','block');
fr1 = fr1 + fc1;
fr2 = fr2 + fc2;
setStyle(divid,'width',parseInt(fr1)+'px');
setStyle(divid,'height',parseInt(fr2)+'px');
setStyle(divid,'padding','5px');
setStyle(divid,'border','1px solid #000');

fc=fc+1
if (fc < numbsteps) {
t=setTimeout("showDiv('" + divid +"')",30)
}
else
{
fc=0;
document.forms.send2friend.youremail.focus();

}
}


function hideDiv(divid)
{
fr1 = fr1 - fc1;
fr2 = fr2 - fc2;

if(fr1<0){fr1=0}
if(fr2<0){fr2=0}

setStyle(divid,'width',parseInt(fr1)+'px');
setStyle(divid,'height',parseInt(fr2)+'px');


fc=fc+1

if (fc < numbsteps) {
t=setTimeout("hideDiv('" + divid +"')",30)
}
else
{
fr1 = 0;
fr2 = 0;

fval1 = 0;
fval2 = 0;
fc=0;

setStyle(divid,'width','0px');
setStyle(divid,'height','0px');
setStyle(divid,'border','none');
setStyle(divid,'display','none');
setStyle('send2friendlink', 'display', 'block');
createAJAX('/send2friend/form.asp?randval='+Math.floor(Math.random()*500000), 'friendform');

}
}

function zeroDiv(divid)
{
setStyle(divid,'width','0px');
setStyle(divid,'height','0px');
setStyle(divid,'border','none');
setStyle(divid,'display','none');
setStyle('send2friendlink', 'display', 'block');
createAJAX('/send2friend/form.asp?randval='+Math.floor(Math.random()*500000), 'friendform');
fr1 = 0;
fr2 = 0;

fval1 = 0;
fval2 = 0;
fc=0;
}




// number formatting function
// copyright Stephen Chapman 24th March 2006
// permission to use this function is granted provided
// that this copyright notice is retained intact

function formatNumber(num,dec,thou,pnt,curr1,curr2,n1,n2) {var x = Math.round(num * Math.pow(10,dec));if (x >= 0) n1=n2='';var y = (''+Math.abs(x)).split('');var z = y.length - dec;y.splice(z, 0, pnt);while (z > 3) {z-=3; y.splice(z,0,thou);}var r = curr1+n1+y.join('')+n2+curr2;return r;}



function setStyle(obj,style,value){
	getRef(obj).style[style]= value;
}

function rkb_setStyle(obj,style,value){
	getRef(obj).style[style]= value;
}

function getRef(obj){
	return (typeof obj == "string") ?
		 document.getElementById(obj) : obj;
}



function pem_setStyle(obj,style,value){
	pem_getRef(obj).style[style]= value;
}

function pem_getRef(obj){
	return (typeof obj == "string") ?
		 document.getElementById(obj) : obj;
}

function pem_setClass(id, newClass) {

identity=document.getElementById(id);

identity.className=newClass;

}



function showinfo (e,i,xoffset) {
 var o = document.getElementById(i);
 var y = 0;
 if (document.all) {
   y = event.clientY + document.body.scrollTop  -300;
   x = event.clientX + document.body.scrollLeft +0;
   x = 170;
   w = o.offsetWidth
  // w = o.offsetWidth - 8;  // without the -8, the div grows wider after every mouseover. strange.

 } else {
   y = e.pageY -300;
   x = e.pageX  +0;
	x = 170;
    w = o.offsetWidth - 8; 
  // w = o.offsetWidth - 8; // without the -8, the div grows wider after every mouseover. strange.
 }

 o.style.position="absolute";
 o.style.top = y + "px";
 o.style.left = x + "px";
 o.style.display = "block";
// w = o.offsetWidth// - 8; 
//  o.style.width = w;




// without the -8, the div grows wider after every mouseover. strange.
// alert("x:" + x + " Y:" +y);
}
function hideinfo (i) {
 var o = document.getElementById(i);
 o.style.display = 'none';
}



function clearAllForms()
{
  var i;
  for (i = 0; (i < document.forms.length); i++) {
    document.forms[i].reset();
  }
}


function intonly(field) {
var valid = "0123456789"
var ok = "yes";
var temp;
for (var i=0; i<field.value.length; i++) {
temp = "" + field.value.substring(i, i+1);
if (valid.indexOf(temp) == "-1") ok = "no";
}
if (ok == "no") {
alert("Please enter a number.");
field.focus();
field.select();
   }
}

function numbonly(field) {
var valid = "0123456789."
var ok = "yes";
var temp;
for (var i=0; i<field.value.length; i++) {
temp = "" + field.value.substring(i, i+1);
if (valid.indexOf(temp) == "-1") ok = "no";
}
if (ok == "no") {
alert("Please enter a number.");
field.focus();
field.select();
   }
}


function ignoreSpaces(string) {
var temp = "";
string = '' + string;
splitstring = string.split(" ");
for(i = 0; i < splitstring.length; i++)
temp += splitstring[i];
return temp;
}

function CheckMaxLength(Object, MaxLen)
{
    return (Object.value.length <= MaxLen);
  }




function popup (earl, name, widgets, specialsURL) 
{
	var url = earl;
	popupWin = window.open(url, name, widgets);
	popupWin.opener.top.name = "opener";
	popupWin.focus();
}


function switchImage(img_name, img_src)
   {
   document[img_name].src = img_src;
   }

function closepopup(){

	if(!popupWin || popupWin.closed){
	
	} else {
	popupWin.close();
	}
}




function loadFragmentInToElement(fragment_url, element_id) {
    var element = document.getElementById(element_id);
  /* element.innerHTML = '<p><em>Loading ...</em></p>'; */
    xmlhttp.open("GET", fragment_url);
    xmlhttp.onreadystatechange = function() {
        if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
            element.innerHTML = xmlhttp.responseText;
        }
    }
    xmlhttp.send(null);
}

function loadFragmentInToElement2(fragment_url, element_id) {
    var element = document.getElementById(element_id);
  /* element.innerHTML = '<p><em>Loading ...</em></p>'; */
    xmlhttp.open("GET", fragment_url);
    xmlhttp.onreadystatechange = function() {
        if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
            element.innerHTML = xmlhttp.responseText;
        }
    }
    xmlhttp.send(null);
}





function createRequestObject()
{
	var request_;
	var browser = navigator.appName;
	if(browser == "Microsoft Internet Explorer")
		{
		request_ = new ActiveXObject("Microsoft.XMLHTTP");
		}
	else{
		request_ = new XMLHttpRequest();
		}
	return request_;
}
	
var http = new Array();
function createAJAX(fragment_url, element_id){
var curDateTime = new Date();
var ranNum= Math.floor(Math.random()*5000);
curDateTime = curDateTime + ranNum;
http[curDateTime] = createRequestObject();
http[curDateTime].open("get", fragment_url);
http[curDateTime].onreadystatechange = function()
	{
		if (http[curDateTime].readyState == 4)
		{
			if (http[curDateTime].status == 200 || http[curDateTime].status == 304)
			{
			var response = http[curDateTime].responseText;
			document.getElementById(element_id).innerHTML = response;
			}
		}
	}
	http[curDateTime].send(null);
}


	
function reloadcaptcha(){

createAJAX('/captcha/getcap.asp', 'capimg')


}

function send2friend(){

document.write('<div style="position:absolute;  z-index:10; width:0px; height:0px; left: 0px; top: 0px; overflow:hidden; background-image:url(\'/images/fff90.png\');" id="send2friend">');
document.write('<div style="width: 400px; height: 200px;" id="friendform">');
document.write('<h2>Send to a friend</h2>');
document.write('<form name="send2friend" action="./" method="get">');
document.write('  <div class="row" style="white-space:nowrap">');
document.write('    <span class="labelreq"><label for="youremail">Your Email</label></span>');
document.write('    <span class="input"><input type="text" size="19" name="youremail" id="youremail"></span>');
document.write('  </div>');
document.write('  <div class="row" style="white-space:nowrap">');
document.write('     <span class="labelreq"><label for="friendemail">Your Friend\'s Email</label></span>');
document.write('    <span class="input"><input  type="text" size="19" name="friendemail" id="friendemail"></span>');
document.write('  </div>');
document.write('<div class="row" style="white-space:nowrap">');
document.write('<input type="button" name="cancel" value="Close"  class="button" onclick="hideDiv(\'send2friend\');">');
document.write('<input type="button" name="submitsend" class="button" value="Send" onclick="createAJAX(\'/send2friend/process.asp?youremail=\'+encodeURIComponent(document.forms.send2friend.youremail.value)+\'&friendemail=\'+encodeURIComponent(document.forms.send2friend.friendemail.value)+\'&fullurl=\'+encodeURIComponent(document.location)+\'&pagetitle=\'+encodeURIComponent(document.title)+\'&randval=\'+Math.floor(Math.random()*500000), \'friendform\'); ">');
document.write('</div>');
document.write('<span class="tiny">');
document.write('<br>');
document.write('Your email and your friend\'s email will not be added to<br>');
document.write('any list of any sort.  I hate spam as much as you do.</span></form>');
document.write('</div>');
document.write('</div>');


}

function emailme(){
	
	document.write('Questions or comments? <a href="mailto:bob@bobborst.com">Drop me a line<\/a> ');
	
}

if (screen.width<=800){

var headID = document.getElementsByTagName("head")[0];         
var cssNode = document.createElement('link');
cssNode.type = 'text/css';
cssNode.rel = 'stylesheet';
cssNode.href = '/inc/style/screen2009800.css';
cssNode.media = 'screen';
headID.appendChild(cssNode);
}

function randNumb ( n )
{
  return ( Math.floor ( Math.random ( ) * n + 1 ) );
}

 var ie = document.all;
      var timeoutId;
      var timeoutObj;

      document.onmouseover = function(e) {
        var obj = ie ? event.srcElement : e.target;
        if (obj.className=='fblike fl') {
          timeoutObj = obj;
          timeoutId = setTimeout("delay()", 1500);
        }
      }
      
      document.onmouseout = function(e) {
        var obj = ie ? event.srcElement : e.target;
        if ((obj.className=='fblike fl') && timeoutId )
          clearTimeout(timeoutId);
      }

      function delay() {
        setStyle('fblike', 'height', '80px');
      }


