var FACEBOOK_APP_ID = "208735172470952"; 
var TWITTER_APP_KEY = "vYGPZGgDilG0SrLpkaDpyQ";

/******************** FACEBOOK_LOGIN ********************/
function facebook_login()
{
	var path = 'https://www.facebook.com/dialog/oauth?';
	var callback_url = WEB_PATH + 'app/frontend/remote/facebook/connect.html?rnd=' + Math.random();
	var queryParams = ['client_id=' + FACEBOOK_APP_ID, 'redirect_uri=' + callback_url, 'response_type=token'];
	var query = queryParams.join('&');
	var url = path + query;
	window.open(url);
}

function facebook_authenticate(response)
{    
    var url_ajax = "";
    if ($("#hidIdUsuario").val() == undefined) {
        url_ajax = WEB_PATH + "app/frontend/ajax/usuario/facebook_login.php";
    } else {
        url_ajax = WEB_PATH + "app/frontend/ajax/usuario/facebook_link.php";
    }

    $.ajax({
        type: "POST",
        url: url_ajax,
        data: response,
        async: false,
        success: function(response) {
            if (response == 0) {
                window.location.href = WEB_PATH + "registro_facebook/"
            }
            else {
                window.location.reload();
            }
        }
    });
}

/******************** FACEBOOK_LIST ********************/
function facebook_init()
{
    if ($('#frm_facebook_widget').size() == 0) {
        $.ajax({
            url: WEB_PATH + 'app/ajax/facebook_widget.php',
            success: function(data) {
                $('#div_facebook_widget').prepend(data);
            },
            complete: function() {},
            error: function() {},
            dataType: 'html'
        });
    }
}


/******************** TWITTER_INIT *********************/
function twitter_init()
{
    //$.getScript("http://platform.twitter.com/widgets.js");
    $.getScript("http://platform.twitter.com/anywhere.js?id="+TWITTER_APP_KEY+"&v=1", function() {
        twttr.anywhere(function (T) {
            T.bind("authComplete", function (e, user) {
                twitter_autenticate(user);
            });
        });
    });
}

/******************** TWITTER_LOGIN ********************/
function twitter_login()
{
    //window.location.href = WEB_PATH + 'twitter/sign-in/';

    twttr.anywhere(function (T) {
        T.signIn();
    });
}

function twitter_autenticate(user)
{
    var dataTW = {
        twitter_id: user.id
    }
    $.ajax({
        type: "GET",
        url: WEB_PATH + "app/frontend/ajax/usuario/twitter_link.php",
        data: dataTW,
        async: false,
        success: function(response) {
            var result = eval('('+response+')');
            if (result.code != 0) {
                window.location.reload();
            } else {
        //reload_head();
        }
        }
    });
}


/******************** TWITTER_LIST ********************/
//var TWITTER_LIST_RESULTS;
var TWITTER_REFRESH_TIME = 120; // segundos
var twitter_list_updater_id_interval = 0;
var twitter_list_updater_loading = false;
//var twitter_max_id = 0;
//var twitter_search = "";

function twitter_list_updater_start()
{
    twitter_list_updater_id_interval = setInterval(twitter_list_updater_refresh, (TWITTER_REFRESH_TIME * 1000));
}

function twitter_list_updater_stop()
{
    clearInterval(twitter_list_updater_id_interval);
}

function twitter_list_updater_refresh()
{
    if (twitter_list_updater_loading) return;
    twitter_list_updater_loading = true;
    twitter_list_updater_stop();
    var listados = $('.listado_twitter');

    $.each(listados,function(i, val){
        //console.log(this);
        var hidden_id_listado = $(this).find('input[type=hidden][name=id_listado]');
        var hidden_ultima_fecha = $(this).find('input[type=hidden][name=ultima_fecha]');
        var hidden_cant_tweets = $(this).find('input[type=hidden][name=cant_tweets]');
        id_listado = hidden_id_listado.val();
        ultima_fecha = hidden_ultima_fecha.val() ? hidden_ultima_fecha.val() : '';
        cant_tweets = hidden_cant_tweets.val() ? hidden_cant_tweets.val() : 20;
        //        console.log(id_listado);
        //        console.log(id_max_tweet);
        //        console.log(cant_tweets);
        $.ajax({
            method: 'get',
            //            async: true,
            data: {
                fecha_ultimo_tweet: ultima_fecha,
                id_listado: id_listado
            },
            dataType: 'json',
            url: WEB_PATH + 'app/frontend/ajax/twitter_get_tweets.php',//app/frontend/ajax/twitter_get_tweets.php
            success: function(data) {
                //                if (twitter_search) {
                //                    $('#div_twitter_title').html('<span>Resultados para la b&uacute;squeda de: <span class="text"> &quot;'+twitter_search+'&quot;</span></span>');
                //                } else {
                //                    $('#div_twitter_title').html('');
                //                }
                if (data.fecha_ultimo_tweet != null && data.fecha_ultimo_tweet != ultima_fecha) {
                    hidden_ultima_fecha.val(data.fecha_ultimo_tweet);
                    var item = $('<div>' + data.html + '</div>').hide();
                    $('#' + id_listado + " > .jspContainer > .jspPane").prepend(item);
                    item.fadeIn(1000);
                    // Dejar únicamente los últimos N tweets visibles (para no sobrecargar)
                    var tweets = $('#' + id_listado).find('.tweet').size();
                    for (i = tweets; i > cant_tweets; i--) {
                        $('#' + id_listado).find('.tweet').last().remove();
                    }
                    $('.scroll-pane').jScrollPane({
                        //showArrows:false,
                        //scrollbarWidth:5
                        });
                }
                twitter_list_updater_loading = false;
                twitter_list_updater_start();
            },
            complete: function() {},
            error: function() {
                twitter_list_updater_loading = false;
                twitter_list_updater_start();
            }
        });
    });

//Solo hacer el llamado si el tab seleccionado es el de twitter

}


//Mostrar el siguiente tweet
function showNextTweet(){
	var oTweetActual = $('.main_left .tweet.on');
	var oTweetProx = oTweetActual.next('.main_left .tweet')

	if(!oTweetProx.size() > 0)
		oTweetProx = $('.main_left .tweet:first');

	oTweetActual.fadeOut(6000, function(){
		oTweetActual.removeClass('on');
		oTweetProx.fadeIn(2500);
		oTweetProx.addClass('on');
		oTweetProx.removeClass('off');
	});
}


/******************** TWITTER_FORM ********************/
function twitter_form_open()
{

}

/******************** TWITTER_SEARCH ********************/
function twitter_search_open()
{
    $('#div_twitter_search').toggle();
    if ($('#div_twitter_search :visible').size() > 0) $('#inp_twitter_search').focus();
}

function twitter_search_submit()
{
    twitter_max_id = 0;
    twitter_list_updater_stop();
    $('#div_twitter_search').hide();
    $('#div_twitter_list').fadeOut(1000, function() {
        $('#div_twitter_list').html('');
        $('#div_twitter_list').show();
        twitter_search = $('#inp_twitter_search').val();
        twitter_list_updater_refresh();
    });
}

/******************** LINKEDIN ********************/
function linkedin_login() {

    IN.User.authorize(linkedin_callback)

}

function linkedin_callback() {
//alert("callback");
}

function onLinkedInLoad() {
    IN.Event.on(IN, "auth", onLinkedInAuth);
}

function onLinkedInAuth() {
    IN.API.Profile("me").result(linkedin_link);
}

function linkedin_link(users) {

    user = users.values[0];

    var dataTW = {
        linkedin_id: user.id
    }
    $.ajax({
        type: "POST",
        url: WEB_PATH + "app/frontend/ajax/usuario/linkedin_link.php",
        data: dataTW,
        async: false,
        success: function(response) {
            var result = eval('('+response+')');
            if (result.code != 0) {
                window.location.reload();
            } else {
        //reload_head();
        }
        }
    });

}

