/*   form validate  file   */
var errrorCountter = 0 ;
var userUsedmail ="";
var arrMesError= new Array();
    arrMesError[0]="A required field is missing or invalid. <br>Please verify:";
    arrMesError[1]="A required field is missing or invalid. Please read and accept Terms of Use and Privacy Policy before proceeding. <br>Please verify:";
    arrMesError[2]="A required field is missing or invalid. Passwords do not match. <br>Please verify:";
    arrMesError[3]="A required field is missing or invalid.  You have entered invalid Promotion code.  <br>Please verify:";
    arrMesError[4]="Please input the code below:";


function uasite (){
arrMesError[0]="Не все обязательные поля  заполнены.";
arrMesError[1]="Не все обязательные поля  заполнены. Пожалуйста, прочтите и  примите Условия использования и  Политику конфиденциальности.";
arrMesError[2]="Не все обязательные поля  заполнены. Пароли  не  совпадают, убедитесь в  правильности ввода паролей.";
 return  arrMesError;
 }

 var  arrMesErrorCount=0;
 var aMainModul= true;



 function  messageError (titleID, needClear){
     if (!titleID) return;
     var errorMSG=document.getElementById(titleID);
     if(!errorMSG)  return;
     if(needClear){
     errorMSG.style.color="red";
     errrorCountter +=1 ;
     return false;
    }else{
      errorMSG.style.color="";
     return true;
    }
 }

function showErropAlert(){
   var errorBox = document.getElementById("errorMesegeRed");
   var errorBoxCon = document.getElementById("errorMesegeRedBox");
       errorBoxCon.style.display="block";
       errorBox.innerHTML = arrMesError[arrMesErrorCount];

}

function chekInput(form,fname){
  //alert (fname);
   if (form.elements[fname].value == '') {
      form.elements[fname].style.borderColor ="red";
        arrMesErrorCount=0;
     return false;
     } else {
      form.elements[fname].style.borderColor ="";
    return 1;
	 }
  }

function chekBox(form,fname){
   if (!form.elements[fname].checked) {
      form.elements[fname].style.borderColor ="red";
        arrMesErrorCount=1;
     return false;
     } else {
      form.elements[fname].style.borderColor ="";
    return 1;
	 }
  }

function chekMail(form,fname){
		  var x = form.elements[fname].value;
		  var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
		  if (filter.test(x)) {
            form.elements[fname].style.borderColor ="";
               arrMesErrorCount=0;
        return 1;
			}
		     else {
          form.elements[fname].style.borderColor ="red";
              arrMesErrorCount=0;
        return false;
			 }
	  }

function chekPas (form, userPass,uPassConfirm){
    if (form.elements[uPassConfirm].value == '' || form.elements[uPassConfirm].value != form.elements[userPass].value ) {
         messageError("userPasswordMes",true);
        form.elements[uPassConfirm].style.borderColor ="red";
        form.elements[userPass].style.borderColor ="red";
        form.elements[userPass].value="";
        form.elements[uPassConfirm].value ="";
          arrMesErrorCount=2;
     return false;
     } else {
       if(form.elements[uPassConfirm].value != form.elements[userPass].value )
       {
            form.elements[uPassConfirm].style.borderColor ="red";
       } else{
          form.elements[uPassConfirm].style.borderColor ="";
       }
    return 1;
     }
}

var returnFolseTrue;
function smCheckForm (form, aFirst,aLast,aPhone,aCompany,aMail,aPass,aPassConfir,aLicenseRead,aCoptchaFild){
      returnFolseTrue=0;
      if(aFirst){
           if(!chekInput(form,"userFirstName")){ messageError("userFirstNameMes",true);  } else { messageError("userFirstNameMes");returnFolseTrue++; }
         }
     if(aLast){
           if(!chekInput(form,"userLastName")){ messageError("userLastNameMes",true);  } else { messageError ("userLastNameMes");returnFolseTrue++; }
         }
     if(aPhone){
          if(!chekInput(form,"userPhone")){ messageError ("userPhoneMes",true); } else{ messageError ("userPhoneMes");returnFolseTrue++; }
          }
     if(aCompany){
          if(!chekInput(form,"userCompany")){ messageError ("userCompanyMes",true); } else{ messageError ("userCompanyMes");returnFolseTrue++; }
           }
     if(aMail){
          if(!chekMail(form,"userEmail")){ messageError ("userEmailMes",true); } else{ messageError ("userEmailMes");returnFolseTrue++; }
          }
    if(aPass){
          if(!chekInput(form,"userPassword")){ messageError("userPasswordMes",true); } else { messageError ("userPasswordMes");returnFolseTrue++; }
          }
    if(aPassConfir){
          if(!chekPas(form,"userPassword","userPasswordConfirm")){ messageError("userPasswordConfirmMes",true); }else { messageError ("userPasswordConfirmMes");returnFolseTrue++; }
          }
      if(aLicenseRead){
          if(!chekBox (form,"licenseRead")){ messageError("licenseReadMes",true); }else { messageError ("licenseReadMes");returnFolseTrue++; }
          }



   /* captchafint*/
    var neesFildsForValidation =8;
     if(typeof Recaptcha != 'undefined'){

            if(aCoptchaFild){
                  if(!chekInput (form,"recaptcha_response_field")){ messageError("recaptcha_response_fieldMes",true); }else { messageError ("recaptcha_response_fieldMes");returnFolseTrue++; }
                  }
           neesFildsForValidation=9  ;
     }

    if(returnFolseTrue == neesFildsForValidation)
    {
       returnFolseTrue=0;
        return  true;
    }
        else
    {
        returnFolseTrue=0;
        showErropAlert();
        return  false;  }
}


function captchChekError (){

      if (document.getElementById("recaptcha_challenge_field")
              &&  document.getElementById("recaptcha_response_field")){

             document.getElementById("recaptcha_response_field").style.border="1px solid red";


     }
}



function shechFormValid(html){
             resultPage="not FIRST PAGE" ;
             resultPage= html.search("<!--FIRST PAGE-->");
             if(resultPage==-1){
                  resultPageStatus= html.search("<title>Status</title>");
                  if(resultPageStatus==-1) {
                     // sendDBLids(formGlodl);
                      return true ;
                  }
                  else
                  {
                    //  sendDBLids(formGlodl,true);
                      return true  ;
                  }
             } else {
                 strErr = html.search("<!--START ERRORS-->");
                 endErr = html.search("<!--END ERRORS-->");
                 errMasege = html.substr(strErr,endErr-strErr+17);

                var codeErrr = errMasege.search('<span class="codeRed">');
                var maileErrr = errMasege.search('<span class="emailRed">');
                var passErrr = errMasege.search('<span class="passRed">');

                var codeErrrOb= document.getElementById("referrerCodeMas");
                var codeErrrObFL= document.getElementById("referrerCode");
                var maileErrrOb= document.getElementById("userEmailMes");
                var maileErrrObFL= document.getElementById("userEmail");


                     if(maileErrr !=-1) {

                         maileErrrObFL.style.borderColor="red";
                         messageError ("userEmailMes",true);
                         showErropAlert();
                      } else {
                         maileErrrOb.style.color="";
                         maileErrrObFL.style.borderColor="";
                      }
                    if( passErrr !=-1) {

                       // document.title= passErrr;
                         if(codeErrr !=-1 || maileErrr !=-1 ){ }
                         else {

                           var fieldPass = document.getElementById("userPassword")  ;
                           var fieldPassMess = document.getElementById("userPasswordConfirm");

                           if(fieldPass.value == fieldPassMess.value){
                                 if( maileErrr ==-1){
                                       arrMesErrorCount=4;
                                       captchChekError();
                                        messageError ("recaptcha_response_fieldMes",true);
                                       showErropAlert();
                                     }
                           }
                           else {
                                    messageError ("userPasswordMes",true);
                                    messageError ("userPasswordConfirmMes",true);
                                    fieldPass.style.borderColor ="red";
                                    fieldPassMess.style.borderColor ="red";
                                    fieldPass.value="";
                                    fieldPassMess.value="";
                                    arrMesErrorCount=2;
                                    showErropAlert();
                             }
                           }
                            if(codeErrr !=-1) {


                                 codeErrrOb.style.color="red";
                                 codeErrrObFL.style.borderColor="red";
                                 showErropAlert();
                                 arrMesErrorCount=3;
                                //alert ("arrMesErrorCount");
                             }
                            else
                            {
                                 codeErrrOb.style.color="";
                                 codeErrrObFL.style.borderColor="";
                             }

                       document.getElementById('loadIndication').style.display="none";
                       var errorBox = document.getElementById("errorMesegeRed");
                        errorBox.innerHTML = errMasege/*+ arrMesError[arrMesErrorCount];*/
                            if(typeof Recaptcha != 'undefined'){Recaptcha.reload(); }
                        return false  ;
             }
      }

}


/*------------------------ ajax  --------------------------------------------- -- */
/*  send KS user to eloqua  */
function  sentToQloqua(form){

    var dataStr ="start=1"+
                 "&url=http://now.eloqua.com/e/f2.aspx"+
                 "&elqFormName=" +encodeURI( form.elements["elqFormName"].value )+
                 "&elqSiteID=" + encodeURI( form.elements["elqSiteID"].value )+
                 "&elqCustomerGUID=" + encodeURI( form.elements["elqCustomerGUID"].value )+
                 "&elqCookieWrite=" + encodeURI( form.elements["elqCookieWrite"].value )+
                 "&windowTitle=" + encodeURI( form.elements["windowTitle"].value)+
                 "&userFirstName=" + (form.elements["userFirstName"].value )+
                 "&userLastName=" + (form.elements["userLastName"].value)+
                 "&userCompany=" + (form.elements["userCompany"].value )+
                 "&userPhone=" + encodeURI( form.elements["userPhone"].value )+
                 "&userEmail=" + encodeURI( form.elements["userEmail"].value);

     $.ajax ({
        type: "POST",
        url: "/landing/crossdomain.jsp?"+dataStr,
        timeout: 60000,
        error: function(){ POPUP_TIMER = setTimeout(hidePopup, 500);},
        success: function(html){POPUP_TIMER = setTimeout(hidePopup, 500);}
      });
  return true;
}



 function aCheckMainModul() {
    $.ajax ({
    type: "POST",
    url: "/Member/UserAccount/RegistrationComplete.do",
    timeout: 60000,
     error: function(){ aMainModul=false;  },
     success: function(html){  aMainModul=true;  }
   });
   return aMainModul;

 }
 /*  create KS user */

/*  create KS user */
function getAjaxParametersArray(form) {
    var parameters = {};
    parameters["dataEntered"]=encodeURI( form.elements["dataEntered"].value);
    parameters["formTitle"]=encodeURI( form.elements["formTitle"].value);
    parameters["windowTitle"]=encodeURI(form.elements["windowTitle"].value);
    parameters["userFirstName"]=form.elements["userFirstName"].value;
    parameters["userLastName"]=form.elements["userLastName"].value;
    parameters["userCompany"]=form.elements["userCompany"].value;
    parameters["userPassword"]=encodeURI(form.elements["userPassword"].value);
    parameters["userPhone"]=form.elements["userPhone"].value;
    parameters["userEmail"]=encodeURI(form.elements["userEmail"].value);
    parameters["userPasswordConfirm"]=encodeURI(form.elements["userPasswordConfirm"].value);
    parameters["licenseRead"]=encodeURI(form.elements["licenseRead"].value);
    parameters["referrerCode"]=encodeURI(form.elements["referrerCode"].value);
    if(typeof Recaptcha != 'undefined'){
      parameters["checkSecure"]=encodeURI(form.elements["checkSecure"].value);
      parameters["recaptcha_challenge_field"]=encodeURI(aRecChallField.value);
      parameters["recaptcha_response_field"]=encodeURI(aRrecRespField.value);
    }
    return parameters;
  }

function sendData(form) {
   var valDidform = false;
   valDidform = smCheckForm(form,1,1,1,1,1,1,1,1,1);
   if (valDidform) {
     document.getElementById('loadIndication').style.display="block";
     document.getElementById('loadIndication').style.height = document.getElementById('myform').offsetHeight+"px";
     var  aRecChallField =   document.getElementById("recaptcha_challenge_field");
     var  aRrecRespField =   document.getElementById("recaptcha_response_field");
     var parameters = getAjaxParametersArray(form);
     $.ajax ({
        type: "POST",
        data: parameters,
        url: "/Registration/UniversalRegistration.do",
        timeout: 60000,
        error: function(){
            alert("We cannot process your request at the moment.\n" +
                  "Please try again later.\n" +
                  "If you are using proxy-server, please try changing your internet connection options.");
                   hidePopupError();
         },
        success: function(html){


             var newUser = shechFormValid(html);
             /*  send KS user to eloqua  */
             if(newUser){
                 aCheckMainModul();
                 POPUP_TIMER = setTimeout( sentToQloqua(form), 500);
                //POPUP_TIMER = setTimeout(hidePopup, 1000);  //5sec
             }
         }

      });
}
  return false;
}

  var POPUP_TIMER=null;
  var formGlodl;
  var poststr ;
  var loadIndication= document.getElementById('loadIndication');


function hidePopup(){

    if(aMainModul) {
        window.location = "/Member/UserAccount/RegistrationComplete.do";
      }else {
         window.location = "/Registration/RegistrationFinished.jsp";
      }
  clearTimeout(POPUP_TIMER);
  loadIndication.style.display ="none";
}

function hidePopupError(){
  clearTimeout(POPUP_TIMER);
  loadIndication.style.display ="none";
}

function hidePopupBrake(){
  document.write(result) ;
  clearTimeout(POPUP_TIMER);
  loadIndication.style.display ="none";
}



function showPopup(){
    var divL = document.getElementById('loadIndication') ;
     hideSelects();
     divL.style.display="block";
     divL.style.height= divL.parentNode.offsetHeight+"px";
}
function hideSelects(f){
	for(var i=0;i<document.getElementsByTagName("SELECT").length;i++) document.getElementsByTagName("SELECT")[i].style.visibility=f?"visible":"hidden"   ;
}

/* clear  form values ('") replace to (*)  */
function clearValues (form){
     for (var i=0; i<form.elements.length; i++){
          form.elements[i].value=form.elements[i].value.replace(/[\"\'\&]/g,"*") ;
     }
}



/** captch ajax include
function loadScriptTag(src,aContn) {
    var aContn2 = document.getElementById(aContn);
    var script = document.createElement( 'script' );
    script.type = 'text/javascript';
    script.src = src;
    aContn2.appendChild(script);
};

 function aScriptSrc(html){
     var scrSRC='text/javascript" src="';
     if(scrSRC!=-1){
            var strScriptSrc= html.search(scrSRC);
            var endScriptSrc= html.search('"></script>');
            return html.substr(strScriptSrc+scrSRC.length,endScriptSrc-strScriptSrc-scrSRC.length);
     }
      else return false;
 }

function getECaptcha(aContn){

    $.ajax ({
        type: "POST",
        url: "/Registration/Captcha.jsp",
        timeout: 2000,
        error: function(){ },
        success: function(html){
            document.getElementById(aContn).innerHTML=html;
            loadScriptTag(aScriptSrc(html),aContn);
         }
      });

}

 */
