<!--

// ======================================================================================================================================================
// ======================================================================================================================================================
// ======================================================================================================================================================
// ======================================================================================================================================================
// GLOBAL GLOBAL GLOBAL GLOBAL GLOBAL GLOBAL GLOBAL GLOBAL GLOBAL GLOBAL GLOBAL GLOBAL GLOBAL GLOBAL GLOBAL GLOBAL GLOBAL GLOBAL GLOBAL GLOBAL GLOBAL GLO
// GLOBAL GLOBAL GLOBAL GLOBAL GLOBAL GLOBAL GLOBAL GLOBAL GLOBAL GLOBAL GLOBAL GLOBAL GLOBAL GLOBAL GLOBAL GLOBAL GLOBAL GLOBAL GLOBAL GLOBAL GLOBAL GLO
// global variables
var d = document;
var f = d.forms[0];
var b = d.body;
var w = window;
var s = window.screen;
var mj = f;
// identify browser
var IE=((navigator.appName == "Microsoft Internet Explorer") ? true : false);




// ======================================================================================================================================================
// ======================================================================================================================================================
// ======================================================================================================================================================
// ======================================================================================================================================================
// METHODS METHODS METHODS METHODS METHODS METHODS METHODS METHODS METHODS METHODS METHODS METHODS METHODS METHODS METHODS METHODS METHODS METHODS METHOD 
// METHODS METHODS METHODS METHODS METHODS METHODS METHODS METHODS METHODS METHODS METHODS METHODS METHODS METHODS METHODS METHODS METHODS METHODS METHOD
// return false method
function Kill(){ return false; }
// get query variable method
function getQueryVar(v){
	var q=window.location.search.substring(1);
	var vars=q.split("&");
	for(var i=0;i<vars.length;i++){
		var pair=vars[i].split("=");
		if(pair[0]==v){
			return pair[1]; }}}
// get element absolute position method
function findPos(obj){
	var curleft=curtop=0;
	if(obj.parentNode){
		if(obj.offsetParent){
			curleft=obj.offsetLeft;
			curtop=obj.offsetTop;
			while(obj=obj.offsetParent){
				curleft+=obj.offsetLeft;
				curtop+=obj.offsetTop; }}
			return[curleft,curtop]; }}
// find parent bool method
function findParent(objChild,objParent){
	var par=(objChild.parentNode) ? objChild.parentNode : null;
	while(par){
		if(par==objParent){ return true; }
		par=(par.parentNode) ? par.parentNode : null; }
	return false; }
// check for enter key method
function checkEnter(event){
	var characterCode;
	characterCode = (event && event.which) ? event.which : event.keyCode;
	if(characterCode==13){
		f.submit();
		return false; }
	else{ return true; }}
// clear for method	
function ClearForm(event){
	f.reset();
	document.location = document.location; }
// kill status message method
function KillStatus(event){ window.status = ""; return true; }
// hide links in element method	
function HideLinks(elem){
	for(x=0; x<document.all.length; x++){
		if(findParent(document.all[x],elem)){
			if(document.all[x].tagName == "A"){
				document.all[x].onmouseover = KillStatus;
				document.all[x].onmouseout = KillStatus; }}}}
// make links pop-ups in element method
function MakePopUps(elem){
	for(x = 0; x < document.all.length; x++){
		if(findParent(document.all[x],elem)){
			if(document.all[x].tagName == "A"){
				document.all[x].target = "_blank"; }}}}
// submit pop3 message from form method
function GoOutlook(body,subject,dept,addr){
	var msgBody=body.value.toString();
	var msgSubject=subject.value.toString();
	var msgTo=dept.value.toString();
	var msgAddress="mailto:"+msgTo+((msgSubject) ? "?Subject="+msgSubject : "")+((msgBody) ? "&Body="+msgBody : "");
	location=msgAddress;
	location="default.aspx"; }
// border table cells method
function borderCells(elem){
	for(x = 0; x < elem.rows.length; x++){
		if(x != 0){
			elem.rows[x].cells[0].style.border = "solid 1px #ff9900";
			elem.rows[x].cells[1].style.border = "solid 1px #ff9900"; }}}
// restore input to default method, set colors specific to site
function FixInput(event,elem){	
	elem.style.backgroundColor = 'White';
	elem.style.color = '#cc3399';
	elem.style.border = 'solid 1px #5D7B9D'; }
// check if father node contains child node
function Contains(father,child){	
	while(child.parentNode){
		if(child == father){return true;}
		child = child.parentNode; }
	return false; }




// ======================================================================================================================================================
// ======================================================================================================================================================
// ======================================================================================================================================================
// ======================================================================================================================================================
// OBJECTS OBJECTS OBJECTS OBJECTS OBJECTS OBJECTS OBJECTS OBJECTS OBJECTS OBJECTS OBJECTS OBJECTS OBJECTS OBJECTS OBJECTS OBJECTS OBJECTS OBJECTS OBJECT
// OBJECTS OBJECTS OBJECTS OBJECTS OBJECTS OBJECTS OBJECTS OBJECTS OBJECTS OBJECTS OBJECTS OBJECTS OBJECTS OBJECTS OBJECTS OBJECTS OBJECTS OBJECTS OBJECT
// clock object
function Clock(e){	
	this.tt = e;	
	this.UpdateTime = function(){
		var td = new Date();			
		var h,m,s;
		h = (td.getHours() > 12) ? (td.getHours() - 12) : td.getHours();
		h = (h == 0) ? 12 : h;
		h = (h > 9) ? h : ("0" + h);
		m = td.getMinutes();
		m = (m < 10) ? ("0" + m) : m;
		s = td.getSeconds();
		s = (s < 10) ? ("0" + s) : s;
		this.tt.innerHTML = h + ':' + m + ':' + s + ((td.getHours() > 9) ? " PM" : " AM"); }
	this.tt.style.cursor = "pointer";
	this.UpdateTime();
	setInterval("Clock.UpdateTime()",1000); }
// string dictionary object
function StringDictionary(){
	this.Keys = new Array();
	this.Values = new Array();
	this.Add = function(key,value){
		for(x = 0; x < this.Keys.length; x++){
			if(this.Keys[x] == key){
				this.Keys[x] = key;
				this.Values[x] = value;
				return; }}
		this.Keys[this.Keys.length] = key;
		this.Values[this.Values.length] = value; }
	this.Get = function(key){
		for(x = 0; x < this.Keys.length; x++){
			if(this.Keys[x] == key){ return this.Values[x]; }}
		alert('Error\n\nKey does not exist'); }}
// validator object
function Validator(){
	// Global Variables
	this.ErrBackColor;this.ErrFontColor;this.ErrBorderColor;	
	this.GoodBackColor;this.GoodFontColor;this.GoodBorderColor;
	this.ErrorLog = "";	
	// Element Colors
	this.ErrBackColor = this.ErrBorderColor = "#efadc8";
	this.ErrFontColor = "Black";
	this.GoodBackColor = this.GoodBorderColor = "#5D7B9D";	
	this.GoodFontColor = "#5D7B9D";	
	// Regular Expressions
	this.NameExpression = new RegExp("[^a-zA-Z' '\']{1,}");
	this.EmailExpression = new RegExp("^[a-zA-Z0-9_+-]+(\.[a-zA-Z0-9_+-]+)*@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.([a-zA-Z]{2,4})$");
	this.UserIDExpression = new RegExp("[]\"\'[\/~*(){}<>\\\\]{1,}");
	this.PhoneExpression = new RegExp("[0-9]{10}");
	this.PhoneOneExpression = new RegExp("[0-9]{3}");
	this.PhoneTwoExpression = new RegExp("[0-9]{4}");	
	this.CompanyExpression = new RegExp("[^a-zA-Z0-9' '\-]{1,}");
	this.AddressExpression = new RegExp("[]\-`\"\'[?\/~!@$%~&*(){}<>:;|+=,.'^'\\\\]{1,}");
	this.CityExpression = new RegExp("[^a-zA-Z' '\'.\-]");
	this.ZipExpression = new RegExp("[0-9]{5}");	
	// Page Valid Property
	this.IsValid = true;		
	// UserID Validation
	this.ValidateUserID = function(userID){
		if(userID.value == ""){
			this.ErrorLog += "Missing UserID\n";this.IsValid = false;this.SetElemBad(userID);return;}
		if(userID.value.match(this.UserIDExpression)){
			this.ErrorLog += "Invalid UserID\n";this.IsValid = false;this.SetElemBad(userID);}}
	// Email Address/UserName Validation
	this.ValidateEmail = function(emailAddress){
		if(emailAddress.value == ""){
			this.ErrorLog += "Missing Email Address/UserName\n";this.IsValid = false;this.SetElemBad(emailAddress);return;}
		if(!emailAddress.value.match(this.EmailExpression)){
			this.ErrorLog += "Invalid Email Address/UserName\n";this.IsValid = false;this.SetElemBad(emailAddress);}}	
	// PassWord Validation
	this.ValidatePassWord = function(passWord){
		if(passWord.value == ""){
			this.ErrorLog += "Missing PassWord\n";this.IsValid = false;this.SetElemBad(passWord);return;}		
		if(passWord.value.match(this.UserIDExpression)){
			this.ErrorLog += "Invalid PassWord\n";this.IsValid = false;this.SetElemBad(passWord);}}			
	// Validate Matching PassWords
	this.ValidateMatchingPassWords = function(password,pwdconfirm){
		if(password.value != pwdconfirm.value){
			this.IsValid = false;this.ErrorLog += "PassWords do not match\n";this.SetElemBad(password);this.SetElemBad(pwdconfirm);}}			
	// Empty Validation
	this.ValidateEmpty = function(empty,input){
		if(empty.value == ""){
			this.IsValid = false;this.ErrorLog += "No " + input + " submitted\n";this.SetElemBad(empty);}}	
	// Basic Name Validation
	this.ValidateName = function(name,input){
		if(name.value.match(this.NameExpression)){
			this.ErrorLog += "Invalid or missing " + input + "\n";this.IsValid = false;this.SetElemBad(name);}}	
	// Validate Company
	this.ValidateCompany = function(company){
		if(company.value != ""){
			if(company.value.match(this.CompanyExpression)){
				this.IsValid = false;this.ErrorLog += "Invalid Company name\n";this.SetElemBad(company);}}}	
	// Validate Address
	this.ValidateAddress = function(address,addresstwo){		
		var theAddress = address.value + addresstwo.value;		
		if(theAddress != ""){			
			if(theAddress.match(this.AddressExpression)){
				this.IsValid = false;this.ErrorLog += "Invalid Address\n";
				if(address.value != ""){
					if(address.value.match(this.AddressExpression)){
						this.SetElemBad(address);}}
				if(addresstwo.value != ""){
					if(addresstwo.value.match(this.AddressExpression)){
						this.SetElemBad(addresstwo);}}}}}
	// Validate City
	this.ValidateCity = function(city){
		if(city.value != ""){
			if(city.value.match(this.CityExpression)){
				this.IsValid = false;this.ErrorLog += "Invalid City\n";this.SetElemBad(city);}}}
	// Validate Zip
	this.ValidateZip = function(zip){
		if(zip.value != ""){		
			if(!zip.value.match(this.ZipExpression)){
				this.IsValid = false;this.ErrorLog += "Invalid Zip Code\n";this.SetElemBad(zip);
				return;}
			if(!zip.value.length > 5){
				this.IsValid = false;this.ErrorLog += "Invalid Zip Code\n";this.SetElemBad(zip);return;}}}	
	// Validate Phone Set
	this.ValidatePhone = function(phone,phonetwo,phonethree,name){		
		var phoneAll = phone.value + phonetwo.value + phonethree.value;
		if(phoneAll != ""){
			if(!phoneAll.match(this.PhoneExpression)){
				this.IsValid = false;this.ErrorLog += "Invalid " + name + "\n";
				if(!phone.value.match(this.PhoneOneExpression)){
					this.SetElemBad(phone);}
				if(!phonetwo.value.match(this.PhoneOneExpression)){
					this.SetElemBad(phonetwo);}
				if(!phonethree.value.match(this.PhoneTwoExpression)){
					this.SetElemBad(phonethree);}}}}	
	// Reset Error Log Method
	this.Reset = function(){
		this.ErrorLog = "Please Review the Following Errors\n\n";this.IsValid = true;}	
	// Set Element Bad Function
	this.SetElemBad = function(elem){
		elem.style.backgroundColor = this.ErrBackColor;
		elem.style.color = this.ErrFontColor;
		elem.style.border = "solid 1px " + this.ErrBorderColor; }}



	
// ======================================================================================================================================================
// ======================================================================================================================================================
// ======================================================================================================================================================
// ======================================================================================================================================================
// POPUPS POPUPS POPUPS POPUPS POPUPS POPUPS POPUPS POPUPS POPUPS POPUPS POPUPS POPUPS POPUPS POPUPS POPUPS POPUPS POPUPS POPUPS POPUPS POPUPS POPUPS POP
// POPUPS POPUPS POPUPS POPUPS POPUPS POPUPS POPUPS POPUPS POPUPS POPUPS POPUPS POPUPS POPUPS POPUPS POPUPS POPUPS POPUPS POPUPS POPUPS POPUPS POPUPS POP
// global popups variables
var htb=(document.getElementById('elemHelpFloatBox')) ? document.getElementById('elemHelpFloatBox') : null;
var htj=(document.getElementById('elemHelpFloatJar')) ? document.getElementById('elemHelpFloatJar') : null;
// activate help float popup
function ActHelp(event,c){
	htb.innerHTML=strings[c];
	htj.style.left=event.clientX+9;
	htj.style.top=(event.clientY-(htj.offsetHeight/2)-40);
	htj.style.visibility="visible"; }
// deactivate help float popup
function DeActHelp(event){ htj.style.visibility="hidden"; }
// sustain help float popup
function SustainHelp(event){
	htj.style.left=event.clientX+9;
	htj.style.top=(event.clientY-(htj.offsetHeight/2)-40); }
// activate error message float popup
function ActMsg(event,serverMsg){
	htb.innerHTML = serverMsg;
	htj.style.left=event.clientX+9;
	htj.style.top=(event.clientY-(htj.offsetHeight/2)-40);
	htj.style.visibility="visible"; }
// error popup for forms
// global error popup float variables
var tepu,tepum,md,mlb,mtb;
tepu = document.getElementById("elemPopUp");
tepum = document.getElementById("elemPopUpContent");
// show error float popup
function ShowErrorPopUp(theMsg){
	tepum.innerHTML = theMsg;
	PosErrorPopUp();
	document.body.onresize = PosErrorPopUp;
	tepu.style.visibility = "visible"; }
// hide error float popup
function HideErrorPopUp(event){ tepu.style.visibility = "hidden"; }
// positions error float popup
function PosErrorPopUp(){
	tepu.style.left = findPos(f)[0] + f.offsetWidth - tepu.clientWidth - 9;
	tepu.style.top = findPos(f)[1] + 9; }
// click admin msg popup to move
function ClickPopUpToMove(event,node){	
	var e=(event.srcElement) ? event.srcElement : (event.target) ? event.target : null;
	md = true;
	while(e.className != node.className){ e = e.parentNode; }
	mlb = event.clientX - findPos(e)[0];
	mtb = event.clientY - findPos(e)[1]; }
// unclick admin msg popup to move
function UnClickPopUpToMove(){ md = false; }
// drag admin msg popup to move
function DragPopUpToMove(event,node){
	if(md){
		node.style.left = event.clientX - mlb;
		node.style.top = event.clientY - mtb;
		node.blur(); }}
// global thumbs variables
var tdb,dt,ct;
// check for and set thumb float element (found in footer)
if(document.getElementById("edb")){
	 tdb = document.getElementById("edb");
	 tdb.style.visibility="hidden"; }
// show description thumb float method
function ShowDesc(event,elem){
	while(elem.className != "stprdbox"){elem = elem.parentNode;}		
	window.clearTimeout(dt);
	tdb.innerHTML = Descriptions[elem.id];
	if((event.clientX + 19 + tdb.offsetWidth) > (findPos(mj)[0] + mj.offsetWidth)){
		tdb.style.left = event.clientX - 19 - tdb.offsetWidth; }
	else{ tdb.style.left = event.clientX +19; }		
	tdb.style.top = event.clientY - (tdb.clientHeight/2) + document.body.scrollTop;
	dt = window.setTimeout("tdb.style.visibility='visible';",554); }
// hide description thumb float method
function HideDesc(event,elem){
	var to=(event.toElement) ? event.toElement : (event.relatedTarget) ? event.relatedTarget : null;					
	window.clearInterval(dt);
	dt = window.setTimeout("tdb.style.visibility='hidden';",554); }	
// fix product thumb sizes
function FixProdThumbWidths(){
	for(x=0;x<document.all.length;x++){
		if(document.all[x].className == "stprdbox"){
			var timg = document.all[x].childNodes[1].childNodes[0].childNodes[0];
			if(timg.offsetHeight > 99){ timg.style.height = "84px"; }
			if(timg.offsetWidth > 99){ timg.style.width = "84px"; }
			if(timg.offsetHeight < 69){ timg.style.margin = "29px auto 24px auto"; }
			if(timg.offsetHeight < 59){ timg.style.margin = "39px auto 29px auto"; }}}}




// ======================================================================================================================================================
// ======================================================================================================================================================
// ======================================================================================================================================================
// ======================================================================================================================================================
// FORMS FORMS FORMS FORMS FORMS FORMS FORMS FORMS FORMS FORMS FORMS FORMS FORMS FORMS FORMS FORMS FORMS FORMS FORMS FORMS FORMS FORMS FORMS FORMS FORMS
// FORMS FORMS FORMS FORMS FORMS FORMS FORMS FORMS FORMS FORMS FORMS FORMS FORMS FORMS FORMS FORMS FORMS FORMS FORMS FORMS FORMS FORMS FORMS FORMS FORMS
// view user method
function ViewUserSubmit(event){		
	var e=(event.srcElement) ? event.srcElement : (event.target) ? event.target : null;
	while(e.tagName != "TR"){ e = e.parentNode; }
	f.subElem.value = e.cells[0].innerHTML.toString();		
	f.submit(); }
// find user method
function FindUser(event){
	f.subElem.value = document.getElementById("elemFindUser").value;
	if(f.subElem.value){ f.submit(); }}	
// contact user method
function ContactUser(event){
	var e=(event.srcElement) ? event.srcElement : (event.target) ? event.target : null;
	while(e.tagName != "TABLE"){ e = e.parentNode; }
	f.subUserContact.value = e.rows[0].cells[1].innerHTML.toString();
	f.submit();
	event.cancelBubble = true; }	
// delete user method
function DeleteUser(event){
	var e=(event.srcElement) ? event.srcElement : (event.target) ? event.target : null;
	while(e.tagName != "TABLE"){ e = e.parentNode; }
	if(confirm("Are You Sure")){
		f.subUserDelete.value = e.rows[0].cells[1].innerHTML.toString();
		f.submit();
		event.cancelBubble = true; }}
// view user's cart method
function ViewUsersCart(event){
	var e=(event.srcElement) ? event.srcElement : (event.target) ? event.target : null;
	while(e.tagName != "TABLE"){ e = e.parentNode; }
	f.subViewCart.value = e.rows[0].cells[1].innerHTML;
	f.submit(); }
// delete user's cart method
function DeleteUsersCart(event){
	var e=(event.srcElement) ? event.srcElement : (event.target) ? event.target : null;
	while(e.tagName != "TABLE"){ e = e.parentNode; }
	if(confirm("Are You Sure?")){ f.subDeleteCart.value = e.ID; f.submit(); }}
// empty cart method
function EmptyCart(event){
	event.cancelBubble = true;
	if(confirm("Are You Sure?")){
		f.subEmpty.value = "true";
		f.submit(); }}
// update cart method
function UpdateCart(event){
	var e=(event.srcElement) ? event.srcElement : (event.target) ? event.target : null;
	event.cancelBubble = true;
	while(e.tagName != "TR"){ e = e.parentNode; }
	f.subUpdate.value = "true";
	f.subItemToUpdate.value = e.id;
	f.subItemUnits.value = e.cells[2].childNodes[0].value;
	f.submit(); }	
// delete item from cart method
function DeleteItemFromCart(event){
	var e=(event.srcElement) ? event.srcElement : (event.target) ? event.target : null;
	event.cancelBubble = true;
	while(e.tagName != "TR"){ e = e.parentNode; }
	if(confirm("Are You Sure?")){
		f.subDelete.value = "true";
		f.subItemToDelete.value = e.id;
		f.submit();	}}



		
// ======================================================================================================================================================
// ======================================================================================================================================================
// ======================================================================================================================================================
// ======================================================================================================================================================
// INITIALIZE INITIALIZE INITIALIZE INITIALIZE INITIALIZE INITIALIZE INITIALIZE INITIALIZE INITIALIZE INITIALIZE INITIALIZE INITIALIZE INITIALIZE INITIAL
// INITIALIZE INITIALIZE INITIALIZE INITIALIZE INITIALIZE INITIALIZE INITIALIZE INITIALIZE INITIALIZE INITIALIZE INITIALIZE INITIALIZE INITIALIZE INITIAL
// set context menu disable for multi-browser
if(IE){ document.oncontextmenu=Kill; }
else{ window.oncontextmenu=Kill; }
// check for submit elem
if(f.subElem != null){ f.subElem.value = ""; }
// hide status bar links
HideLinks(f);
// fix thumb sizes
FixProdThumbWidths();
// initialize clock
if(document.getElementById("uitime") != null){
	var Clock = new Clock(document.getElementById("uitime")); }

	
	
	
// ======================================================================================================================================================
// ======================================================================================================================================================
// ======================================================================================================================================================
// ======================================================================================================================================================

//-->
