function vistvalidation()
{
  var nameRegex = /^[a-zA-Z]+(([\'\,\.\- ][a-zA-Z ])?[a-zA-Z]*)*$/;
  var emailRegex = /^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$/;

 // var zipcodeRegex ="";
  //if(document.getElementById('country').value =="CA"){
        //zipcodeRegex=/^[A-Z][0-9][A-Z] [0-9][A-Z][0-9]$/i;
 //  }else{
      // zipcodeRegex=/^\d{5}$|^\d{5}-\d{4}$/;
  // }

   if(document.getElementById('txtMail').value == ""){
       inlineMsg('txtMail','<strong>Error</strong><br/>You must Enter Email.',2);
       return false;
   }else{
       email = document.getElementById('txtMail').value;
       if(!email.match(emailRegex)) {
        inlineMsg('txtMail','<strong>Error</strong>\n\
                  <br/>You have entered an invalid Email',2);
        return false;
      }
   }

  if(document.getElementById('txtFirst').value == ""){
       inlineMsg('txtFirst','<strong>Error</strong><br/>You must Enter Name.',2);
       return false;
   }else{
       first = document.getElementById('txtFirst').value;
       if(!first.match(nameRegex)) {
        inlineMsg('txtFirst','<strong>Error</strong>\n\
                  <br/>You have entered an invalid Name',2);
        return false;
      }
   }

   if(document.getElementById('txtLast').value == ""){
       inlineMsg('txtLast','<strong>Error</strong><br/>You must Enter LastName.',2);
       return false;
   }else{
       last = document.getElementById('txtLast').value;
       if(!last.match(nameRegex)) {
        inlineMsg('txtLast','<strong>Error</strong>\n\
                  <br/>You have entered an invalid LastName',2);
        return false;
      }
   }

   if(document.getElementById('ddlCategory[]').value == "")
   {
       inlineMsg('ddlCategory[]','<strong>Error</strong><br/>You must select Business Category.',2);
       return false;
   }

  

  /* if(document.getElementById('txtBusName').value == ""){
       inlineMsg('txtBusName','<strong>Error</strong><br/>You must Enter BusinessName.',2);
       return false;
   }else{
       bus = document.getElementById('txtBusName').value;
       if(!bus.match(nameRegex)) {
        inlineMsg('txtBusName','<strong>Error</strong>\n\
                  <br/>You have entered an invalid BusinessName',2);
        return false;
      }
   }

  if(document.getElementById('txtURL').value == ""){
       inlineMsg('txtURL','<strong>Error</strong><br/>You must Enter URL.',2);
       return false;
   }

   if(document.getElementById('txtDescription').value == ""){
       inlineMsg('txtDescription','<strong>Error</strong><br/>You must Enter Description.',2);
       return false;
   }*/

  /*if(document.getElementById('txtAddress1').value == ""){
       inlineMsg('txtAddress1','<strong>Error</strong><br/>You must Enter Address.',2);
       return false;
   }

   if(document.getElementById('txtAddress2').value == ""){
       inlineMsg('txtAddress2','<strong>Error</strong><br/>You must Enter Address.',2);
       return false;
   }

   if(document.getElementById('state').value == ""){
       inlineMsg('state','<strong>Error</strong><br/>You must choose state.',2);
       return false;
   }

   if(document.getElementById('txtCity').value == ""){
       inlineMsg('txtCity','<strong>Error</strong><br/>You must Enter City.',2);
       return false;
   }

   if(document.getElementById('txtZipcode').value == ""){
       inlineMsg('txtZipcode','<strong>Error</strong><br/>You must Enter Zipcode.',2);
       return false;
   }else{
       zipcode = document.getElementById('txtZipcode').value;
       if(!zipcode.match(zipcodeRegex)) {
        inlineMsg('txtZipcode','<strong>Error</strong>\n\
                  <br/>Zip correct format for US like 55555 or 55555-5555 and for Canada format like <br/>X5X 5X5 or X5X 5x5. Please re-type',2);
        return false;
      }
    }*/

  //checkCategoryforvisitor();
    var memform = document.getElementById("visitorreg");
    memform.submit();
    
 return true;
 
}



function checkCategoryforvisitor(){
    ems = document.getElementById('ddlCategory').value;
    email = document.getElementById('txtMail').value;
    xmlHttp=GetXmlHttpObject()
    if (xmlHttp==null){
        alert ("Browser does not support HTTP Request")
        return
    }
    var url="checkVisitor.php?e="+ems+"&m="+email;
    xmlHttp.onreadystatechange=stateChangedVisit
    xmlHttp.open("GET",url,true)
    xmlHttp.send(null)
  
}

    function stateChangedVisit() {
        if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete") {
            var st = xmlHttp.responseText;

               if(st == "1") {
                    var memform = document.getElementById("visitorreg");
                    memform.submit();
                    return true;
                } else {
                    document.getElementById('errorcat').innerHTML = "Already You have Subscribed";
                    document.getElementById("errorcat").style.color="red";
                    return false;
                }
        }
    }

function GetXmlHttpObject()
{
    var xmlHttp=null;
    try
    {
        // Firefox, Opera 8.0+, Safari
        xmlHttp=new XMLHttpRequest();
    }
    catch (e)
    {
        //Internet Explorer
        try
        {
            xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
        }
        catch (e)
        {
            xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
        }
    }
    return xmlHttp;
}


function IsNumeric(strString){
//  check for valid numeric strings
    var strValidChars = "0123456789";
    var strChar;
    var blnResult = true;

    if (strString.length == 0) return false;

    //  test strString consists of valid characters listed above
    for (i = 0; i < strString.length && blnResult == true; i++) {
        strChar = strString.charAt(i);
        if (strValidChars.indexOf(strChar) == -1) {
            blnResult = false;
        }
    }
    return blnResult;
}

// START OF MESSAGE SCRIPT //

var MSGTIMER = 20;
var MSGSPEED = 5;
var MSGOFFSET = 3;
var MSGHIDE = 3;

// build out the divs, set attributes and call the fade function //
function inlineMsg(target,string,autohide) {
    var msg;
    var msgcontent;
    if(!document.getElementById('msg')) {
        msg = document.createElement('div');
        msg.id = 'msg';
        msgcontent = document.createElement('div');
        msgcontent.id = 'msgcontent';
        document.body.appendChild(msg);
        msg.appendChild(msgcontent);
        msg.style.filter = 'alpha(opacity=0)';
        msg.style.opacity = 0;
        msg.alpha = 0;
    } else {
        msg = document.getElementById('msg');
        msgcontent = document.getElementById('msgcontent');
    }
    msgcontent.innerHTML = string;
    msg.style.display = 'block';
    var msgheight = msg.offsetHeight;
    var targetdiv = document.getElementById(target);
    targetdiv.focus();
    var targetheight = targetdiv.offsetHeight;
    var targetwidth = targetdiv.offsetWidth;
    var topposition = topPosition(targetdiv) - ((msgheight - targetheight) / 2);
    var leftposition = leftPosition(targetdiv) + targetwidth + MSGOFFSET;
    msg.style.top = topposition + 'px';
    msg.style.left = leftposition + 'px';
    clearInterval(msg.timer);
    msg.timer = setInterval("fadeMsg(1)", MSGTIMER);
    if(!autohide) {
        autohide = MSGHIDE;
    }
    window.setTimeout("hideMsg()", (autohide * 3000));
}

// hide the form alert //
function hideMsg(msg) {
    var msg = document.getElementById('msg');
    if(!msg.timer) {
        msg.timer = setInterval("fadeMsg(0)", MSGTIMER);
    }
}

// face the message box //
function fadeMsg(flag) {
    if(flag == null) {
        flag = 1;
    }
    var msg = document.getElementById('msg');
    var value;
    if(flag == 1) {
        value = msg.alpha + MSGSPEED;
    } else {
        value = msg.alpha - MSGSPEED;
    }
    msg.alpha = value;
    msg.style.opacity = (value / 100);
    msg.style.filter = 'alpha(opacity=' + value + ')';
    if(value >= 99) {
        clearInterval(msg.timer);
        msg.timer = null;
    } else if(value <= 1) {
        msg.style.display = "none";
        clearInterval(msg.timer);
    }
}

// calculate the position of the element in relation to the left of the browser //
function leftPosition(target) {
    var left = 0;
    if(target.offsetParent) {
        while(1) {
            left += target.offsetLeft;
            if(!target.offsetParent) {
                break;
            }
            target = target.offsetParent;
        }
    } else if(target.x) {
        left += target.x;
    }
    return left;
}

// calculate the position of the element in relation to the top of the browser window //
function topPosition(target) {
    var top = 0;
    if(target.offsetParent) {
        while(1) {
            top += target.offsetTop;
            if(!target.offsetParent) {
                break;
            }
            target = target.offsetParent;
        }
    } else if(target.y) {
        top += target.y;
    }
    return top;
}

// preload the arrow //
if(document.images) {
    arrow = new Image(7,80);
    arrow.src = "images/msg_arrow.gif";
}
 
