/*******Handles User Login and Authentication******/

$(document).ready(function(){
  var user_email; 
  var panel_active;
  if(is_interstitial)
    panel_active = $("#loginContainer"); //Default
  else
    panel_active = $("#registerContainer"); //Default
   
  var bindEvents = function() {
  //Attach Event handlers to Submit Buttons and Fields
  $(".inp-submit").unbind('click');
  $(".emailidGoogleApps").unbind('keydown');

  $(".inp-submit").click(function(){
      $(this).unbind('click');
      makeRequest();
  });

  $(".emailidGoogleApps").keydown(function(event) {
    if(event.keyCode == 13) {
        $(this).unbind('keydown');
        makeRequest();
    }
  });

  }
  
  bindEvents(); 


  var makeRequest = function() {
  user_email = $(".emailidGoogleApps",panel_active).val();
  if(user_email == "Enter your Google Apps email" || user_email=='') { 
    showRegisterError("Email id field is blank");
    return false;
  }
  $(".emailidGoogleApps",panel_active).addClass("check-progress").addClass('disabled');
  
  var xhr_url = "";
  if(panel_active.attr('id') == 'registerContainer') {
    xhr_url = "/index/signup";
  }
  else if(panel_active.attr('id') == 'loginContainer') {
    xhr_url = "/login/init";
  }

  $.get(xhr_url,{email: user_email},function(data){
        handleXHRResponse(data);
        bindEvents();
        $(".emailidGoogleApps",panel_active).removeClass("check-progress disabled");
        //$(".inputContainer",panel_active).removeClass('disabled');
        //$(".inputContainer",panel_active).addClass('enabled');
    },"json");
  } 

  var handleXHRResponse = function(data) {
    var status = data.status;
       if(status == 'error') {
         showRegisterError(data.msg); 
       }
       else if(status == 'userexists') {
         showRegisterSuccess(data.msg);
         window.setTimeout(redirectToLogin,2000);
       }
       else if(status == 'ugexists1') {
         showRegisterSuccess(data.msg);
       }
       else if(status == 'ugexists0') {
         showRegisterSuccess(data.msg);
         //redirectToLogin(user_email);
         window.setTimeout(redirectToLogin,2000);
       }
       else if(status == 'notga') {
         showRegisterError(data.msg);
       }
       else if(status == 'success') {
         showRegisterSuccess(data.msg);
         window.setTimeout(redirectToLogin,2000);
       }
       else if(status == 'usernotreg') {
         showRegisterError(data.msg);
       }
       else if(status == 'successlogin' || status == 'alreadyloggedin') {
         showRegisterSuccess(data.msg);
         window.location = data.redirect;
       }

  }
  var showRegisterError = function(msg) {
    $(".registererror",panel_active).css('display','none');
    $(".registersuccess",panel_active).css('display','none');
    $(".registererror",panel_active).html("<span class='erroricon'></span><span class='msg'>" + msg + "</span>");
    $(".registererror",panel_active).fadeIn();
  }
  
  var showRegisterSuccess = function(msg) {
    $(".registererror",panel_active).css('display','none');
    $(".registersuccess",panel_active).css('display','none');
    $(".inputContainer",panel_active).css('display','none');
    $(".registersuccess",panel_active).html(msg);
    $(".registersuccess",panel_active).fadeIn();
  }
  
  var redirectToLogin = function() {
    $.get("/login/init",{email: user_email,newuser:1},function(data){
          window.location = data.redirect;
          },"json");
  }

});

