var sAppURL = "";
var sAppKey = "";

var url_front = "";
var path_image = "cms/dacia-h79/css/images/smiley/"
var api;
var friendResult;
var userResult;
var usersResult;
var oFlash = null;
var isFlashReady = false;
var isLoggedIn = false;
var userID = 0;
var ville = "";


/**
 * Lance la pop up de deconexion
 *
 **/
function FBLogOut()
{
    FB.Connect.logout(function()
    {
            isLoggedIn = false;
            FBFlashDispatcher("initBlockFacebook");
    });
}


/**
 * Lance la pop up de connection a facebook
 *
 **/
function FBLogIn()
{
    FB.Connect.requireSession(function()
    {
            FBLoggedIn();
    });


}

/**
 * Lance la pop up de connection a facebook
 *
 **/
function FBShareV2(text,url_image,url_front_site)
{
    //vérifier si connecté :
    if(isLoggedIn){
        FBPublishFeedStoryNewImageV2(text,url_image,url_front_site);
    }else{
        FB.Connect.requireSession(function()
        {
            api = FB.Facebook.apiClient;
            userID      = api._session.uid;
            isLoggedIn = true;
            FBPublishFeedStoryNewImageV2(text,url_image,url_front_site);
        });
    }
}
/**
 * initialise les infos de l'application lorsque l'utilisateur est connecté
 *
 **/
function FBLoggedIn()
{
    api = FB.Facebook.apiClient;
    userID      = api._session.uid;
    isLoggedIn = true;

    //FBFlashDispatcher("onLoggedIn",userID);
    FBUserInfoVille();
}

/**
 * Affiche dans la console
 *
 **/
function trace(msg)
{
    if(console){
     console.debug(msg);
    }
}

function inspect(obj)
{
	if(console)
		console.dir(obj);
}


/**
 * Initialise l'application
 *
 **/
function FBInit(appKey, appURL,objFlash)
{
	sAppKey = appKey;
	sAppURL = appURL;
	oFlash = objFlash;

	FB.init(sAppKey, sAppURL,{"ifUserConnected" : FBUpdateConnected});

}

function FBInitFlash(appKey, appURL)
{
    sAppKey = appKey;
    sAppURL = appURL;

    FB.init(sAppKey, sAppURL,{"ifUserConnected" : FBUpdateConnected});

}


function FBUpdateConnected(){
    api = FB.Facebook.apiClient;
    if(api._session!=null){
        isLoggedIn  = true;
        userID      = api._session.uid;
        FBUserInfoVille();
    }
}

function FBFlashLoaded(url_front_flash)
{
        url_front       = url_front_flash;
	isFlashReady    = true;
	if(isLoggedIn)
	{
                trace(ville);
		FBFlashDispatcher("onLoggedIn",ville,userID);
	}
}




/**
 * Publie sur le wall de facebook
 *
 **/
function FBPublishFeedStoryNew(message, attachement,action_links,message_prompt)
{
    FB.ensureInit(function()
    {
      FB.Connect.streamPublish(message,attachement,action_links,userID,message_prompt);
    });
}


function FBUserInfoVille(){
    FB.ensureInit(function()
    {
        FB.Facebook.apiClient.users_getInfo(userID,['current_location'], function(unifoo, ex){
            if(unifoo[0].current_location != null){
                ville = unifoo[0].current_location.city;
            }else{
                ville = "";
            }
            oFlash["onLoggedIn"](userID,ville);
           
        });

    });
}


function FBUserInfoVilleInit(){
    FB.ensureInit(function()
    {
        FB.Facebook.apiClient.users_getInfo(userID,['current_location'], function(unifoo, ex){
            if(unifoo[0].current_location != null){
                ville = unifoo[0].current_location.city;
            }else{
                ville = "";
            }
            oFlash["onLoggedIn"](userID,ville);

        });

    });
}

/**
 * Méthode qui initialise et prépare les informastions pour l'envoi des images
 *
 **/

function FBPublishFeedStoryNewImage(image,text,url_image,url_front_site){
    var attachment = {
                        'description':text,
                        'media': [{'type':'image',
                             'src':url_image+path_image+image,
                             'href':url_front_site}]};

   FBPublishFeedStoryNew(null,attachment,null,null);
}

/**
 * Méthode qui initialise et prépare les informastions pour l'envoi des images
 *
 **/

function FBPublishFeedStoryNewImageV2(text,url_image,url_front_site){
    var attachment = {
                        'description':text,
                        'media': [{'type':'image',
                             'src':url_image,
                             'href':url_front_site}]};

   FBPublishFeedStoryNew(null,attachment,null,null);
}

/**
 * Iviter tes amis
 *
 */
function FBInviteFriends(title,urlFront,urlReturn,message,button,width,height)
{
	FB.ensureInit(function()
	{
            var dialog = new FB.UI.FBMLPopupDialog(title);
            var fbml = "<fb:fbml>" +
                        "<fb:request-form type='"+title+"'  style=\"width:"+width+"px; height:"+height+"px;\" onsubmit=\"return false;\" action=\"" +urlReturn+ "\"\tmethod=\"GET\" invite=\"true\" type=\"\" content=\""+message+"" +
                                "<fb:req-choice url='"+urlFront+"' label='Confirm' />\">" +
                                "<fb:multi-friend-selector\tshowborder=\"false\" exclude_ids=\"\" actiontext=\""+button+"\" max=\"35\" cols=\"5\" rows=\"4\" bypass=\"cancel\"\tshowborder=\"false\" />" +
                        "</fb:request-form>" +
                "</fb:fbml>";

            dialog.setFBMLContent(fbml);
            dialog.setContentWidth(width);
            dialog.setContentHeight(height);

            dialog.show();
    });
}

function FBFlashDispatcher(func)
{
	if(oFlash)
	{
		if(arguments.length > 1)
			oFlash[func](Array.prototype.slice.call(arguments).slice(1)[0]);
		else
			oFlash[func]();
	}
}



window.onload = function (){
    var listFlash = document.getElementsByTagName('embed');

    for(var i=0; i<listFlash.length; i++){
       oFlash =  listFlash[i];//.GetVariable("SITE_ID");
       var flashvarsString = oFlash.getAttribute("flashvars");

       if(flashvarsString.search("_TEQ_FLASH_") != -1){
        break;
       }else{
           oFlash = null;
       }
    }
}
