$(document).ready(function () {
	// FACEBOOK
	function createCookie(name,value,days) {
	if (days) {
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
		else var expires = "";
		document.cookie = name+"="+value+expires+"; path=/";
	}
	  FB.getLoginStatus(handleSessionResponse);
	  

	 // Publicar en el muro
	 $('#publish_wall').bind('click', function() {
		FB.login(handleSessionResponse, { scope : 'email,offline_access,publish_stream,user_birthday,user_location,user_work_history,user_about_me,user_hometown,read_friendlists,user_likes'} );
      });
      
	  function handleSessionResponse(response) {
        // if we dont have a session, just hide the user info
        if (!response.authResponse) {
			if($('#publish_wall').is(':checked')){
				$("#publish_wall").attr('checked', false);
				$('#logFBSmall').attr('src','http://c444111.r11.cf0.rackcdn.com/fbLogoSmall.png'); // BN
			} else {
				$('#logFBSmall').attr('src','http://c444111.r11.cf0.rackcdn.com/fbLogoSmall.png');
			}
          return;
        } else {
			if($('#publish_wall').is(':checked')){
				$('#logFBSmall').attr('src','http://c444111.r11.cf0.rackcdn.com/fbLogoSmall.png');
				$("#fbuid").val(FB.getAuthResponse().userID);
				createCookie('fb_auth_token',response.authResponse.accessToken,'30');
			} else {
				$('#logFBSmall').attr('src','http://c444111.r11.cf0.rackcdn.com/fbLogoSmall.png'); // BN
			}			
			
		}	  
	  }
	  
	  $('#loginFB, #btnVincularCuentas, .loginFB').live('click', function(){
		FB.login(handleSessionResponseLogin, { scope : 'email,offline_access,publish_stream,user_birthday,user_location,user_work_history,user_about_me,user_hometown,read_friendlists,user_likes'} );
      });
	  $('#btnCerrarFB').live('click', function() {
		$("#fb_registrado").fadeOut('slow', function(){
			$("#fb_registrado").html('');
	    });  
      });	  
	  $('#fbRegisterBtn').live('click', function(){
			var fbuid=FB.getAuthResponse().userID;
			var query = FB.Data.query('select email, uid from user where uid={0}', fbuid);
			query.wait(function(rows) {
					 var fbemail=rows[0].email;
					// AJAX
					registroAjax(fbuid,fbemail);
			});		

      });	  

	  $('#fbRegisterBtnComplete').live('click', function(){
		FB.login(handleSessionResponseRegister, { scope : 'email,offline_access,publish_stream,user_birthday,user_location,user_work_history,user_about_me,user_hometown,read_friendlists,user_likes'} );	

      });	
	  	  
	 handlerSituacion = function(r){
		 
		if(r=='err_login'){
			$('#errLogin').html('Usuario o Contraseña incorrectos.');	 
		}
		//	alert('codigo: '+r);
		if(r=='cod_logueado'||r=='cod_vinculadoLogueado'||r=='cod_already_logued'){
			 location.replace('/midegusta/');	 
			//window.location.reload();
		}
		if(r=='cod_user_or_new'){
			$.ajax({
			  url: "/include/fblogin/register.sgi",
			  cache: false,
			  success: function(html){
				$("#fb_registrado").html(html);
			    $("#fb_registrado").show();
			 }
			});
		}	
	 } 
	  
	 validateAjax = function(fbuid, fbemail, username, password){
		$.ajax({
		  type: "POST",
		  url: "/include/fblogin/login.sgi",
		  data: {'fid': fbuid, 'femail': fbemail, 'username': username, 'password': password},
		  success: handlerSituacion
		});		
	  }
	 registroAjax = function(fbuid, fbemail){
		$('#errLogin').html('<img src="http://c0444171.cdn.cloudfiles.rackspacecloud.com/sAjax.gif" />');
		$.ajax({
		  type: "POST",
		  url: "/include/fblogin/newuser.sgi",
		  data: {'fid': fbuid, 'femail': fbemail},
		  success: function(r){
				if(r=='cod_registradoVinculadoLogueado'){
				 location.replace('/midegusta/');	 

				}
			 }
		});		
	  }	  
	  function handleSessionResponseLogin(response) {
        // if we dont have a session, just hide the user info
        if (response.authResponse) {
			$('#errLogin').html('<img src="http://c0444171.cdn.cloudfiles.rackspacecloud.com/sAjax.gif" />');
			
			var username = $('#username').val();
			var password = $('#password').val();
			var fbuid=FB.getAuthResponse().userID;
			var query = FB.Data.query('select email, uid from user where uid={0}', fbuid);
			query.wait(function(rows) {
				 var fbemail=rows[0].email;
				createCookie('fb_auth_token',response.authResponse.accessToken,'30');
				// AJAX
				validateAjax(fbuid,fbemail,username,password);
			 });
			
			
			
		}	  
	  }
	  function handleSessionResponseRegister(response) {
        // if we dont have a session, just hide the user info
        if (response.authResponse) {
			var fbuid=FB.getAuthResponse().userID;
			var query = FB.Data.query('select email, uid from user where uid={0}', fbuid);
			query.wait(function(rows) {
				 var fbemail=rows[0].email;
				createCookie('fb_auth_token',response.authResponse.accessToken,'30');
				// AJAX
				registroAjax(fbuid,fbemail);
			 });
			
			
			
		}	  
	  }	  
	  
	  
});
