// Default variables 

var iTimerID = 0;
var currText = 0;
var actButton = "";

// Browser detect *********************************************************************************

var browserN4 = false;
var browserIE = false;
var browserN6 = false;

if(document.layers){
	browserN4 = true;
} else if(document.all) {
	browserIE = true;
} else if(document.getElementById) {
	browserN6 = true;
}

// Style sheet selected based on browser **********************************************************

function writeStyleLink(){
	if(browserN4){myStyle="style_n4.css";}else{myStyle="style.css";}
	var browserStyle = "<link rel='STYLESHEET' type='text/css' href='jscss/" + myStyle + "'>";
	var printStyle = "<link rel='STYLESHEET' type='text/css' href='jscss/print.css'>";
	document.write(browserStyle);
	if(FORM_DATA ['printable'])document.write(printStyle);
}

function writePrintReturn(loc){
	strLoc = new String(loc) // creates a String object
	newLoc = strLoc.replace("?printable=1", "");
	//if(FORM_DATA ['printable'])document.write('<div align="right"><img src="images/bluleftarrow.gif" width=6 height=9 alt="" border="0">&nbsp;<a href="' + newLoc + '" class="returnprint">return to web formatted page</a></div>');
	if(FORM_DATA ['printable'])document.write('<table border="0" cellspacing="0" cellpadding="0" align="right"><tr><td><img src="images/bluleftarrow.gif" width=6 height=9 hspace=4 alt="" border="0"></td><td><a href="' + newLoc + '" class="returnprint">return to web formatted page</a></td></tr></table>');
}

// Search Form validation *************************************************************************

var errColor = "#ffdddd";
var focusColor = "#b4e4ff";
var blurColor = "#edf3fd";

function validate(form) {
	var msg = "";
	if(!validName(form.rname.value)){bgChange(form.rname,errColor);msg += "* Recipient Name\n";}
	if(!validEmail(form.email.value)){bgChange(form.email,errColor);msg += "* Recipient Email\n";}
	if(!validName(form.sname.value)){bgChange(form.sname,errColor);msg += "* Your Name\n";} 
	if (msg != "") {
		alert("The following fields were not completed correctly: \n\n" + msg);
		return false;
	} else {
		form.validated.value = "true";
		return true;
	}
}

function validName(nameString) {RegExp = /^[A-Z]./i;return(RegExp.exec(nameString));}
function validEmail(emailString) {RegExp = /[\w\.\-]{2,}\@[\w\-]{2,}\.[a-z]{2,3}/i;return(RegExp.exec(emailString));}
function bgChange(myField,myColor) {if (!document.layers){myField.style.background = myColor;}}
	
// Image preload and rollovers ********************************************************************

function preload0() {
	img1on = new Image();
	img1on.src ="images/0b_about_o.gif";
	img1off = new Image();
	img1off.src ="images/0b_about.gif";
	
	img2on = new Image();
	img2on.src ="images/0b_products_o.gif";
	img2off = new Image();
	img2off.src ="images/0b_products.gif";
	
	img3on = new Image();
	img3on.src ="images/0b_sales_o.gif";
	img3off = new Image();
	img3off.src ="images/0b_sales.gif";
	
	img4on = new Image();
	img4on.src ="images/0b_contact_o.gif";
	img4off = new Image();
	img4off.src ="images/0b_contact.gif";		
}

function preload1() {
	img0on = new Image();
	img0on.src ="images/1b_home_o.gif";
	img0off = new Image();
	img0off.src ="images/1b_home.gif";
	
	img1on = new Image();
	img1on.src ="images/1b_about_o.gif";
	img1off = new Image();
	img1off.src ="images/1b_about.gif";
	
	img2on = new Image();
	img2on.src ="images/1b_products_o.gif";
	img2off = new Image();
	img2off.src ="images/1b_products.gif";
	
	img3on = new Image();
	img3on.src ="images/1b_sales_o.gif";
	img3off = new Image();
	img3off.src ="images/1b_sales.gif";
	
	img4on = new Image();
	img4on.src ="images/1b_contact_o.gif";
	img4off = new Image();
	img4off.src ="images/1b_contact.gif";
}

function imgOn(imgName) {
	if (document.images){document[imgName].src = eval(imgName + "on.src");}
}

function imgOff(imgName) {
	if (document.images) {document[imgName].src = eval(imgName + "off.src");}
}

function navstick(mybutton){
	currImg = "img" + mybutton;
	document[currImg].src = eval(currImg + "on.src");
	eval("img" + mybutton + "off.src = img" + mybutton + "on.src");

}

// Nav functions *********************************************************************************

function setArrow(x) {
	if(document.layers){
		coll = ".";
		sty = "";
	} else if(document.all) {
		coll = ".all.";
		sty = ".style";
	} else if(document.getElementById) {
		coll = '.getElementById("';
		sty = '").style';
	}
	
	A = eval("document" + coll + "divarrow" + sty);
	A.left = myImgPos + arrowPos[x];
}


function showdiv(i) {
		if(document.layers){
			eval("document.div" + i).visibility = 'visible';
		} else if(document.all) {
			eval("document.all.div" + i + ".style").visibility = 'visible';
		} else if(document.getElementById) {
			document.getElementById("div" + i).style.visibility = 'visible';
		}
}
  
function hidediv(i) {
	if(document.layers){
		eval("document.div" + i).visibility = 'hidden';
	} else if(document.all) {
		eval("document.all.div" + i + ".style").visibility = 'hidden';
	} else if(document.getElementById) {
		document.getElementById("div" + i).style.visibility = 'hidden';
	}
} 

function navOn(i) {	
	if(iTimerID)clearTimeout(iTimerID);
	actButton = i;
	var currImg = "img" + i;
	imgOn(currImg);
	setArrow(i);
	hidediv(0);
	showdiv(i);
	showdiv('arrow');	
}

function navOff(i) {
	var currImg = "img" + i;
	imgOff(currImg);
	hidediv('arrow');
	hidediv(i);
	//showdiv(0);		
	iTimerID = setTimeout("showdiv(0)",600);		
}

myUrl = new Array('index.html','about.html','products.html','sales.html','contact.html');
function jumpTo(i){window.location = myUrl[i];}

// ****** div positioning functions  

function getX(obj){
  if(document.layers){
  	return eval(obj).x;
	//return eval(obj).pageX;    // ************* x for image pos, pageX for layer pos
  } else {
  	return( obj.offsetParent==null ? obj.offsetLeft : obj.offsetLeft+getX(obj.offsetParent) );
  }
}

function getY(obj) {
	if(document.layers){
  		return eval(obj).y;     
		//return eval(obj).pageY;  //************* y for image pos, pageY for layer pos
	} else {
  		return( obj.offsetParent==null ? obj.offsetTop : obj.offsetTop+getY(obj.offsetParent) );
	}
}

function getMainX(myobj){
 var img = document.images['posImg0'];
 alert( getX(img) + "," + getY(img) );
 //return(getX(img));
}

// Random Image *************************************************************

pic = new Array;
pic[0] = "images/capitol.jpg";
pic[1] = "images/handshake.jpg";
pic[2] = "images/business.jpg";


picalt = new Array;
picalt[0] = "The Capitol building in Washington, D.C.";
picalt[1] = "Two people shaking hands";
picalt[2] = "Two people talking in a busy office";


//var totalpics = pic.length - 1;
var totalpics = pic.length;
var randomnumber;

function randomPic(mypage){
randomnumber=Math.floor(Math.random()*totalpics); // 0 to totalpics value
if (readCookie(mypage)){while (randomnumber == readCookie(mypage)) {randomnumber=Math.floor(Math.random()*totalpics);}}
}

// Cookie functions *******************************************************

// set days = 0 for expiration on session end

function createCookie(name,value,days)
{
	if (days)
	{
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name)
{
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++)
	{
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

function eraseCookie(name)
{
	createCookie(name,"",-1);
}

// GET Parsing Module *******************************************************

function createRequestObject() {
  
  FORM_DATA = new Object();
    // The Object ("Array") where our data will be stored.
  
  separator = ',';
    // The token used to separate data from multi-select inputs
  
  query = '' + this.location;
    // Get the current URL so we can parse out the data.
    // Adding a null-string '' forces an implicit type cast
    // from property to string, for NS2 compatibility.
    
  query = query.substring((query.indexOf('?')) + 1);
    // Keep everything after the question mark '?'.
  
  if (query.length < 1) { return false; }  // Perhaps we got some bad data?
  
  keypairs = new Object();
  numKP = 1;
    // Local vars used to store and keep track of name/value pairs
    // as we parse them back into a usable form.
    
  while (query.indexOf('&') > -1) {
    keypairs[numKP] = query.substring(0,query.indexOf('&'));
    query = query.substring((query.indexOf('&')) + 1);
    numKP++;
      // Split the query string at each '&', storing the left-hand side
      // of the split in a new keypairs[] holder, and chopping the query
      // so that it gets the value of the right-hand string.
  }

  keypairs[numKP] = query;
    // Store what's left in the query string as the final keypairs[] data.
  
  for (i in keypairs) {
    keyName = keypairs[i].substring(0,keypairs[i].indexOf('='));
      // Left of '=' is name.
    keyValue = keypairs[i].substring((keypairs[i].indexOf('=')) + 1);
      // Right of '=' is value.
    while (keyValue.indexOf('+') > -1) {
      keyValue = keyValue.substring(0,keyValue.indexOf('+')) + ' ' + keyValue.substring(keyValue.indexOf('+') + 1);
        // Replace each '+' in data string with a space.
    }
    
    keyValue = unescape(keyValue);
      // Unescape non-alphanumerics
      
    if (FORM_DATA[keyName]) {
      FORM_DATA[keyName] = FORM_DATA[keyName] + separator + keyValue;
        // Object already exists, it is probably a multi-select input,
        // and we need to generate a separator-delimited string
        // by appending to what we already have stored.
    } else {
      FORM_DATA[keyName] = keyValue;
        // Normal case: name gets value.
    }
  }

  return FORM_DATA;
}

FORM_DATA = createRequestObject();


  // This is the array/object containing the GET data.
  // Retrieve information with "FORM_DATA [ 'key' ] = value".



// Misc ***********************************************************************************

function writeBackTop(){
	//alert(getY(document.images['posImgBot']));
	currBot = getY(document.images['posImgBot']);
	if (currBot > 490) {
		if(document.layers){
			// document.divtop.display = 'inline'; //does not work
		} else if(document.all) {
			document.all.divtop.style.display = 'inline';
		} else if(document.getElementById) {
			document.getElementById("divtop").style.display = 'inline';
		}
	}
}

// Left Banner Pic on each page

animPic = new Array;
for (var i = 0; i <= 16; i++) { 
eval('animPic[' + i + '] = "images/leftpic' + i + '.jpg"');
}

var picNum = Math.round(Math.random() * (animPic.length - 1));
var rotateSpeed = 6000; // the time to rotate 1000 = 1 second

function showAnim() {
	/*if (readCookie('lastPicNum')){
		while (readCookie('lastPicNum')== picNum){picNum = Math.round(Math.random() * (animPic.length - 1));}
	}
	*/
	document.placeholder.src = animPic[picNum];
	if (picNum >= animPic.length - 1){picNum = 0;}else{picNum++};
	//picNum = Math.round(Math.random() * (animPic.length - 1));
	//createCookie('lastPicNum',picNum,0);
	setTimeout("showAnim()", rotateSpeed);
}

/*
var result = new Array();

function get_randoms(num, mymax) {
	//returns an array of random numbers ranging from 1 to max
	//num = no. of unique number
	//max = upper bound of random numbers
	var resultst = "";
	//var result = new Array();
	n = 0;
	while (n<num) {
		var random = get_random(mymax);
		if (resultst.indexOf(random) == -1) {
			resultst += random;
			if (n<num-1) resultst += " "; // if not the last draw, append a space as separator
			n++;
		}
	}
result = resultst.split(" ");
return result;
}

function get_random(mymax) {
//return random number ranging from 1 to max
return Math.ceil(Math.random() * mymax);
}

alert(get_randoms(10, 10));
alert(result[0]);
*/

function writeCurrYear() {
	var dt = new Date();
	var str = dt.getFullYear();
	document.write(str);
}
