var Auth = {
  
  login: function()
  {
    var username = $F('login-username');
    var password = $F('login-password');
    
    if (username.length == 0 || password.length == 0)
      return;
    
		if (this.onLoginStart)
		  this.onLoginStart();
		
    sendAjaxMessage('login',
                    'login',
                    {
                      username: username,
                      password: password
                    },
                    this.loginCallback.bind(this));
                    
    this.showAjaxLoading();
  },
  
  loginCallback: function(results)
  {
    this.hideAjaxLoading();
    
		if (results['logged_in'])
      this.loginSucceeded(results);
		else
		  this.loginFailed();
  },
  
	loginSucceeded: function(results)
	{
    $('login-failed').hide();

    if (results['login_form_replacement_html'])
		  $('login-form').replace(results['login_form_replacement_html']);

    if (this.onLoginSucceeded)
     this.onLoginSucceeded();
		 
//    console.info(results['redirect_to']);
	  if (results['redirect_to'])
		  window.location.href = results['redirect_to']; 	 
  },
	
	loginFailed: function()
	{
    $('login-failed').show();
    $('login-username').focus();

    if (this.onLoginFailed)
     this.onLoginFailed();
  },
	
  showAjaxLoading: function()
  {
    $('login-buttons').hide();
    $('login-ajax').show();
  },
  
  hideAjaxLoading: function()
  {
    $('login-ajax').hide();
    $('login-buttons').show();
  }
  

}
