<!--

/* DO NOT ALLOW SITE TO BE VIEWED IN FRAMES */
function killFrames(){
if (parent.frames.length > 0) { parent.location.href = location.href; }
}

/* EMAIL VALIDATION */
function isEmail(form)
{
var testing = true;
var formField = form.email.value;
var strLength = formField.length;
var ii = 1;
	if (formField.length <= '5') { testing = false; }
	else {	
	for (i = 0; i < formField.length; i++)
		{
        if (formField.indexOf(" ") != -1) { testing = false; }
		}
    while ((ii < strLength) && (formField.charAt(ii) != "@")) { ii++; }
    if ((ii >= strLength) || (formField.charAt(ii) != "@")) { testing = false; }
    else { ii += 2; }
    while ((ii < strLength) && (formField.charAt(ii) != ".")) { ii++; }
    if ((ii >= strLength - 2) || (formField.charAt(ii) != ".")) { testing = false; }
}
	if (testing == true) { return true; }
	else {
		if(testing == false) {
		alert("Please enter a valid email address.");
		return false;
		}
	}
}

/* CHECK IF FORM FIELD IS VALID DATE */
function isDate(item,field)
{
/* GET PIECES OF THE DATE */
for (var i=0; i< item.length; i++)
{
if(i <= 2 && item.charAt(i) == "/")
	{
	var mm = item.substring(0,i);
	var last = i;
	}
if(i > 2 && item.charAt(i) == "/")
	{
	var dd = item.substring((last +1),i);
	
	var yy = item.substring((i+1),item.length);
	}
}
/* CHECK FOR CORRECTLY PLACES SLASHES */
if(!yy)
	{
	alert("Please enter a valid "+field+" date. (e.g. 02/26/2002)");
	return false;
	}
/* CHECK FOR VALID MONTHS RANGE */
if((mm <= 0) || (mm >= 13))
	{
	alert("Please enter a valid month in your "+field+" date.");
	return false;
	}
/* CHECK FOR VALID DAYS RANGE */
if((dd <= 0) || (dd >= 32))
	{
	alert("Please enter a valid day in your "+field+" date.");
	return false;
	}
return true;
}

/* LIMIT INPUT CHARACTERS IN FORM ITEM */
function limChars(string,accept) {
for (var i=0, output='', valid=accept; i<string.length; i++)
	if (valid.indexOf(string.charAt(i)) != -1)
          output += string.charAt(i)
    return output;
}


/* CHECK IF BLANK FORM FIELD */
function isBlank(item,msg) {
if(item.value=="") {
	alert(msg);
	return false;
} else { return true; }
}

function checkPass(form)
{
if((form.admin_password.value == "") || (form.admin_confirm.value == ""))
	{
	alert('Please enter and confirm your new password.');
	return false;
	}
if(form.admin_password.value != form.admin_confirm.value)
	{
	alert('Please make sure you have confirmed your password correctly.');
	return false;
	}
return true;
}

function searchSel(field,valA,valB) {
if(field.value==valA) {
field.value=valB;
field.style.color = "000000";
}
}

function searchBlur(field,valA,valB) {
if(field.value==valB) {
field.value=valA;
field.style.color =  "818181";
}
}

/* CHECK IF FORM FIELD IS BLANK */
function isKeyword(field,msg,alt) {
if(field.value==""||(alt && field.value==alt)) {
	alert(msg);
	return false;
} else { return true; }
}

function valSearch(form) {
return (isKeyword(form.keywords,"Please enter your search terms.","< keywords >"));
}

/* ---------------------------- POPUP CODE ------------------------------ */

function show_text(object,text) {
	object.innerHTML=text;
}

function lib_bwcheck(){ /* Browsercheck (needed) */
	this.ver=navigator.appVersion
	this.agent=navigator.userAgent
	this.dom=document.getElementById?1:0
	this.opera5=this.agent.indexOf("Opera 5")>-1
	this.ie5=(this.ver.indexOf("MSIE 5")>-1 && this.dom && !this.opera5)?1:0; 
	this.ie6=(this.ver.indexOf("MSIE 6")>-1 && this.dom && !this.opera5)?1:0;
	this.ie4=(document.all && !this.dom && !this.opera5)?1:0;
	this.ie=this.ie4||this.ie5||this.ie6
	this.mac=this.agent.indexOf("Mac")>-1
	this.ns6=(this.dom && parseInt(this.ver) >= 5) ?1:0; 
	this.ns4=(document.layers && !this.dom)?1:0;
	this.bw=(this.ie6 || this.ie5 || this.ie4 || this.ns4 || this.ns6 || this.opera5)
	return this
}
var bw=new lib_bwcheck()

fromX = -60 /* How much from the actual mouse X should the description box appear? */
fromY = -40 /* How much from the actual mouse Y should the description box appear? */

/* Makes crossbrowser object. */
function makeObj(obj){								
   	this.evnt=bw.dom? document.getElementById(obj):bw.ie4?document.all[obj]:bw.ns4?document.layers[obj]:0;
	if(!this.evnt) return false
	this.css=bw.dom||bw.ie4?this.evnt.style:bw.ns4?this.evnt:0;	
   	this.wref=bw.dom||bw.ie4?this.evnt:bw.ns4?this.css.document:0;		
	this.writeIt=b_writeIt;																
	return this
}

/* A unit of measure that will be added when setting the position of a layer. */
var px = bw.ns4||window.opera?"":"px";

function b_writeIt(text){
	if (bw.ns4){this.wref.write(text);this.wref.close()}
	else this.wref.innerHTML = text
}

/* Capturing mousemove */
var descx = 0
var descy = 0
function popmousemove(e){descx=bw.ns4||bw.ns6?e.pageX:event.x; descy=bw.ns4||bw.ns6?e.pageY:event.y}

var oDesc;
/* Shows the messages */
function popup(loc_no) {
    if(oDesc){
		var text = eval("ce_loc["+loc_no+"]")
		oDesc.writeIt('<div class="clDescription">'+text+'</div>')
		if(bw.ie5||bw.ie6) descy = descy+document.body.scrollTop
		oDesc.css.width = "200px"
		oDesc.css.left = 200
		oDesc.css.top = 229
		oDesc.css.visibility = "visible"
    }
}
/* Hides it */
function popout(){
	if(oDesc) oDesc.css.visibility = "hidden"
}
function setPopup(){
   	if(bw.ns4)document.captureEvents(Event.MOUSEMOVE)
    document.onmousemove = popmousemove;
	oDesc = new makeObj('divDescription')
	oDesc.css.width = "1px"
}

// -->