// JavaScript Document

   function getrandomimg()
   {
     var imgobj = document.getElementById('verifyimg');
     var hiddiv = document.getElementById('hidediv');
     
     if(imgobj == null)
      return false;
      
     var randstr = "";
     
     for(var jj = 0; jj < 7; jj++)
     {
      var rand = Math.floor(Math.random()*9);
      var chrcode = 65 + Math.floor(Math.random()*26);
      
      if(jj % 2 == 0)
        randstr += rand;
      else
        randstr += String.fromCharCode(chrcode);
        
     }
     
     hiddiv.innerHTML = "<div id='imgcode'>" + randstr + "</div";
     imgobj.src="getimage.php?img=" + randstr + "&type=human";
   }
   
   function verifyusername(codeafter)
   {    
    if(codeafter == null)
     codeafter = "";
     
    var uname = document.getElementById('uname').value;
    
    if(uname.length == 0)
    {
     displayPopupDiv('Alert','ajax/getpopup.php?message=Please enter a username&okcode=closePopupDiv(6);',450,150,6);
     return false;
    }
    
    getAjaxValue('ajax/getuseravailable.php?user=' + uname,'avusername',"setelementvisibilitys('avusername',true);signup(document.getElementById('avusername').value);");
    
    return true;
   }
   
   
   function verifyusername()
   {    
    var uname = document.getElementById('uname').value;
    
    if(uname.length == 0)
    {
     displayPopupDiv('Alert','ajax/getpopup.php?message=Please enter a username&okcode=closePopupDiv(6);',450,150,6);
     return false;
    }
    
    getAjaxValue('ajax/getuseravailable.php?user=' + uname,'avusername',"setelementvisibilitys('avusername',true);");
    
    return true;
   }

   function signUp()
   {        
    var email = document.getElementById('email').value;
    var uname = document.getElementById('uname').value;
    
    if(uname.length == 0)
    {
     displayPopupDiv('Alert','ajax/getpopup.php?message=Please enter a username&okcode=closePopupDiv(6);',450,150,6);
     return false;
    }
    
    getAjaxValue('ajax/getuseravailable.php?email=' + email,'avemail','runSignupAfterChecks();');                
    
    return false;    
   }

   function runSignupAfterChecks()
   {
    var uname = document.getElementById('uname').value;
    getAjaxValue('ajax/getuseravailable.php?user=' + uname,'avusername',"setelementvisibilitys('avusername',true);signUpSubmit(document.getElementById('avusername').innerHTML);");
   }
   
   function sendPassword()
   {    
    var uname = document.getElementById('uname').value;
    
    if(uname.length == 0)
    {
     displayPopupDiv('Alert','ajax/getpopup.php?message=Please enter a username&okcode=closePopupDiv(6);',450,150,6);
     return false;
    }
    
    getAjaxValue('ajax/getuseravailable.php?user=' + uname,'avusername',"setelementvisibilitys('avusername',true);sendPasswordSubmit(document.getElementById('avusername').innerHTML);");
    
    return false;    
   }
   
   function getimgcode()
   {
     var codediv = document.getElementById('imgcode');
     return codediv.innerHTML;
   }   

   function refersite()
   {
    setelementvisibilitys('thanks',false);
    
    var attrString = getparamstr('referform');    
    
    runAjax('openajax/referusers.php?' + attrString,"displayPopupDiv('Alert','openajax/getpopup.php?message=Emails have been sent.&okcode=document.location=|index.php|;closePopupDiv(6);',450,150,6);");
   }
   
   function signUpSubmit(usermatch)
   {
    if(!verifyfields('fname,lname,uname,email,password,verifycode','First Name,Last Name,UserName,Email,Password,Verification')) 
     return false;
    else
    {
     if(!checkvalidchars(document.getElementById('password').value) || 
        !checkvalidchars(document.getElementById('uname').value))
     {
      displayPopupDiv('Alert','openajax/getpopup.php?message=Invalid Characters: Only alphabetical, numerical and _ characters allowed&okcode=closePopupDiv(6);',450,160,6);      
      return false;
     }
     
     var vCode = getimgcode();
     var vCodeCmp = document.getElementById('verifycode').value;
     
     if(vCode != vCodeCmp)
     {
      displayPopupDiv('Alert','openajax/getpopup.php?message=Verification codes do not match&okcode=closePopupDiv(6);',450,150,6);
      getrandomimg();      
      return false;
     }
     else
     {
      var emailnotavail = document.getElementById('avemail').innerHTML.indexOf('NOT AVAILABLE') > -1;
      
      var notavail = usermatch.indexOf('NOT AVAILABLE') > -1;
      
      if(notavail)
      {
       //displayPopupDiv('Alert','openajax/getpopup.php?message=' + usermatch + '&okcode=closePopupDiv(6);',450,150,6);
       verifyusername();
       return false;
      } 
      
      if(emailnotavail)
      {
       displayPopupDiv('Alert','openajax/getpopup.php?message=Email address not available. Please select another email address which no one else is using. &okcode=closePopupDiv(6);',450,160,6);
       //verifyusername();
       return false;
      }
            
       var attrString = getparamstr('walter') + "&submit=true";      
       var uname = document.getElementById('uname').value;
       
       //IF WE GOT THIS FAR, WE CAN CREATE THE NEW ACCOUNT..
       //document.getElementById('password').value = '*****';
       //attrString = doUrlEncode(attrString);
          
       runAjax('openajax/signupuser.php?' + attrString,"displayReferralPage('"  + uname + "');");
     }
     
    }
   }

   function displayReferralPage(uname)
   {
    document.getElementById('closecode6').innerHTML = "document.location='index.php'";
    displayPopupDiv('Alert',"openajax/refersignup.php?user=" + uname,725,550,6);
   }


   function sendPasswordSubmit(usermatch)
   {
    if(!verifyfields('uname,verifycode','UserName,Verification')) 
     return false;
    else
    {
     if(!checkvalidchars(document.getElementById('uname').value))
     {
      displayPopupDiv('Alert','openajax/getpopup.php?message=Invalid Characters: Only alphabetical, numerical and _ characters allowed&okcode=closePopupDiv(6);',450,150,6);      
      return false;
     }
     
     var vCode = getimgcode();
     var vCodeCmp = document.getElementById('verifycode').value;
     
     if(vCode != vCodeCmp)
     {
      displayPopupDiv('Alert','openajax/getpopup.php?message=Verification codes do not match&okcode=closePopupDiv(6);',450,150,6);
      return false;
     }
     else
     {
      var notavail = usermatch.indexOf('NOT AVAILABLE') > -1;
      
      if(!notavail)
      {
       //displayPopupDiv('Alert','openajax/getpopup.php?message=' + usermatch + '&okcode=closePopupDiv(6);',450,150,6);
       document.getElementById('avusername').innerHTML = 'INVALID USERNAME';
       return false;
      }
       
       setelementvisibilitys('avusername',false);
       
       var attrString = "user=" + doUrlEncode(document.getElementById('uname').value);
       
       //alert(attrString);      
              
       //IF WE GOT THIS FAR, WE CAN SEND THE PASSWORD OFF
       runAjax('openajax/sendpassword.php?' + attrString,"displayPopupDiv('Alert','openajax/getpopup.php?message=Password has been sent.&okcode=document.location=|loginportal.php|;closePopupDiv(6);',450,150,6);");
     }
     
    }
   }

