// Utility function to trim spaces from both ends of a string
function Trim(inString) {
  var retVal = "";
  var start = 0;
  while ((start < inString.length) && (inString.charAt(start) == ' ')) {
    ++start;
  }
  var end = inString.length;
  while ((end > 0) && (inString.charAt(end - 1) == ' ')) {
    --end;
  }
  retVal = inString.substring(start, end);
  return retVal;
}

function EmailTest(TheForm) {
var Temp = Trim(TheForm.Contact_email.value)
var EmailOk = true
var AtSym = Temp.indexOf('@')
var LAtSym = Temp.indexOf('@@')
var Period = Temp.lastIndexOf('.')
var Space = Temp.indexOf(' ')
var Length = Temp.length - 1   // Array is from 0 to length-1

if ((AtSym < 1) ||                     // '@' cannot be in first position
    (Period <= AtSym+1) ||              // Must be atleast one valid char btwn '@' and '.'
	(LAtSym != -1) ||               // Cannot be two '@' signs in email
	(Period == Length ) ||             // Must be atleast one valid char after '.'
    (Space  != -1))                    // No empty spaces permitted
   {
      EmailOk = false
   }
return EmailOk
}

function ValidateRequest(TheForm) {
var Temp = Trim(TheForm.Contact_message.value)
		if (Temp.length > 0) {
    		if (EmailTest(TheForm)) {
					return true;
			} else {
				alert('The Email address is invalid - please correct it.');
				return false;
			}
		} else {
			alert('Please enter a message.');
			return false;
		}
}



// The following code is appended JavaScript from Stickley.com/javascript.js
// Validate search box. Will generate error if it is blank, or left at default value
function validateSearch(form) {
	var form;
	var strReturn;
	var strQuery = form.q.value;
	if (strQuery == '' || strQuery == 'Search Keyword, Description, Item #' || strQuery == 'Search Collection') {
		alert('Please enter valid search criteria.');
		strReturn = false;
	} else {
		strReturn = true;
	}
	return strReturn;
}

function MM_validateForm() { //v4.0
  var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
  for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args[i]);
    if (val) { nm=val.name; if ((val=val.value)!="") {
      if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
        if (p<1 || p==(val.length-1)) errors+='- '+nm+' must contain a valid e-mail address.\n';
      } else if (test!='R') { num = parseFloat(val);
        if (isNaN(val)) errors+='- '+nm+' must contain a number.\n';
        if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
          min=test.substring(8,p); max=test.substring(p+1);
          if (num<min || max<num) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n';
    } } } else if (test.charAt(0) == 'R') errors += '- '+nm+' is required.\n'; }
  } if (errors) alert('The following error(s) occurred:\n'+errors);
  document.MM_returnValue = (errors == '');
}

// collapse a div
function switchMenu(obj)
{
var el = document.getElementById(obj);
	if(el.style.display != "block")	{
		el.style.display = "block";
	}
	else {
		el.style.display = "none";
	}
}