$(function(){
  showpopup("betaalertMessage");
  if(login_method) show_form(login_method, 1);
 $("#login_linkedin").click(function(){
    window.location.href='/user/linkedin';
    return false;    
 }) 
 var url=document.URL;
 if(moreInformation)
  $("#popupNam").focus();
 else
  if(url.indexOf("yahoo")!=-1)
    $("#authID4").focus();
  else
   if(url.indexOf("google")!=-1) 
    $("#authID5").focus();
   else
    if(url.indexOf("aim")!=-1)
      $("#authID3").focus();
    else
      if(url.indexOf("new")!=-1)
        $("#name").focus();
      else
       if(url.indexOf("facebook")==-1 && url.indexOf("twitter")==-1 && url.indexOf("myspace")==-1)
        $("#loginid").focus();
  $("#password").attr("value","");
  if(serverValidation!='')
  {
    $(".error_login").show();
    $("#serverError").show();
    $("#loginid").addClass('errorState');
    $("#passHeader").addClass('errorState');
    $("#emailHeader").addClass('errorState');
    $("#loginpass").addClass('errorState');
  }  
  $('#register_voyavo').submit(function(){
                              if(!$('#agree1').is(':checked'))
                                return false;
                              returnVal = true;
                              focusField = 0;

                              name = $('#name').val();
                              if(!name.length)
                              {
                                $('.error_login').show();
                             	$('#nameError').show();
								$('#name').addClass('errorState');
							 	$('#nameHeader').addClass('errorState');
                                returnVal = false;
                              }
                              else { 
							  	$('.error_login').hide();
                             	$('#nameError').hide();
								$('#name').removeClass('errorState');
							 	$('#nameHeader').removeClass('errorState');
							  }

                              localAir = $('#register_localair1').val();
                              if(!localAir.length||$("#register_localair1h").val()==0)
                              {
								$('.error_login').show();
                             	$('#airport').show();
								$('.localAirport').addClass('errorState');
							 	$('#register_localair1').addClass('errorState');
								
                                returnVal = false;
                              }
                              else { 
							  	$('.error_login').hide();
                             	$('#airport').hide();
								$('.localAirport').removeClass('errorState');
							 	$('#register_localair1').removeClass('errorState');
							  }

                              email = $('#email').val();
                              if(email.indexOf('@') == -1)
                              {
                                $('.error_login').show();
                             	$('#email_invalid').show();
								$('.emailHeader_2').addClass('errorState');
							 	$('#email').addClass('errorState');
                                returnVal = false;
                              }
                              else  {
                                $('.error_login').hide();
                             	$('#email_invalid').hide();
								$('.emailHeader_2').removeClass('errorState');
							 	$('#email').removeClass('errorState');
							  }

                             token = $('#token').val();
                              if(privateBeta)
                              if(!token.length)
                              {
                                $('.error_login').show();
                             	$('#codeError').show();
								$('.inviteCode').addClass('errorState');
							 	$('#token').addClass('errorState');
                                returnVal = false;
                              }
                              else  {
                                $('.error_login').hide();
                             	$('#codeError').hide();
								$('.inviteCode').removeClass('errorState');
							 	$('#token').removeClass('errorState');
							  }
							  
                               password = $('#password').val();
                              if(!password.length)
                              {
                                $('.error_login').show();
                             	$('#password_none').show();
								$('.passwordHeader').addClass('errorState');
							 	$('#password').addClass('errorState');
                                returnVal = false;
                              }
                              else if(password.length < 6)
                              {
                                $('.error_login').show();
                             	$('#password_length').show();
								$('.passwordHeader').addClass('errorState');
							 	$('#password').addClass('errorState');
                                returnVal = false;
                              }
                             else  {
                                
								$('#password_none').hide();
                             	$('#password_length').hide();
								$('.passwordHeader').removeClass('errorState');
							 	$('#password').removeClass('errorState');
							  }

                              repass = $('#repassword').val();
                              if(repass != password)
                              {
                                $('.error_login').show();
                             	$('#password_match').show();
								$('.repassword').addClass('errorState');
							 	$('#repassword').addClass('errorState');
                                returnVal = false;
                              }
                              else  {
								$('#password_match').hide();
								$('.repassword').removeClass('errorState');
							 	$('#repassword').removeClass('errorState');
							  }
							  
                              /*if(focusField) $(focusField).focus();*/
                              return returnVal;
                              });

  $('#login_other').submit(function(){
                          authType = $('#other_authType').val();
                          registerid = $('#authID'+authType).val();
                         if((authType == 3)|| (authType == 6))
                          {
                            if(registerid== "" && authType == 3)
                            {
                              $('#login_other_error').text('Please enter your screen name.');
                              return false;
                            }
                            if(registerid== "" && authType == 6)
                            {
                              $('#login_other_error').text('Please enter your OpenID url.');
                              return false;
                            }
                          }

                          if((authType == 4) || (authType == 5) )
                          {
                            if((registerid.indexOf('@')) == -1)
                            {
                              $('#login_other_error').text('Invalid email address');
                              return false;
                            }
                            return true;
                          }
                          });

  $('#login_voyavo').submit(function(){
                           loginId = $('#loginid').val();
                           if(loginId.indexOf('@') == -1)
                           {
							 $('.error_login').show();
                             $('#login_email_error').show();
               $("#serverError").hide();
							 $('#loginid').addClass('errorState');
							 $('#emailHeader').addClass('errorState');
                             $('#loginid').focus();
                             return false;
                           }
                           else { 
						   		$('#login_email_error').hide(); 
								$('.error_login').hide();
								$('#loginid').removeClass('errorState');
								$('#emailHeader').removeClass('errorState');
							}

                           password = $('#loginpass').val();
                           if(password.length < 6)
                           {
							 $('.error_login').show();
                             $('#login_pass_error').show();
							 $('#loginpass').addClass('errorState');
               $("#serverError").hide();
							 $('#passHeader').addClass('errorState');
                             $('#loginpass').focus();
                             return false;
                           }
                           return true;
                           });

  $('#popupForm').submit(function(){
                           if(!$('#agree2').is(':checked'))
                                return false;

                           returnVal = true;
                           name = $('#popupName').val();
                           if(!name.length)
                           {
                             $('#popupNameError').text('Please enter your name')
                             $('#popupName').focus();
                             returnVal = false;
                           }
                           else $('#popupNameError').text('');

                           email = $('#popupEmail').val();
                           if(email.indexOf('@') == -1)
                           {
                             $('#popupEmailError').text('Invalid email address');
                             $('#popupEmail').focus();
                             returnVal = false;
                           }
                           else $('#popupEmailError').text('');

                           airport = $('#register_localair2').val();
                           if(!airport.length || ($("#register_localair2h").val()==0 && airport!=airport_text))
                           {
                             $('#popupAirportError').text('Please select your local airport from the list')
                             $('#register_localair2').focus();
                             returnVal = false;
                           }
                           else $('#popupAirportError').text('');

                           name = $('#popupToken').val();
                           if(privateBeta)
                           if(!name.length)
                           {
                             $('#popupTokenError').text('Please enter your invite code')
                             $('#popupToken').focus();
                             returnVal = false;
                           }
                           else $('#popupTokenError').text('');
                           return  returnVal;

                           });

  $('#login_facebook').click(function(){
  FB.Facebook.get_sessionState().waitUntilReady(function()
    {
      var authID = FB.Facebook.apiClient.get_session().uid;
                                          $.ajax({
                                          type: "POST",
                                          url:local+"/user/hasaccount",
                                          data:"authID="+authID,
                                          success: function(hasAccount){
                                          if(parseInt(hasAccount))
                                          {
                                            FB.Facebook.apiClient.users_getInfo(authID, 'name', function(result){
                                            var name = result[0].name;
                                            document.location.href = local+'/user/common?authType=1&name='+name+'&authID='+authID;
                                            });
                                          }
                                          else
                                          {
                                            FB.Connect.showPermissionDialog("publish_stream", function(perms){
                                            FB.Connect.showPermissionDialog("email", function(perms){
                                                                            var perm = perms.split(',');
                                                                            if(perm[0] == 'email' || perm[1] == 'email' || perm[2] == 'email')
                                                                            {
                                                                              if(perm[1] == 'contact_email' || perm[2] == 'contact_email')
                                                                              {
                                                                                FB.Facebook.apiClient.users_getInfo(authID, 'name,email', function(result){
                                                                                  var name = result[0].name;
                                                                                  var email = result[0].email;
                                                                                  document.location.href = local+'/user/common?authType=1&name='+name+'&authID='+authID+'&perms='+perms+'&email='+email;
                                                                                });
                                                                              }
                                                                            }
                                                                            });
                                                                            });
                                          }
                                          }});
                                          });
  FB.Connect.requireSession();
  return false;
});

$('#register_right_button').click(function(){
    $('#register_full_form').css('display', 'inline');
    $('#register_right_div').css('display', 'inline');
    $('#rsglogin').css('display', 'none');
    $('.loginHeader').addClass('registerHeader');
    $("#name").focus();
	$('.error_login').hide();
    $('li').hide();
                                  });

    function parseData(row)
    {
        var str;
        str = row.apName + " (" + row.code + ")";
        if(row.city != null && row.city != '')
        str += ", "+row.city;
        if(row.state != null && row.state != '')
        str += ", "+row.state;
        return {
          data: row,
          value: str,
          result: str
        }
    }

    function format(airport) {
      var str;
      str = airport.apName + " (" + airport.code + ")";
      if(airport.city != null && airport.city != '')
      str += ", "+airport.city;
      if(airport.state != null && airport.state != '')
      str += ", "+airport.state;
      if(airport.country != null && airport.country != '')
      str += ", "+airport.country;
      return str;  
    }
    $("#register_localair1").autocomplete(local+'/user/searchairport', {
      autoFill: false,
      matchContains: true,
      max: autoCompBoxLimit,
      pare:'register_localair1h',
      parse: function(data) {
        return $.map(eval(data), function(row) {
          return parseData(row); 
        });
      },
      formatItem: function(item) {
      return format(item);
      }
    });

    $("#register_localair2").autocomplete(local+'/user/searchairport', {
      autoFill: false,
      matchContains: true,
      max: autoCompBoxLimit,
      pare:'register_localair2h',
      parse: function(data) {
        return $.map(eval(data), function(row) {
          return parseData(row); 
        });
      },
      formatItem: function(item) {
      return format(item);
      }
    });
    $("#regCancel, #regCancel").click(function(){
      $(".reset").attr("value","");
	  $('.error_login').hide();
      $('li').hide();
	  $('input').removeClass('errorState');
	  $('label').removeClass('errorState');
      return false;
    })
});


function show_form(mode, page)
{
  $('#login_other_error').text('');
  $('#error').text('');
  if(page)
  {
    $('#register_full_form').css('display', 'none');
    $('#register_right_div').css('display', 'none');
    $('#rsglogin').css('display', 'inline');
    //$('#login_right_div').css('display', 'inline');
  }
  switch(mode)
  {
    case 0:
      $('#rsglogin').css('display', 'block');
    /*  $('#otherlogin').css('display', 'none');
      $('#myspacelogin').css('display', 'none');
      $('#facebooklogin').css('display', 'none');
      $('#twitterlogin').css('display', 'none');
	  */
	  $('.loginHeader').removeClass('registerHeader');  
	  $('.error_login').hide();
      $('li').hide();
      
      imagenumber='voyavo';
      loginchange('voyavo');  
      $("#loginid").focus();
      return false;
    case 1:
      $('#rsglogin').css('display', 'none');
      $('#otherlogin').css('display', 'none');
      $('#myspacelogin').css('display', 'none');
      $('#facebooklogin').css('display', 'block');
      $('#twitterlogin').css('display', 'none');

      imagenumber='facebook';  
      loginchange(imagenumber);
      return false;
    case 2:
      $('#rsglogin').css('display', 'none');
      $('#otherlogin').css('display', 'none');
      $('#myspacelogin').css('display', 'block');
      $('#facebooklogin').css('display', 'none');
      $('#twitterlogin').css('display', 'none');

      imagenumber='myspace';
      loginchange(imagenumber); 
      return false;

    case 3:
      $('#authText').text('AOL/AIM Screen Name: ');

      imagenumber='aim';
      loginchange(imagenumber);
    break;

    case 4:
	  setTimeout(function () { showLoginID('loginYahoo'); }, 750);
    break;

    case 5:
      setTimeout(function () { showLoginID('loginGoggle'); }, 750);
      break;

    case 6:
      $('#authText').text('OpenID URL: ');
            
      imagenumber='openid';
      loginchange(imagenumber);
    break;
    case 7:
      $('#rsglogin').css('display', 'none');
      $('#otherlogin').css('display', 'none');
      $('#myspacelogin').css('display', 'none');
      $('#facebooklogin').css('display', 'none');
      $('#twitterlogin').css('display', 'block');
      
      imagenumber='twitter';
      loginchange(imagenumber);
      return false;
    case 8:
       $('#rsglogin').css('display', 'none');
       $('#otherlogin').css('display', 'none');
       $('#myspacelogin').css('display', 'none');
       $('#facebooklogin').css('display', 'none');
       $('#twitterlogin').css('display', 'block');
      
      imagenumber='linkedin';
      loginchange(imagenumber);
      return false;


  }
  $('#authID'+mode).css('display', 'inline');
  $('#other_authType').val(mode);
  $('#otherlogin').css('display', 'block');
  $("#authID"+mode).focus();
  return false;
}

function checkOn(val, reset){
if(val=='1'){
  var checkit = document.getElementById('agree1');
  if(reset=='1') checkit.checked=false;
  if(checkit.checked==true){
      $("#id1").css("display","none");
      $("#regs1").css("display","inline");
  }else{
      $("#id1").css("display","inline");
      $("#regs1").css("display","none");
  }
}else if(val=='2'){
  var checkit = document.getElementById('agree2');
  if(reset=='1') checkit.checked=false;
  if(checkit.checked==true){
      $("#id2").css("display","none");
      $("#regs2").css("display","inline");
  }else{
      $("#id2").css("display","inline");
      $("#regs2").css("display","none");
  }
}else if(val=='3'){
  var checkit = document.getElementById('agree1');
  if(reset=='1') checkit.checked=false;
  if(checkit.checked==true){
      $("#id1").css("display","none");
      $("#regs1").css("display","inline");
  }else{
      $("#id1").css("display","inline");
      $("#regs1").css("display","none");
  }
}else if(val=='4'){
  var checkit = document.getElementById('agree2');
  if(reset=='1') checkit.checked=false;
  if(checkit.checked==true){
      $("#id2").css("display","none");
      $("#regs2").css("display","inline");
  }else{
      $("#id2").css("display","inline");
      $("#regs2").css("display","none");
  }
} 
}
function loginchange(str)
{
      $('#'+imagenumberOld).addClass(imagenumberOld+"InactLogin");
      $('#'+imagenumberOld).removeClass(imagenumberOld+"ActLogin");
      $('#'+str).removeClass(str+"InactLogin");
      $('#'+str).addClass(str+"ActLogin");
      $('#loginotherImt').removeClass('loginotherImt'+imagenumberOld);
      $('#loginotherImt').addClass('loginotherImt'+str);
      imagenumberOld=str;
}
