function formatcurrency(amount) {
	var i = parseFloat(amount);
	if(isNaN(i)) { i = 0.00; }
	var minus = '';
	if(i < 0) { minus = '-'; }
	i = Math.abs(i);
	i = parseInt((i + .005) * 100);
	i = i / 100;
	s = new String(i);
	if(s.indexOf('.') < 0) { s += '.00'; }
	if(s.indexOf('.') == (s.length - 2)) { s += '0'; }
	s = minus + s;
	return "$" + s;
}

function isDate(str) {
	// matches mm/dd/yyyy
	var aTmp = new Array();
	aTmp = str.split('/');
	if(aTmp.length == 3) {
		if(aTmp[0] < 0 || aTmp[0] > 12) {
			return false;
		}
		if(aTmp[1] < 0 || aTmp[1] > 31) {
			return false;
		}
		if(aTmp[2] < 1900) {
			return false;
		}
	}
	return str.match(/^\d{1,2}(\-|\/)\d{1,2}\1\d{4}$/);
}

function getElement(element) {
	if (document.getElementById) {
		return document.getElementById(element);
	}	
	else if (document.all) {
		return document.all(element);
	}
	else if (document.layers){
		return document.layers[element];
	}
	else {
		return null;
	}
}

function getDocElement(doc, element) {
	if (doc.getElementById) {
		return doc.getElementById(element);
	}	
	else if (doc.all) {
		return doc.all(element);
	}
	else if (doc.layers){
		return doc.layers[element];
	}
	else {
		return null;
	}
}

function setSpanText(id, text) {
	var spanObj = getElement(id);
	spanObj.innerHTML = text;
}

function trim(s) {
	s = s.replace( /^\s*/, "" );
	s = s.replace( /\s*$/, "" );
	return s;
}

function isNumeric(x) {
	var RegExp = /^(-)?(\d*)(\.?)(\d*)$/; 
	var result = x.match(RegExp);
	return result;
}

function checkNumber(el, allowBlank) {
	el.value = trim(el.value);
	el.value = (el.value).replace( /,/g, "" );
	if( el.value != '' && !isNumeric(el.value) ) {
		alert('Invalid number.  Please try again.');
		el.focus();
	}
}

function checkDate(el, allowBlank) {
	el.value = trim(el.value);
	el.value = (el.value).replace( /-/g, "\/" );
	if( el.value != '' && !isDate(el.value) ) {
		alert('Invalid date.  Please try again. Format MM/DD/YYYY');
		el.focus();
	}
}

function isVisible(thename) {
	obj = getElement(thename);
	if(obj == null) {
		tmpname = thename + '-0';
		obj = getElement(tmpname);
	}

	if(obj == null) {
		return false;
	} else {
		if(obj.style.display == "none") {
			return false;
		} else {
			return true;
		}
	}
}

function showSection(thename) {
	var i;

	objHdr = getElement(thename + '-HDR');
	if( objHdr != null) {
		objHdr.style.display = "";
	}

	obj = getElement(thename);
	if(obj == null) {
		i = 0;
		tmpname = thename + '-' + i;
		while( (obj = getElement(tmpname)) != null ) {
			obj.style.display = "";
			if(i > 1000) {
				break;
			}
			i++;
			tmpname = thename + '-' + i;
		}
	} else {
		obj.style.display = "";
	}
}

function hideSection(thename) {
	var i;

	objHdr = getElement(thename + '-HDR');
	if( objHdr != null) {
		objHdr.style.display = "none";
	}

	obj = getElement(thename);
	if(obj == null) {
		i = 0;
		tmpname = thename + '-' + i;
		while( (obj = getElement(tmpname)) != null ) {
			obj.style.display = "none";
			if(i > 1000) {
				break;
			}
			i++;
			tmpname = thename + '-' + i;
		}
	} else {
		obj.style.display = "none";
	}
}

function onChangeLitCategory(theval) {
	hideSection("select-marketing");
	hideSection("select-casehistory");
	hideSection("select-technical");

	switch(theval) {
	case "marketing":
		showSection("select-marketing");
		break;

	case "casehistory":
		showSection("select-casehistory");
		break;

	case "technical":
		showSection("select-technical");
		break;
	}

	onChangeLitTopic('View All', '');
	getElement("topicid-marketing").value = '';
	getElement("topicid-casehistory").value = '';
	getElement("topicid-technical").value = '';
}

function onChangeLitTopic(topic, topicid) {
	var i;
	var categoryid = getElement("categoryid").value;

	setSpanText('topic-header', topic);

	for(i = 0; i < aMarketingTopics.length; i++) {
		var tmpid = aMarketingTopics[i];
		if( topicid == tmpid || (categoryid == "marketing" && topicid == '') ) {
			showSection("row-marketing-" + tmpid);
		} else {
			hideSection("row-marketing-" + tmpid);
		}
	}

	for(i = 0; i < aCaseHistoryTopics.length; i++) {
		var tmpid = aCaseHistoryTopics[i];
		if( topicid == tmpid || (categoryid == "casehistory" && topicid == '') ) {
			showSection("row-casehistory-" + tmpid);
		} else {
			hideSection("row-casehistory-" + tmpid);
		}
	}

	for(i = 0; i < aTechnicalTopics.length; i++) {
		var tmpid = aTechnicalTopics[i];
		if( topicid == tmpid || (categoryid == "technical" && topicid == '') ) {
			showSection("row-technical-" + tmpid);
		} else {
			hideSection("row-technical-" + tmpid);
		}
	}

}


function validateLitForm(theform) {
	var i;
	var contact = trim(theform.contact.value);
	var company = trim(theform.company.value);
	var address = trim(theform.address.value);
	var city = trim(theform.city.value);
	var state = trim(theform.state.value);
	var zip = trim(theform.zip.value);
	var phone = trim(theform.phone.value);
	var email = trim(theform.email.value);

	var formelems = theform.elements;
	var havelit = false;
	for(i = 0; i < formelems.length; i++) {
		if( formelems[i].name.substr(0, 6) == 'litid-' ) {
			if( trim(formelems[i].value) != '' ) {
				havelit = true;
			}
		}
	}

	if( contact == '' || company == '' || address == '' || city == '' || state == '' || zip == '' || phone == '' || email == '') {
		alert('Please complete all required fields.');
	} else if( !havelit ) {
		alert('You must enter a Qty for at least one item to continue.');
	} else {
		theform.submit();
	}

}
