function register(){
  var msgw,msgh,bordercolor;
  msgw=385;//pop window width
  msgh=430;//pop window height
  
  w = document.documentElement.clientWidth;
  h = document.documentElement.clientHeight;
  
  var left=(w/2)-(msgw/2);
  var top =(h/2)-(msgh/2);

  var msgObj=document.createElement("div")//the pop div

  msgObj.setAttribute("id","msgDiv");
  msgObj.setAttribute("align","center");
  msgObj.className = "pop-form-dialog";
  msgObj.style.left = left+"px";
  msgObj.style.top = top+"px";
  msgObj.style.width = msgw + "px";
  //msgObj.style.height =msgh + "px";

  var button=createLink("submit >>","javascript:void(0)");//the sumbit btn
  button.className = "pop-register-submit";
  button.onclick=submitForm;
  
  var closeBtn=document.createElement("input");//the close btn
  closeBtn.setAttribute("type","image");
  closeBtn.setAttribute("src","images/close1.gif");
  closeBtn.style.border = "none";
  closeBtn.style.width = "16px";
  closeBtn.style.height = "16px";
  closeBtn.style.marginLeft = "40px";
  closeBtn.style.margintop = "";
  closeBtn.style.cssFloat = "left";
  closeBtn.style.Float = "left"
  closeBtn.className = "reg-close-btn";
  closeBtn.onclick=closeWin;
  

 
  
  function closeWin(){

    document.body.removeChild(msgObj);//remove the pop window
  }
  




  document.body.appendChild(msgObj);//append the pop window
  
  var formDiv = document.createElement("DIV");
  formDiv.className="pop-registration-div";
  msgObj.appendChild(formDiv);
  

  var reg_img = new Image(216,37);
  reg_img.src = "images/registration.jpg";
  reg_img.className = "pop-registration";
  reg_img.style.cssFloat = "left";
  reg_img.style.Float = "left";
  
//  var lbRegistration = createLabel("Registration");
//  lbRegistration.className="pop-registration";
  formDiv.appendChild(reg_img);
  formDiv.appendChild(closeBtn);
  var tipStr = "Please fill out the registration form and click \&quot;submit&quot;. We will review the information and confirm your registration via email.";
  var lbTip = createLabel(tipStr);
  lbTip.className = "pop-registration-tip";
  formDiv.appendChild(lbTip);
 
  var lbFullName = createLabel("Full Name*");
  var lbTitle = createLabel("Title*");
  var lbCompany = createLabel("Company*");
  var lbAddress = createLabel("Address*");
  var lbCity = createLabel("City*");
  var lbState = createLabel("State*");
  var lbZip = createLabel("Zip*");
  var lbPhone = createLabel("Phone*");
  var lbFax = createLabel("Fax");
  var lbEmail = createLabel("Email*");
  var lbPassword = createLabel("Password*");
  var lbConfirmPwd = createLabel("Confirm Password*");
      //lbConfirmPwd.style.marginLeft="-5px";
      //lbConfirmPwd.style.width="115px";
  var lbWebsite = createLabel("Website");
  var lbCompanyType = createLabel("Company Type*");

  var tbFullName = createTextbox("fullName");
  var tbTitle = createTextbox("title");
  var tbCompany = createTextbox("company");
  var tbAddress = createTextbox("address");
  var tbCity = createTextbox("city");
  var tbState = createTextbox("state");
  var tbZip = createTextbox("zip");
  var tbPhone = createTextbox("phone");
  var tbFax = createTextbox("fax");
  var tbEmail = createTextbox("email");
  var tbPassword = createTextbox("password");
  tbPassword.type = "password";
  var tbConfirmPwd = createTextbox("passwordPwd");
  tbConfirmPwd.type = "password";
  var tbWebsite = createTextbox("website");
  var tbCompanyType = createTextbox("companyType");
  
  
  formDiv.appendChild(lbFullName);
  formDiv.appendChild(tbFullName);
  formDiv.appendChild(lbTitle);
  formDiv.appendChild(tbTitle);
  formDiv.appendChild(lbCompany);
  formDiv.appendChild(tbCompany);
  formDiv.appendChild(lbAddress);
  formDiv.appendChild(tbAddress);
  formDiv.appendChild(lbCity);
  formDiv.appendChild(tbCity);
  formDiv.appendChild(lbState);
  formDiv.appendChild(tbState);
  formDiv.appendChild(lbZip);
  formDiv.appendChild(tbZip);
  formDiv.appendChild(lbPhone);
  formDiv.appendChild(tbPhone);
  formDiv.appendChild(lbFax);
  formDiv.appendChild(tbFax);
  formDiv.appendChild(lbEmail);
  formDiv.appendChild(tbEmail);
  formDiv.appendChild(lbPassword);
  formDiv.appendChild(tbPassword);
  formDiv.appendChild(lbConfirmPwd);
  formDiv.appendChild(tbConfirmPwd);
  formDiv.appendChild(lbWebsite);
  formDiv.appendChild(tbWebsite);
  formDiv.appendChild(lbCompanyType);
  formDiv.appendChild(tbCompanyType);
  
  
  
  formDiv.appendChild(button);
  
  
  var msgDivEl = document.getElementById("msgDiv");
  
 

  var req;
  function sendRequest(url,params,httpMethod){
	  if(!httpMethod){
		  httpMethod = "POST";
	  }
	  req = FactoryXMLHttpRequest();
	  if(req){
		  req.onreadystatechange = onReadyStateChange;
		  req.open(httpMethod,url,true);
		  req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		  req.setRequestHeader("Content-length", params.length);
		  req.setRequestHeader("Connection", "close");
		  req.send(params);
	  }
  }
  
  function onReadyStateChange(){
	  var ready = req.readyState;
	  if(ready==4){
		  //alert(req.responseText);
		  if(req.responseText == "Registration successful!")
		  {
		    register_success();
            closeWin();
		    //window.location = "index.html";
		  }
		  else
		  {
		    message_box("Error",req.responseText);
		  }
	  }
  }
  
  function checkemail(email) {
   var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
   var address = email;
   if(reg.test(address) == false) {
      return false;
   }
   return true;
   }
  function validateZIP(field) {
    var valid = "0123456789-";
    var hyphencount = 0;

    if (field.length!=5 && field.length!=10) {
    message_box("Error","Please enter your 5 digit or 5 digit+4 zip code.");
    return false;
  }
  }
  function validatePhone(fld) {
    var error = "";
    var stripped = fld.value.replace(/[\(\)\.\-\ ]/g, '');    

   if (fld.value == "") {
        error = "You didn't enter a phone number.\n";
    } else if (isNaN(parseInt(stripped))) {
        error = "The phone number contains illegal characters.\n";
    } else if (!(stripped.length == 10)) {
        error = "The phone number is the wrong length. Make sure you included an area code.\n";
    }
    return error;
}
  function submitForm(){//the submit click event
  
     if(tbFullName.value.length == 0)
     {
        message_box("Error","Please enter full name");
        tbFullName.focus();
        return false;
     }
     if(tbTitle.value.length == 0)
     {
        message_box("Error","Please enter title");
        tbTitle.focus();
        return false;
     }
     if(tbCompany.value.length == 0)
     {
        message_box("Error","Please enter company");
        tbCompany.focus();
        return false;
     }
     if(tbAddress.value.length == 0)
     {
        message_box("Error","Please enter address");
        tbAddress.focus();
        return false;
     }
     if(tbCity.value.length == 0)
     {
        message_box("Error","Please enter city");
        tbCity.focus();
        return false;
     }
     if(tbState.value.length == 0)
     {
        message_box("Error","Please enter state");
        tbState.focus();
        return false;
     }
     if( validateZIP(tbZip.value) == false)
     {
        tbZip.focus();
        return false;
     }
     var error = validatePhone(tbPhone);
     if(error.length > 0)
     {
        message_box("Error",error);
        return false;     
     }
     if(checkemail(tbEmail.value)==false)
     {
        message_box("Error","Invalid email address");
        tbEmail.focus();
        return;
     }
	 if(tbPassword.value.length == 0 || tbConfirmPwd.value.length == 0)
	 {
		message_box("Error","You need to enter a password");
        return;
	 }
     if(tbPassword.value != tbConfirmPwd.value)
     {
        message_box("Error","Passwords do not match");
        tbPassword.focus();
        return;
     }
     if(tbCompanyType.value.length == 0)
     {
        message_box("Error","Please enter company type");
        tbCompanyType.focus();
        return;
     }

     var url="register.html";//the action page 
	 var params = "action=register&fullName="+tbFullName.value+"&title="+tbTitle.value+"&company="+tbCompany.value+"&address="+tbAddress.value+"&city="+tbCity.value+"&state="+tbState.value+"&zip="+tbZip.value+"&phone="+tbPhone.value+"&fax="+tbFax.value+"&email="+tbEmail.value+"&password="+tbPassword.value+"&passwordPwd="+tbConfirmPwd.value+"&website="+tbWebsite.value+"&companyType="+tbCompanyType.value;
	 sendRequest(url,params);

  }
}