<!-- //Hide script from older browsers
// Define trim function
function stringTrim() {
  return this.replace(/^\s+/, '').replace(/\s+$/, '');
}
String.prototype.trim = stringTrim;

// Check email address
function validEmail(email) {
  invalidChars = " /:,;+=$#%&*";
  if (email == "") {
    return false;
  }
  for (i=0; i<invalidChars.length; i++) {
    badChar = invalidChars.charAt(i);
    if (email.indexOf(badChar,1) > -1) {
       return false;
    }
  }
  atPos = email.indexOf("@",1);
  if (atPos == -1) {
    return false;
  }
  if (email.indexOf("@",atPos+1) > -1) {
    return false;
  }
  periodPos = email.indexOf(".",atPos);
  if (periodPos == -1) {
    return false;
  }
  if (periodPos+2 > email.length) {
    return false;
  }
  return true;
}

// Check form input  
function validCustomerRegister() {  
  var objCustomerEmail = document.getElementById("txtCustomerEmail");
  if(!validEmail(objCustomerEmail.value.trim())) {
    alert("Please enter your valid email.");
    objCustomerEmail.focus();
    objCustomerEmail.select();
    return false;
  }
  var objCustomerPassword = document.getElementById("txtCustomerPassword");
  if(objCustomerPassword.value.trim().length < 6) {
    alert("Your password should be at least 6 characters.");
    objCustomerPassword.focus();
    objCustomerPassword.select();
    return false;
  }
  var objCustomerPasswordConfirm = document.getElementById("txtCustomerPasswordConfirm");
  if(objCustomerPassword.value != objCustomerPasswordConfirm.value) {
    alert("Your password entries do not match.");
    objCustomerPassword.focus();
    objCustomerPassword.select();
    return false;
  }     
  return true;
} 

// Check Order Status
function validCheckOrderStatus() {
  var objOrderEmail, objOrderID;
  objOrderEmail = document.getElementById("txtOrderEmail");
  if(!validEmail(objOrderEmail.value.trim())) {
	alert("Please enter your valid email address for your order.");
	objOrderEmail.focus();
	objOrderEmail.select();
	return false;
  }
  objOrderID = document.getElementById("txtOrderID");
  if(objOrderID.value.length < 10) {
	alert("Please enter your valid order ID.");
	objOrderID.focus();
	objOrderID.select();
	return false;
  }
  return true;
}

// Check form input  
function validCustomerLogin() {  
  var objCustomerEmail = document.getElementById("txtCustomerEmail");
  if(!validEmail(objCustomerEmail.value.trim())) {
    alert("Please enter your valid email.");
    objCustomerEmail.focus();
    objCustomerEmail.select();
    return false;
  }
  var objCustomerPassword = document.getElementById("txtCustomerPassword");
  if(objCustomerPassword.value.trim().length < 6) {
    alert("Your password should be at least 6 characters.");
    objCustomerPassword.focus();
    objCustomerPassword.select();
    return false;
  }
  return true;
} 

// Check form input  
function validCustomerEmail() {  
  var objCustomerEmail = document.getElementById("txtCustomerEmail");
  if(!validEmail(objCustomerEmail.value.trim())) {
    alert("Please enter your valid email address.");
    objCustomerEmail.focus();
    objCustomerEmail.select();
    return false;
  }
  return true;
} 

// Check form input  
function validCustomerProfile() {  
  var objCustomerFName = document.getElementById("txtCustomerFName");
  if(objCustomerFName.value.trim() == "") {
    alert("Please enter your forename.");
    objCustomerFName.focus();
    objCustomerFName.select();
    return false;
  }
  var objCustomerLName = document.getElementById("txtCustomerLName");
  if(objCustomerLName.value.trim() == "") {
    alert("Please enter your surname.");
    objCustomerLName.focus();
    objCustomerLName.select();
    return false;
  }  
  var objCustomerEmail = document.getElementById("txtCustomerEmail");
  if(!validEmail(objCustomerEmail.value.trim())) {
    alert("Please enter your valid email.");
    objCustomerEmail.focus();
    objCustomerEmail.select();
    return false;
  }
  return true;
} 

function validCustomerPassword() {
  //Format text alert (debugging)
  var objCustomerPasswordOld = document.getElementById("txtCustomerPasswordOld");
  if(objCustomerPasswordOld.value.trim().length < 6) {
    alert("Please enter your current password.");
    objCustomerPasswordOld.focus();
    objCustomerPasswordOld.select();
    return false;
  }
  var objCustomerPasswordNew = document.getElementById("txtCustomerPasswordNew");
  if(objCustomerPasswordNew.value.trim().length < 6) {
    alert("Please enter your new password.");
    objCustomerPasswordNew.focus();
    objCustomerPasswordNew.select();
    return false;
  }  
  //Validate new password confirmation later
  return true;
}

// Validate customer reorder
function validCustomerReorder() {
  form = document.form1;
  var objOrderItemIDs = form.cbxOrderItemIDs;
  var booChecked = false;
  if(objOrderItemIDs.length) {
     for(i=0;i<objOrderItemIDs.length;i++) {
      if(objOrderItemIDs[i].checked) {
        booChecked = true;
      }
    }     
  } else {
    if(objOrderItemIDs.checked) {
      booChecked = true;
    }
  }
  if(!booChecked) {
    alert("Please select products for reorder.")
    return false;  
  }
  return true;
}

// Check form input  
function validPassword() {  
  var objCustomerPassword = document.getElementById("txtCustomerPassword");
  if(objCustomerPassword.value.trim().length < 6) {
    alert("Your password should be at least 6 characters.");
    objCustomerPassword.focus();
    objCustomerPassword.select();
    return false;
  }
  return true;
} 

// Smart search
function smartSearch() {
  form = document.form1;
  var keyword = form.txtSearch.value;
  //Deleted by zhonghuaqiang for UK 20080422 begin
  //keyword = keyword.replace(/\W/g, " ");
  //keyword = keyword.replace(/ +/g, " ");    
  //Deleted by zhonghuaqiang for UK 20080422 end
  
  keyword = keyword.trim();
  if(keyword != "") {
    document.location.href = "search.aspx?keyword=" + keyword;
    return false;
  }
}

// Change search per page
function changeSearchPerPage(keyword) {
  form = document.form1;
  var perPage = form.ddlPerPage.value;
  document.location.href="search.aspx?keyword=" + keyword + "&perpage=" + perPage;
}

// Check keyword
function checkKeyword() {
  form = document.form1;
  form.onsubmit = function() {return smartSearch()};
  if(event.keyCode == 13) {
    //smartSearch();
    return false;
  } else {
    return true;
  }
}

// Convert invalid characters
function specialCharsConverter(inString) {
  var outString = inString;
  var charMidDot = String.fromCharCode(183);
  outString = outString.replace(/’/g, "'")
  outString = outString.replace(/–/g, "-")
  outString = outString.replace(/—/g, "-")
  outString = outString.replace(/•/g, charMidDot)
  return outString 
}

// Save and Preview
function updateDesign() {
  changeApproveAvailability(1);
  for(i=0;i<100;i++) {
    objTxtElement = document.getElementById("txtElementValue" + i);
    if(objTxtElement) {
      strElementValue = objTxtElement.value;
      if(strElementValue != "") {
        objTxtElement.value = specialCharsConverter(strElementValue);  
      }
    }
  }
  form = document.form1;
  form.txtNextStep.value = "0";
  form.submit();
}

// Approve Design
function approveDesign() {
  form = document.form1;
  // Need to change when phase 2 is ready
  if(form.txtApproveAvailability.value == 0) {
    alert("Please preview before approving your design.");
    return false;
  } else {
	for(i=0;i<100;i++) {
		objTxtElement = document.getElementById("txtElementValue" + i);
		if(objTxtElement) {
			strElementValue = objTxtElement.value;
			if(strElementValue != "") {
				objTxtElement.value = specialCharsConverter(strElementValue);  
			}
		}
	}
	MyMessage = "By approving, I understand that I am responsible for spelling. I " +
				"have checked all spelling and verify that it is correct. I am " +
				"completely satisfied with the layout and understand " +
				"that it will print as I see it here. I understand that I cannot make " +
				"any changes to my order once it is placed and assume all responsibility for any " +
				"typographical or content errors."
	if(msgOKCancel(MyMessage)) {
		form = document.form1;
		form.txtNextStep.value = "1";
		form.submit();
	}
  }
}

// Approve Design
function approveDesignWiArray() {
	setTxtElements();
	var MyArray = new Array()
	for(i=0;i<100;i++) {
		objTxtElement = document.getElementById("txtElement" + i);
		if(objTxtElement) {
			strElementValue = objTxtElement.value;
			if(strElementValue != "") {
				strElmentValue = specialCharsConverter(strElementValue)
				objTxtElement.value = strElementValue; 
			}
			MyArray[i] = strElementValue
		}
	}
	var MyArrayText = "";
	var MyArrayX = "";
	var MyArrayY = "";
	var MyArrayHAlign = "";
	var MyArrayFontFace = "";
	var MyArrayFontSize = "";
	var MyArrayTextColor = "";
	var MyArrayFontWeight = "";
	var MyArrayFontStyle = "";
	var MyArrayTextUnderline = "";
	var MyArrayBoxW = "";
	var MyArrayBoxH = "";
	for(i=0;i<100;i++) {
		objTxtElement = document.getElementById("txtElement" + i);
		objTxtElementX = document.getElementById("txtElementX" + i);
		objTxtElementY = document.getElementById("txtElementY" + i);
		objTxtElementHAlign = document.getElementById("txtElementHAlign" + i);
		objTxtElementFontFace = document.getElementById("txtElementFontFace" + i);
		objTxtElementFontSize = document.getElementById("txtElementFontSize" + i);
		objTxtElementTextColor = document.getElementById("txtElementTextColor" + i);
		objTxtElementFontWeight = document.getElementById("txtElementFontWeight" + i);
		objTxtElementFontStyle = document.getElementById("txtElementFontStyle" + i);
		objTxtElementTextUnderline = document.getElementById("txtElementTextUnderline" + i);
		objTxtElementBoxW = document.getElementById("txtElementBoxW" + i);
		objTxtElementBoxH = document.getElementById("txtElementBoxH" + i);
		if(objTxtElement) {
			MyArrayText += "[SRE2PRINT]" + MyArray[i] + "[/SRE2PRINT]";    
			MyArrayX += "[SRE2PRINT]" + objTxtElementX.value + "[/SRE2PRINT]";    
			MyArrayY += "[SRE2PRINT]" + objTxtElementY.value + "[/SRE2PRINT]"; 
			MyArrayBoxW += "[SRE2PRINT]" + objTxtElementBoxW.value + "[/SRE2PRINT]"; 
			MyArrayBoxH += "[SRE2PRINT]" + objTxtElementBoxH.value + "[/SRE2PRINT]"; 
			MyArrayHAlign += "[SRE2PRINT]" + objTxtElementHAlign.value + "[/SRE2PRINT]"; 
			MyArrayFontFace += "[SRE2PRINT]" + objTxtElementFontFace.value + "[/SRE2PRINT]"; 
			MyArrayFontSize += "[SRE2PRINT]" + objTxtElementFontSize.value + "[/SRE2PRINT]"; 
			MyArrayTextColor += "[SRE2PRINT]" + objTxtElementTextColor.value + "[/SRE2PRINT]"; 
			MyArrayFontWeight += "[SRE2PRINT]" + objTxtElementFontWeight.value + "[/SRE2PRINT]"; 
			MyArrayFontStyle += "[SRE2PRINT]" + objTxtElementFontStyle.value + "[/SRE2PRINT]"; 
			MyArrayTextUnderline += "[SRE2PRINT]" + objTxtElementTextUnderline.value + "[/SRE2PRINT]";  
		}    
	}
	document.getElementById("txtElementValues").value = MyArrayText;
	document.getElementById("txtElementXs").value = MyArrayX;
	document.getElementById("txtElementYs").value = MyArrayY;
	document.getElementById("txtElementHAligns").value = MyArrayHAlign;
	document.getElementById("txtElementFontFaces").value = MyArrayFontFace;
	document.getElementById("txtElementFontSizes").value = MyArrayFontSize;
	document.getElementById("txtElementTextColors").value = MyArrayTextColor;
	document.getElementById("txtElementFontWeights").value = MyArrayFontWeight;
	document.getElementById("txtElementFontStyles").value = MyArrayFontStyle;
	document.getElementById("txtElementTextUnderlines").value = MyArrayTextUnderline;
	document.getElementById("txtElementBoxWs").value = MyArrayBoxW;
	document.getElementById("txtElementBoxHs").value = MyArrayBoxH;  
	document.getElementById("txtNextStep").value = "1";
    document.form1.submit();
}

function validInitialApproval() {
  var objInitials = document.getElementById("txtInitials");
  if(objInitials.value.trim() == "") {
    alert("Please enter your initials to approve your design.");
    objInitials.focus();
    return false;
  }
  return true;
}

// Change Layout
function changeLayout(layoutID) {
  changeApproveAvailability(1);
  for(i=0;i<100;i++) {
    objTxtElement = document.getElementById("txtElementValue" + i);
    if(objTxtElement) {
      strElementValue = objTxtElement.value;
      if(strElementValue != "") {
        objTxtElement.value = specialCharsConverter(strElementValue);  
      }
    }
  }
  form = document.form1;
  form.txtNextStep.value = "0";
  form.txtLayoutID.value = layoutID + "";
  form.submit();
}

// Go to Side A
function gotoSideA() {
  for(i=0;i<12;i++) {
    objTxtElement = document.getElementById("txtElementValue" + i);
    if(objTxtElement) {
      strElementValue = objTxtElement.value;
      if(strElementValue != "") {
        objTxtElement.value = specialCharsConverter(strElementValue);  
      }
    }
  }
  form = document.form1;
  form.txtNextStep.value = "0";
  form.txtNextSide.value = "A";
  form.submit();
}

// Go to Side B
function gotoSideB() {
  for(i=0;i<12;i++) {
    objTxtElement = document.getElementById("txtElementValue" + i);
    if(objTxtElement) {
      strElementValue = objTxtElement.value;
      if(strElementValue != "") {
        objTxtElement.value = specialCharsConverter(strElementValue);  
      }
    }
  }
  form = document.form1;
  form.txtNextStep.value = "0";
  form.txtNextSide.value = "B";
  form.submit();
}

// Go to Side A
function gotoSideAWiArray() {
  var MyArray = new Array()
  setTxtElements();  
  for(i=0;i<100;i++) {
    objTxtElement = document.getElementById("txtElement" + i);
    if(objTxtElement) {
      strElementValue = objTxtElement.value;
      if(strElementValue != "") {
		strElmentValue = specialCharsConverter(strElementValue)
        objTxtElement.value = strElementValue; 
      }
      MyArray[i] = strElementValue
    }
  }
  var MyArrayText = "";
  var MyArrayX = "";
  var MyArrayY = "";
  var MyArrayHAlign = "";
  var MyArrayFontFace = "";
  var MyArrayFontSize = "";
  var MyArrayTextColor = "";
  var MyArrayFontWeight = "";
  var MyArrayFontStyle = "";
  var MyArrayTextUnderline = "";
  var MyArrayBoxW = "";
  var MyArrayBoxH = "";
  for(i=0;i<100;i++) {
    objTxtElement = document.getElementById("txtElement" + i);
    if(objTxtElement) {
      objTxtElementX = document.getElementById("txtElementX" + i);
      objTxtElementY = document.getElementById("txtElementY" + i);
      objTxtElementHAlign = document.getElementById("txtElementHAlign" + i);
      objTxtElementFontFace = document.getElementById("txtElementFontFace" + i);
      objTxtElementFontSize = document.getElementById("txtElementFontSize" + i);
      objTxtElementTextColor = document.getElementById("txtElementTextColor" + i);
      objTxtElementFontWeight = document.getElementById("txtElementFontWeight" + i);
      objTxtElementFontStyle = document.getElementById("txtElementFontStyle" + i);
      objTxtElementTextUnderline = document.getElementById("txtElementTextUnderline" + i);    
      objTxtElementBoxW = document.getElementById("txtElementBoxW" + i);
      objTxtElementBoxH = document.getElementById("txtElementBoxH" + i);
      MyArrayText += "[SRE2PRINT]" + MyArray[i] + "[/SRE2PRINT]";    
      MyArrayX += "[SRE2PRINT]" + objTxtElementX.value + "[/SRE2PRINT]";    
      MyArrayY += "[SRE2PRINT]" + objTxtElementY.value + "[/SRE2PRINT]"; 
	  MyArrayHAlign += "[SRE2PRINT]" + objTxtElementHAlign.value + "[/SRE2PRINT]"; 
	  MyArrayBoxW += "[SRE2PRINT]" + objTxtElementBoxW.value + "[/SRE2PRINT]"; 
	  MyArrayBoxH += "[SRE2PRINT]" + objTxtElementBoxH.value + "[/SRE2PRINT]"; 
      MyArrayFontFace += "[SRE2PRINT]" + objTxtElementFontFace.value + "[/SRE2PRINT]"; 
      MyArrayFontSize += "[SRE2PRINT]" + objTxtElementFontSize.value + "[/SRE2PRINT]"; 
      MyArrayTextColor += "[SRE2PRINT]" + objTxtElementTextColor.value + "[/SRE2PRINT]"; 
      MyArrayFontWeight += "[SRE2PRINT]" + objTxtElementFontWeight.value + "[/SRE2PRINT]"; 
      MyArrayFontStyle += "[SRE2PRINT]" + objTxtElementFontStyle.value + "[/SRE2PRINT]"; 
      MyArrayTextUnderline += "[SRE2PRINT]" + objTxtElementTextUnderline.value + "[/SRE2PRINT]";       
    }    
  }
  form = document.form1;
  if(form.txtElementValues) {
	form.txtElementValues.value = MyArrayText;
	form.txtElementXs.value = MyArrayX;
	form.txtElementYs.value = MyArrayY;
	form.txtElementHAligns.value = MyArrayHAlign;
    form.txtElementFontFaces.value = MyArrayFontFace;
	form.txtElementFontSizes.value = MyArrayFontSize;
	form.txtElementTextColors.value = MyArrayTextColor;
	form.txtElementFontWeights.value = MyArrayFontWeight;
	form.txtElementFontStyles.value = MyArrayFontStyle;
	form.txtElementTextUnderlines.value = MyArrayTextUnderline;
    form.txtElementBoxWs.value = MyArrayBoxW;
    form.txtElementBoxHs.value = MyArrayBoxH;
  }
  form.txtNextStep.value = "0";
  form.txtNextSide.value = "A";
  form.submit();
}

// Go to Side B
function gotoSideBWiArray() {
  var MyArray = new Array()
  setTxtElements();  
  for(i=0;i<100;i++) {
    objTxtElement = document.getElementById("txtElement" + i);
    if(objTxtElement) {
      strElementValue = objTxtElement.value;
      if(strElementValue != "") {
		strElmentValue = specialCharsConverter(strElementValue)
        objTxtElement.value = strElementValue; 
      }
      MyArray[i] = strElementValue
    }
  }
  var MyArrayText = "";
  var MyArrayX = "";
  var MyArrayY = "";
  var MyArrayHAlign = "";
  var MyArrayFontFace = "";
  var MyArrayFontSize = "";
  var MyArrayTextColor = "";
  var MyArrayFontWeight = "";
  var MyArrayFontStyle = "";
  var MyArrayTextUnderline = "";
  var MyArrayBoxW = "";
  var MyArrayBoxH = "";
  for(i=0;i<100;i++) {
    objTxtElement = document.getElementById("txtElement" + i);
    objTxtElementX = document.getElementById("txtElementX" + i);
    objTxtElementY = document.getElementById("txtElementY" + i);
    objTxtElementHAlign = document.getElementById("txtElementHAlign" + i);
    objTxtElementFontFace = document.getElementById("txtElementFontFace" + i);
    objTxtElementFontSize = document.getElementById("txtElementFontSize" + i);
    objTxtElementTextColor = document.getElementById("txtElementTextColor" + i);
    objTxtElementFontWeight = document.getElementById("txtElementFontWeight" + i);
    objTxtElementFontStyle = document.getElementById("txtElementFontStyle" + i);
    objTxtElementTextUnderline = document.getElementById("txtElementTextUnderline" + i);
    objTxtElementBoxW = document.getElementById("txtElementBoxW" + i);
    objTxtElementBoxH = document.getElementById("txtElementBoxH" + i);
    if(objTxtElement) {
    // Add later
      //if(MyArray[i] != "") {
		MyArrayText += "[SRE2PRINT]" + MyArray[i] + "[/SRE2PRINT]";    
		MyArrayX += "[SRE2PRINT]" + objTxtElementX.value + "[/SRE2PRINT]";    
		MyArrayY += "[SRE2PRINT]" + objTxtElementY.value + "[/SRE2PRINT]"; 
		MyArrayHAlign += "[SRE2PRINT]" + objTxtElementHAlign.value + "[/SRE2PRINT]"; 
		MyArrayBoxW += "[SRE2PRINT]" + objTxtElementBoxW.value + "[/SRE2PRINT]"; 
		MyArrayBoxH += "[SRE2PRINT]" + objTxtElementBoxH.value + "[/SRE2PRINT]"; 
		MyArrayFontFace += "[SRE2PRINT]" + objTxtElementFontFace.value + "[/SRE2PRINT]"; 
		MyArrayFontSize += "[SRE2PRINT]" + objTxtElementFontSize.value + "[/SRE2PRINT]"; 
		MyArrayTextColor += "[SRE2PRINT]" + objTxtElementTextColor.value + "[/SRE2PRINT]"; 
		MyArrayFontWeight += "[SRE2PRINT]" + objTxtElementFontWeight.value + "[/SRE2PRINT]"; 
		MyArrayFontStyle += "[SRE2PRINT]" + objTxtElementFontStyle.value + "[/SRE2PRINT]"; 
		MyArrayTextUnderline += "[SRE2PRINT]" + objTxtElementTextUnderline.value + "[/SRE2PRINT]";   
	  //}    
    }    
  }
  form = document.form1;
  form.txtElementValues.value = MyArrayText;
  form.txtElementXs.value = MyArrayX;
  form.txtElementYs.value = MyArrayY;
  form.txtElementHAligns.value = MyArrayHAlign;
  form.txtElementFontFaces.value = MyArrayFontFace;
  form.txtElementFontSizes.value = MyArrayFontSize;
  form.txtElementTextColors.value = MyArrayTextColor;
  form.txtElementFontWeights.value = MyArrayFontWeight;
  form.txtElementFontStyles.value = MyArrayFontStyle;
  form.txtElementTextUnderlines.value = MyArrayTextUnderline;
  form.txtElementBoxWs.value = MyArrayBoxW;
  form.txtElementBoxHs.value = MyArrayBoxH;
  //alert(MyArrayText);
  form = document.form1;
  form.txtNextStep.value = "0";
  form.txtNextSide.value = "B";
  form.submit();
}

// Change Design Side B
function changeDesignSideB(designIDSideB) {
  form = document.form1;
  form.txtDesignIDSideB.value = designIDSideB + "";
  form.submit();
}

// Change Design Side B w/o submission
function changeDesignSideBWoSubmission(designIDSideB) {
  form = document.form1;
  form.txtDesignIDSideB.value = designIDSideB + "";
  // Update radio selection
  if(form.rdoDesignIDSideB.length) {
    MyLength = form.rdoDesignIDSideB.length;
    for(i=0;i<MyLength;i++) {
      if(form.rdoDesignIDSideB[i].value == String(designIDSideB)) {
        form.rdoDesignIDSideB[i].checked = true;
      } else {
        form.rdoDesignIDSideB[i].checked = false;
      }
    }
  }
}

// Check Credit Card number
function validCCNumber(type, number) {
  validChars = "0123456789";
  for (i=0; i<number.length; i++) {
    positionChar = number.charAt(i);
    if (validChars.indexOf(positionChar,0) < 0) {
      return false;
    }   
  }   
  switch(type) {
    case "Visa":
      if (((number.length != 13) && (number.length != 16)) || (number.substr(0,1) != "4")) {
        return false;
      }
      break;
    case "MasterCard":
      if ((number.length != 16) || (parseInt(number.substr(0,2)) < 51) || (parseInt(number.substr(0,2)) > 55)) {
        return false;
      }
      break;
    case "AmericanExpress":
      if ((number.length != 15) || ((number.substr(0,2) != "34") && (number.substr(0,2) != "37"))) {
        return false;
      }
      break;
    case "Discover":
      if ((number.length != 16) || (number.substr(0,4) != "6011")) {
        return false;
      }
      break;
    default:
      alert("Please select a valid credit card.");   
      return false; 
      break;
  } 
  luhnTotal = 0  
  for (j=0; j<number.length; j++) {
    positionNum = parseInt(number.charAt(number.length-1-j));
    luhnTotal = luhnTotal + ((positionNum*(j%2+1)-1)%9+1);
  }
  if (luhnTotal%10 != 0) {
    return false;
  }
  return true;
}   

// Check credit card CID
function validCID(number) {
  validChars = "0123456789";
  if (number.length < 3) {
    return false;
  }
  for (i=0; i<number.length; i++) {
    positionChar = number.charAt(i);
    if (validChars.indexOf(positionChar,0) < 0) {
       return false;
    }   
  }           
  return true;
}   

function validPaymentWoEmail() {  
  // Get System Date
  sysDate = new Date();
  sysYear = sysDate.getFullYear();
  sysMonth = sysDate.getMonth()+1;  
  var objCreditCardType = document.getElementById("ddlCreditCardType");
  creditCardType = objCreditCardType.value;
  if (creditCardType == "") {
    alert("Please select your credit card type.");
    objCreditCardType.focus();
    return false;
  }     
  var objCreditCardNumber = document.getElementById("txtCreditCardNumber");
  creditCardNumber = objCreditCardNumber.value.trim();
  if (!validCCNumber(creditCardType, creditCardNumber)) {
    alert("Please make sure your credit card number is correct.");
    objCreditCardNumber.focus();
    return false;
  }    
  var objCreditCardMonth = document.getElementById("ddlCreditCardMonth");
  creditCardMonth = objCreditCardMonth.value;
  var objCreditCardYear = document.getElementById("ddlCreditCardYear");
  creditCardYear = objCreditCardYear.value;
  if (creditCardMonth == "" || creditCardYear == "" || parseInt(creditCardYear, 10) < sysYear-2000
  	|| (parseInt(creditCardYear, 10) == sysYear-2000 && parseInt(creditCardMonth, 10) < sysMonth)) {
    alert("Please select your credit card expiration date.");
    objCreditCardMonth.focus();
    return false;
  }  
  var objCreditCardCID = document.getElementById("txtCreditCardCID");
  creditCardCID = objCreditCardCID.value.trim();
  if (!validCID(creditCardCID)) {
    alert("Please enter your credit card CID.");
    objCreditCardCID.focus();
    return false;
  }      
  document.getElementById("btnSubmitOrder").disabled = true;
  return true;
} 

function validPaymentWiEmail() {  
  if(!validPaymentWoEmail()) {
    return false;
  }
  var objCustomerEmail = document.getElementById("txtCustomerEmail");
  if(!validEmail(objCustomerEmail.value.trim())) {
    alert("Please enter your valid email.");
    objCustomerEmail.focus();
    objCustomerEmail.select();
    return false;
  }
  document.getElementById("btnSubmitOrder").disabled = true;
  return true;
} 

//Only check email address
function validPaymentWiEmailWoCC() {  
  var objCustomerEmail = document.getElementById("txtCustomerEmail");
  if(!validEmail(objCustomerEmail.value.trim())) {
    alert("Please enter your valid email.");
    objCustomerEmail.focus();
    objCustomerEmail.select();
    return false;
  }
  //add by zhonghuaqiang 20080226 for legal begin
  var objcbTermsAndPolicy = document.getElementById("cbTermsAndPolicy");
  if (objcbTermsAndPolicy.checked == false) {
    alert("You must agree to terms and conditions before you can submit your order.");
    objcbTermsAndPolicy.focus();
    objcbTermsAndPolicy.select();
    return false;
  } 
  //add by zhonghuaqiang 20080226 for legal end
  document.getElementById("btnSubmitOrder").disabled = true;
  return true;
} 

//Check form input  
function validCustomerShipping() {  
  if (getElement("errFName").hasChildNodes()) {
    getElement("errFName").removeChild(getElement("errFName").firstChild);
  }
  if (getElement("errLName").hasChildNodes()) {
    getElement("errLName").removeChild(getElement("errLName").firstChild);
  }
  if (getElement("errAddressLine1").hasChildNodes()) {
    getElement("errAddressLine1").removeChild(getElement("errAddressLine1").firstChild);
  }
  if (getElement("errAddress").hasChildNodes()) {
    getElement("errAddress").removeChild(getElement("errAddress").firstChild);
  }
  if (getElement("errCity").hasChildNodes()) {
    getElement("errCity").removeChild(getElement("errCity").firstChild);
  }
  if (getElement("errState").hasChildNodes()) {
    getElement("errState").removeChild(getElement("errState").firstChild);
  }
  if (getElement("errZipCode").hasChildNodes()) {
    getElement("errZipCode").removeChild(getElement("errZipCode").firstChild);
  }
  if (getElement("errPhone").hasChildNodes()) {
    getElement("errPhone").removeChild(getElement("errPhone").firstChild);
  }
  
  var validateResult = true;
  var focusElement;
  
  var objShippingFName = getElement("txtShippingFName");
    
  if(objShippingFName.value.trim() == "") {
    getElement("errFName").appendChild(document.createTextNode("Please enter your forename."));
    focusElement = objShippingFName;
    validateResult = false;
  }
  
  var objShippingLName = getElement("txtShippingLName");
  if(objShippingLName.value.trim() == "") {
    document.all("errLName").appendChild(document.createTextNode("Please enter your surname."));
    if (!focusElement) {
        focusElement = objShippingLName;
    }
    validateResult = false;
  }
  var objShippingAddressLine1 = getElement("txtShippingAddressLine1");
  var strShippingAddressLine1 = objShippingAddressLine1.value.trim().toUpperCase();
  if(strShippingAddressLine1 == "") {
    document.all("errAddressLine1").appendChild(document.createTextNode("Please enter your address."));
    if (!focusElement) {
        focusElement = objShippingAddressLine1;
    }
    validateResult = false;
  } else if(strShippingAddressLine1.indexOf("PO BOX") != -1 ||
			strShippingAddressLine1.indexOf("P.O. BOX") != -1 ||
			strShippingAddressLine1.indexOf("P. O. BOX") != -1 ||
			strShippingAddressLine1.indexOf("P.O BOX") != -1 ||
			strShippingAddressLine1.indexOf("P.O.BOX") != -1 ||
			strShippingAddressLine1.indexOf("POST OFFICE BOX") != -1 ||
			strShippingAddressLine1.indexOf("P.O.B.") != -1 ||
			strShippingAddressLine1.indexOf("P.O.B") != -1 ||
			strShippingAddressLine1.indexOf("P. O. B.") != -1) {
    document.all("errAddress").appendChild(document.createTextNode("We cannot deliver to P.O. Boxes. Please verify your address."));
    if (!focusElement) {
        focusElement = objShippingAddressLine1;
    }
    validateResult = false;
  }
  var objShippingAddressLine2 = getElement("txtShippingAddressLine2");
  var strShippingAddressLine2 = objShippingAddressLine2.value.trim().toUpperCase();  
  if(strShippingAddressLine2.indexOf("PO BOX") != -1 ||
			strShippingAddressLine2.indexOf("P.O. BOX") != -1 ||
			strShippingAddressLine2.indexOf("P. O. BOX") != -1 ||
			strShippingAddressLine2.indexOf("P.O BOX") != -1 ||
			strShippingAddressLine2.indexOf("P.O.BOX") != -1 ||
			strShippingAddressLine2.indexOf("POST OFFICE BOX") != -1 ||
			strShippingAddressLine2.indexOf("P.O.B.") != -1 ||
			strShippingAddressLine2.indexOf("P.O.B") != -1 ||
			strShippingAddressLine2.indexOf("P. O. B.") != -1) {
    getElement("errAddress").appendChild(document.createTextNode("We cannot deliver to P.O. Boxes. Please verify your address. "));
    if (!focusElement) {
        focusElement = objShippingAddressLine2;
    }
    validateResult = false;
  }
  var objShippingCity = getElement("txtShippingCity");
  if(objShippingCity.value.trim() == "") {
    getElement("errCity").appendChild(document.createTextNode("Please enter your town/city."));
    if (!focusElement) {
        focusElement = objShippingCity;
    }
    validateResult = false;
  }
  // Added by Liang on 20080919 begin
  if(objShippingCity.value.trim().length > 25) {
    getElement("errCity").appendChild(document.createTextNode("Please shorten your town/city within 25 characters."));
    if (!focusElement) {
        focusElement = objShippingCity;
    }
    validateResult = false;
  }
  // Added by Liang on 20080919 end
  var objShippingState = getElement("txtShippingState");
  //update by zhonghuaqiang 20071120 for UK localization begin
  //if(objShippingState.value.trim().length != 2) {
  if(objShippingState.value.trim() == "") {
    //alert("Please enter your 2-char state abbreviation.");
    
    getElement("errState").appendChild(document.createTextNode("Please enter your county."));
    if (!focusElement) {
        focusElement = objShippingState;
    }
    validateResult = false;
  }
  //update by zhonghuaqiang 20071120 for UK localization end
  var objShippingZipCode = getElement("txtShippingZipCode");
  if(!validZipCode(objShippingZipCode.value.trim())) {
    getElement("errZipCode").appendChild(document.createTextNode("Please enter your valid postal code."));
    if (!focusElement) {
        focusElement = objShippingZipCode;
    }
    validateResult = false;
  }
  var objShippingPhone = getElement("txtShippingPhone");
  if(!validPhone(objShippingPhone.value.trim())) {
    getElement("errPhone").appendChild(document.createTextNode("Please enter your valid tel. number including area code."));
    if (!focusElement) {
        focusElement = objShippingZipCode;
    }
    validateResult = false;
  }        
  
  if (!validateResult) {
    focusElement.focus();
    focusElement.select();
  }
  return validateResult;
} 

// Check form input  
function validCustomerBilling() {  
  if (getElement("errFName").hasChildNodes()) {
    getElement("errFName").removeChild(getElement("errFName").firstChild);
  }
  if (getElement("errLName").hasChildNodes()) {
    getElement("errLName").removeChild(getElement("errLName").firstChild);
  }
  if (getElement("errAddressLine1").hasChildNodes()) {
    getElement("errAddressLine1").removeChild(getElement("errAddressLine1").firstChild);
  }
  if (getElement("errCity").hasChildNodes()) {
    getElement("errCity").removeChild(getElement("errCity").firstChild);
  }
  if (getElement("errState").hasChildNodes()) {
    getElement("errState").removeChild(getElement("errState").firstChild);
  }
  if (getElement("errZipCode").hasChildNodes()) {
    document.all("errZipCode").removeChild(getElement("errZipCode").firstChild);
  }
  if (getElement("errPhone").hasChildNodes()) {
    getElement("errPhone").removeChild(getElement("errPhone").firstChild);
  }
  
  var validateResult = true;
  var focusElement;

  var objBillingFName = document.getElementById("txtBillingFName");
  if(objBillingFName.value.trim() == "") {
    getElement("errFName").appendChild(document.createTextNode("Please enter your forename."));
    if (!focusElement) {
        focusElement = objBillingFName;
    }
    validateResult = false;
  }
  var objBillingLName = document.getElementById("txtBillingLName");
  if(objBillingLName.value.trim() == "") {
    getElement("errLName").appendChild(document.createTextNode("Please enter your surname."));
    if (!focusElement) {
        focusElement = objBillingLName;
    }
    validateResult = false;
  }
  var objBillingAddressLine1 = document.getElementById("txtBillingAddressLine1");
  if(objBillingAddressLine1.value.trim() == "") {
    getElement("errAddressLine1").appendChild(document.createTextNode("Please enter your address."));
    if (!focusElement) {
        focusElement = objBillingAddressLine1;
    }
    validateResult = false;
  }
  var objBillingCity = document.getElementById("txtBillingCity");
  if(objBillingCity.value.trim() == "") {
    getElement("errCity").appendChild(document.createTextNode("Please enter your town/city."));
    if (!focusElement) {
        focusElement = objBillingCity;
    }
    validateResult = false;
  }
  // Added by Liang on 20080919 begin
  if(objBillingCity.value.trim().length > 25) {
    getElement("errCity").appendChild(document.createTextNode("Please shorten your town/city within 25 characters."));
    if (!focusElement) {
        focusElement = objBillingCity;
    }
    validateResult = false;
  }
  // Added by Liang on 20080919 end
  var objBillingState = document.getElementById("txtBillingState");
  //update by zhonghuaqiang 20080111 for UK localization begin
  //if(objBillingState.value.trim().length != 2) {
  if(objBillingState.value.trim() == "") {
    getElement("errState").appendChild(document.createTextNode("Please enter your county."));
    if (!focusElement) {
        focusElement = objBillingState;
    }
    validateResult = false;
  }
  //update by zhonghuaqiang 20080111 for UK localization end  
  var objBillingZipCode = document.getElementById("txtBillingZipCode");
  if(!validZipCode(objBillingZipCode.value.trim())) {
    getElement("errZipCode").appendChild(document.createTextNode("Please enter your valid postal code."));
    if (!focusElement) {
        focusElement = objBillingZipCode;
    }
    validateResult = false;
  }
  var objBillingPhone = document.getElementById("txtBillingPhone");
  if(!validPhone(objBillingPhone.value.trim())) {
    getElement("errPhone").appendChild(document.createTextNode("Please enter your valid tel. number including area code."));
    if (!focusElement) {
        focusElement = objBillingPhone;
    }
    validateResult = false;
  }    
  
  if (!validateResult) {
    focusElement.focus();
    focusElement.select();
  }
    
  return validateResult;
} 

// Validate zip code
function validZipCode(input) {
  // Need to consider other countries (phase 2)
//  validChars = "0123456789-";
//  myLength = input.length;
//  if (myLength != 5 && myLength != 9 && myLength != 10) {
//    return false;
//  }
//  for (i=0; i<myLength; i++) {
//    positionChar = input.charAt(i);
//    if (validChars.indexOf(positionChar,0) < 0) {
//       return false;
//    }
//  }
  //update by zhonghuaqiang 20071120 for UK localization begin
  //var r = /^[A-Z]{1,2}\d+ \d[ABD-HJLNP-UW-Z]{2}$/g;
  var r = /^[A-Za-z]{1,2}\d[A-Za-z\d]? \d[ABD-HJLNP-UW-Zabd-hjlnp-uw-z]{2}$/g;
  //update by zhonghuaqiang 20071120 for UK localization end
  if (!input.match(r)) {
    return false;
  }
  return true;
}

//added by zhonghuaqiang for UK phone 20080313 begin
//var rUKphone = /^((\(?0\d{4}\)?\s+\d{3}\s?\d{3})|(\(?0\d{3}\)?\s+\d{3}\s?\d{4})|(\(?0\d{2}\)?\s+\d{4}\s?\d{4}))(\s?\#(\d{4}|\d{3}))?$/g;
//var rUKphoneM = /^(\+44\s?7\d{3}|\(?07\d{3}\)?)\s+\d{3}\s?\d{3}$/g;
//added by zhonghuaqiang for UK phone 20080313 end
// Validate phone number
function validPhone(input) {
  // Need to consider other countries (phase 2)
  validChars = "0123456789+#- ext.()";
  myLength = input.length;
  if (myLength < 8 || myLength > 21) {
    return false;
  }  
  
  for (i=0; i<myLength; i++) {
    positionChar = input.charAt(i);
    if (validChars.indexOf(positionChar,0) < 0) {
       return false;
    }
  }
  
  /*
  var validCharMatch = "(";
  if (input.charAt(0) != "0" ) {
    if (input.charAt(0) != validCharMatch) {
       return false;
    } else {
      if (input.charAt(1) != "0" ) {
       return false;      
      }
    }    
  }
  */
  
  //added by zhonghuaqiang for UK phone 20080313 begin
  //if (!input.match(rUKphone) && !input.match(rUKphoneM)) {
  //  return false;
  //}
  //added by zhonghuaqiang for UK phone 20080313 end
  return true;
}

// Check form input  
function validFreeSamples() {  
  var objFName = document.getElementById("txtFName");
  if(objFName.value.trim() == "") {
    alert("Please enter your forename.");
    objFName.focus();
    objFName.select();
    return false;
  }
  var objLName = document.getElementById("txtLName");
  if(objLName.value.trim() == "") {
    alert("Please enter your surname.");
    objLName.focus();
    objLName.select();
    return false;
  }
  var objAddressLine1 = document.getElementById("txtAddressLine1");
  if(objAddressLine1.value.trim() == "") {
    alert("Please enter your address.");
    objAddressLine1.focus();
    objAddressLine1.select();
    return false;
  }
  var objCity = document.getElementById("txtCity");
  if(objCity.value.trim() == "") {
    alert("Please enter your town/city.");
    objCity.focus();
    objCity.select();
    return false;
  }
  var objState = document.getElementById("txtState");
  if(objState.value.trim() == "") {
    alert("Please enter your country.");
    objState.focus();
    objState.select();
    return false;
  }
  var objZipCode = document.getElementById("txtZipCode");
  if(!validZipCode(objZipCode.value.trim())) {
    alert("Please enter your valid postal code.");
    objZipCode.focus();
    objZipCode.select();
    return false;
  }
  var objEmail = document.getElementById("txtEmail");
  if(!validEmail(objEmail.value.trim())) {
    alert("Please enter your valid email.");
    objEmail.focus();
    objEmail.select();
    return false;
  }        
  return true;
} 

// Check form input  
function validContactUs() { 
  var objFName = document.getElementById("txtFName");
  if(objFName.value.trim() == "") {
    alert("Please enter your forename.");
    objFName.focus();
    objFName.select();
    return false;
  }
  var objLName = document.getElementById("txtLName");
  if(objLName.value.trim() == "") {
    alert("Please enter your surname.");
    objLName.focus();
    objLName.select();
    return false;
  }
  var objEmail = document.getElementById("txtEmail");
  if(!validEmail(objEmail.value.trim())) {
    alert("Please enter your valid email.");
    objEmail.focus();
    objEmail.select();
    return false;
  }        
  var objMessage = document.getElementById("txtMessage");
  if(objMessage.value.trim() == "") {
    alert("Please enter your message.");
    objMessage.focus();
    objMessage.select();
    return false;
  }  
  return true;
} 

function applyFontFace(intElementNo) {
  objCbx = document.getElementById("cbxApplyFontFace")
  if(objCbx.checked) {
    strFontFace = document.getElementById("txtElementFontFace0").value;
	for(i=1;i<intElementNo;i++) {
	  document.getElementById("txtElementFontFace" + i).value = strFontFace;
	}
  }
}

// Live chat
function openChat() {
  var lpButtonCTTUrl = 'http://server.iad.liveperson.net/hc/25839400/?cmd=file&file=visitorWantsToChat&site=25839400&imageUrl=http://server.iad.liveperson.net/hcp/Gallery/ChatButton-Gallery/English/General/1a&referrer='+ escape(document.location); 
  lpButtonCTTUrl = (typeof(lpAppendVisitorCookies) != 'undefined' ? lpAppendVisitorCookies(lpButtonCTTUrl) : lpButtonCTTUrl); 
  window.open(lpButtonCTTUrl,'chat25839400','width=475,height=400,resizable=yes');
}

function openGrayarc(){
var GrayarcURL="http://www.grayarc.com";
window.open(GrayarcURL,"Grayarc" );
}
function openDrawingBoard(){
var DrawingBoardURL="http://www.DrawingBoard.com";
window.open(DrawingBoardURL,"DrawingBoard");
}

// Message box
function msgOKCancel(message) {
  OKOrCancel = confirm(message); 
  if (!OKOrCancel) {
    return false;
  } else {
    return true;
  }
}

function changeApproveAvailability(myValue) {
  form = document.form1;
  myImgSrc = document.getElementById("imgApprove1").src;
  if(myValue == 0) {
  	form.txtApproveAvailability.value = 0;
  	if(myImgSrc.indexOf("Approve") > 0) {
      strImageSrc = "images/btnPreApprove.gif";
    } else {
      strImageSrc = "images/btnStudioPreNext.gif";
    }
  } else {
	form.txtApproveAvailability.value = 1;
	if(myImgSrc.indexOf("Approve") > 0) {
	  strImageSrc = "images/btnApprove1.gif";
	} else {
	  strImageSrc = "images/btnStudioNext.gif";
	}
  }
  // change image
  document.getElementById("imgApprove1").src=strImageSrc;
  if(document.getElementById("imgApprove2")) {
	document.getElementById("imgApprove2").src=strImageSrc;
  }  
}

//Open a learn-how window
function learnHowToUpload() {	
	window.open('LearnHowToUpload.aspx', '', 'width=600,height=475,resizable,scrollbars');
}

//Switch image (zoom)
function switchImg(img1, img2, i) {
	var objDivZoomImg, objImg, objImgZoom;
	objDivZoomImg = document.getElementById("divZoomImg");
	objImg = document.getElementById("img" + i);
	objImgZoom = document.getElementById("imgZoom" + i);
	if(objImgZoom.src.indexOf("ZoomIn") > 0) {
		objDivZoomImg.style.display = "";
		objDivZoomImg.innerHTML = "abdad";
		//Need to be dynamic later.
		objDivZoomImg.style.left = 35;
		objDivZoomImg.style.top = document.body.scrollTop + 80;
		objDivZoomImg.innerHTML = "<a href=\"#\" onmouseover=\"this.style.cursor='-moz-zoom-out';\"" +
					 " onclick=\"switchImg('" + img1 + 
					 "', '" + img2 + "', " + i + ");return false;\">" +
					 "<img src=\"" + img2 + "\" style=\"border:solid 1px black;\">" +
					 "<img src=\"icons/ZoomOutTransparent.gif\" border=\"0\"></a>";
		objImgZoom.src = "icons/ZoomOutTransparent.gif";
	} else {
		objDivZoomImg.style.display = "none";
		objImgZoom.src = "icons/ZoomInTransparent.gif";
		objDivZoomImg.innerHTML = "";
	}
}

//Switch image (zoom)
function switchImgNew(img1, img2, objImg, e) {
    var objDivZoomImg, objImgZoom;
	objDivZoomImg = document.getElementById("divZoomImg");
	clearChildNodes(objDivZoomImg);
	
	if (!objPrevImg || objPrevImg.src == objImg.src) {
	    objPrevImg = objImg;
	} else {
	    objPrevImg.src = "icons/ZoomInTransparent.gif";
	    objPrevImg = objImg;
	}
	objImgZoom = objImg;
	//alert(objImgZoom.src);
	if(objImgZoom.src.indexOf("ZoomIn") > 0) {
		objDivZoomImg.style.display = "block";
		//alert(objImg.src);
		//Need to be dynamic later.
		var pstH = e.clientX + 10;    
		if (pstH + 230 > 960) {
		    pstH -= 500;
		}
		
		objDivZoomImg.style.left = pstH;
		objDivZoomImg.style.top = document.body.scrollTop + e.clientY;
		
		var imgDesign = document.createElement("img");
		imgDesign.src = img2;
		imgDesign.style.border = "solid 1px #000000";
		
		var imgZoomOut = document.createElement("img");
		imgZoomOut.src = "icons/ZoomOutTransparent.gif";
		imgZoomOut.onclick = function() {hideImage(objDivZoomImg, objImg);};
		imgZoomOut.onmouseover = function() {
		    this.style.cursor = "hand";
		    this.style.cursor = "pointer";
		};
		objImgZoom.src = "icons/ZoomOutTransparent.gif";
		objDivZoomImg.appendChild(imgDesign);
		objDivZoomImg.appendChild(imgZoomOut);
		
		//objDivZoomImg.innerHTML = "<img src=\"" + img2 + "\" style=\"border:solid 1px black;\"/><img src=\"icons/ZoomOutTransparent.gif\" border=\"0\" onclick=\"switchImgNew('" + img2 + "', '" + img1 + "', this, event)\">";
	} else {
		objDivZoomImg.style.display = "none";
		objImgZoom.src = "icons/ZoomInTransparent.gif";
		//objDivZoomImg.innerHTML = "";
		clearChildNodes(objDivZoomImg);
	}
}

function hideImage(divZoom, objImg) {
    if (!objPrevImg) {
	    objPrevImg = objImg;
	} else {
	    objPrevImg.src = "icons/ZoomInTransparent.gif";
	    objPrevImg = null;
	}
    clearChildNodes(divZoom);
    divZoom.style.display = "none";
    objImg.src = "icons/ZoomInTransparent.gif";
}

function clearChildNodes(obj) {
    while (obj.firstChild) {
        obj.removeChild(obj.firstChild);
    }
}

//To be compatible with the old version
function referViaEmail(ReferralSource, DesignID, ItemID) {
	window.open('ReferByEmail.aspx?ReferralSource=' + ReferralSource + '&DesignID=' + DesignID + '&ItemID=' + ItemID, '', 'width=800,height=495,resizable,scrollbars');
}

function referViaEmailForHome(ReferralSource) {
	window.open('ReferByEmail.aspx?ReferralSource=' + ReferralSource, '', 'width=800,height=495,resizable,scrollbars');
}

function referViaEmailForDesign(ReferralSource, DesignID, ItemID, ImgURL) {
	window.open('ReferByEmail.aspx?ReferralSource=' + ReferralSource + '&DesignID=' + DesignID + '&ItemID=' + ItemID + '&ImgURL=' + ImgURL, '', 'width=800,height=495,resizable,scrollbars');
}

function referViaEmailForDesignClass(ReferralSource, DesignClassID, Page, ItemID) {
	window.open('ReferByEmail.aspx?ReferralSource=' + ReferralSource + '&DesignClassID=' + DesignClassID + '&Page=' + Page + '&ItemID=' + ItemID, '', 'width=800,height=495,resizable,scrollbars');
}

function mouse_over_add_icon(DesignID) {
	var button_name = 'refer_button_' + DesignID;
	document.getElementById(button_name).src='images/icnEmailHover.gif ';	
}

function mouse_out_add_icon(DesignID) {
	var button_name = 'refer_button_' + DesignID;	
	document.getElementById(button_name).src='images/icnEmail.gif ';	
}

function openStudioLight(ItemID, DesignID, DocID, ucMatchingItemIdx, IdxType) {
	switch (ItemID)
	{
		//Letterhead
		case 100021:			{ width=720; height=600; break}
		//Addr Label
		case 100020:			{ width=500; height=400; break}
		//Mailing Label
		case 100027:			{ width=500; height=450; break}
		//#10 Envelope
		case 100018:
		case 100187:			{ width=750; height=500; break}
		//Business Card
		case 100001:
		case 100110:			{ width=720; height=600; break}
		//Postcard
		case 100010:			{ width=650; height=600; break}
		//Large Memopad
		case 100025:			{ width=600; height=600; break}
		default:				{ width=600; height=600; break}
	}
	
	
	w = window.screen.width;
	h = window.screen.height;	
	
	var leftPos = (w-width)/2, topPos = (h-height)/2;	
	
	window.open('StudioLight.aspx?ucMatchingItemIdx=' + ucMatchingItemIdx + '&IdxType=' + IdxType + '&DocID=' + DocID + '&DesignID=' + DesignID + '&ItemID=' + ItemID, '', 'width=' + width +',height=' + height + ',top=' + topPos + ',left=' + leftPos +',resizable,scrollbars');
}

//Open a intro guide window
function openWindow(url) {	
	window.open(url, '', 'width=600,height=475,resizable,scrollbars');
}

//Open a learn-how window
function openPriceQuotePopup(CategoryID) {	
    if (CategoryID == 0)
        window.open('PriceQuotePopUp.aspx', '', 'width=750,height=475,resizable,scrollbars');
    else
        window.open('PriceQuotePopUp.aspx?CategoryID=' + CategoryID, '', 'width=750,height=475,resizable,scrollbars');
}
//End hiding script --> 

//End hiding script --> 

function setCagTab(tab){
	var tablist = document.getElementById('menucontents2').getElementsByTagName("ul")[0].getElementsByTagName("li");
	var contentlist = document.getElementById('innercontents2').getElementsByTagName("div");
	for (var i=0, il=tablist.length; i<il; i++){
		if (i == tab){
			tablist[i].className="selected";
			contentlist[i].style.display = 'block';
		}else{
			tablist[i].className="";
			contentlist[i].style.display = 'none';
		}
	}
}

function showPaymentFieldsByType() {
    var strCartType = document.all("ddCardType").value;
    if (strCartType == "9" || strCartType == "10" || strCartType == "14") {
        document.all("trIssueDate").style.visibility = "visible";
        document.all("trIssueNum").style.visibility = "visible";
    } else {
        document.all("trIssueDate").style.visibility = "hidden";
        document.all("trIssueNum").style.visibility = "hidden";
        document.all("IssueDateMonth").value = "";
        document.all("IssueDateYear").value = "";
        document.all("IssueNum").value = "";
    }
}
function getElement(id) {
    var obj = document.getElementById(id);
    if (!obj) {
      obj = document.all(id)[0]
    }
    return obj;
}
function validateCustomerPayment() {
    
    getElement("errCardNum").style.visibility = "hidden";
    getElement("errExpires").style.visibility = "hidden";
    	    
    if (getElement("errEmail").hasChildNodes()) {
        getElement("errEmail").removeChild(getElement("errEmail").firstChild);
    }
    
    getElement("errTermsCheck").style.visibility = "hidden";
    var validateResult = true;
    var focusField;
    
    // Card Number	    
    if (getElement("CardholderPan").value.trim() == "") {
        getElement("errCardNum").style.visibility = "visible";
        //document.paymentForm.errCardNum.style.visiblity = "visible";
        focusField = document.paymentForm.CardholderPan;
        validateResult = false;
    }
    
    if (getElement("CardExpirationMonth").value.trim() == "" || getElement("CardExpirationYear").value.trim() == "") {
        getElement("errExpires").style.visibility = "visible";
        if (!focusField) {
            focusField = getElement("CardExpirationMonth");
        }
        
        validateResult = false;
    }
    
    if (getElement("txtCustomerEmail").value.trim() == "") {
        getElement("errEmail").style.visibility = "visible";
        getElement("errEmail").appendChild(document.createTextNode("Please confirm your email address and make sure it is correct so we can send a receipt to you."));
        if (!focusField) {
            focusField = document.paymentForm.txtCustomerEmail;
        }
        
        validateResult = false;
    } else if (!validEmail(getElement("txtCustomerEmail").value.trim())) {
        getElement("errEmail").style.visibility = "visible";
        getElement("errEmail").appendChild(document.createTextNode("Please enter your email in a valid format."));
        if (!focusField) {
            focusField = document.paymentForm.txtCustomerEmail;
        }
        validateResult = false;
    }
    
    if (!getElement("cbTermsAndPolicy").checked) {
        getElement("errTermsCheck").style.visibility = "visible";
        validateResult = false;
    }
    
    if (focusField) {
        focusField.focus();
    }

    if (validateResult) {
        document.paymentForm.CardExpiration.value = document.paymentForm.CardExpirationYear.value + document.paymentForm.CardExpirationMonth.value;
    document.paymentForm.MD.value += "#" + document.paymentForm.CardholderPan.value + "#" + document.paymentForm.CardExpirationYear.value + "#" + document.paymentForm.CardExpirationMonth.value;
    document.paymentForm.MD.value += "#" + document.paymentForm.txtCustomerEmail.value + "#" + document.paymentForm.IssueNum.value + "#" + document.paymentForm.IssueDateYear.value + "#" + document.paymentForm.IssueDateMonth.value;
    document.paymentForm.MD.value += "#" + document.paymentForm.ddCardType.value;
    }
    return validateResult;

}

function submitOrder(paymentType) {
    var theForm = document.forms[document.forms.length - 1];
    if (!theForm) {
        theForm = document.paymentForm;
    }
    
    if (!paymentType) {
        paymentType = "HSBC";
    }
    var orgAction = theForm.action;
    theForm.method = "POST";
    
    if (paymentType == "PayPal") {
        theForm.action = "https://www.paypal.com/cgi-bin/webscr";
    } else {
        theForm.action = "https://www.ccpa.hsbc.com/ccpa";
    }
    
    theForm.submit();
    theForm.action = orgAction;
}
