var fbapi_uid = '';
var fbapi_request;
var fbapi_nowLoggedIn = false;
var fbapi_askConnect = false;
var delim = "_::_";
function fbapi_init(apikey) {
    FB.init(apikey, "xd_receiver.htm"); 
    fbapi_connect();
    if (fbapi_nowLoggedIn) {
        fbapi_loggedIn();
        fbapi_nowLoggedIn = false;
    }
}
function fbapi_connect() {
    FB.ensureInit ( function () {
    FB.Connect.ifUserConnected(fbapi_fbConnected, fbapi_fbNotConnected);
    });
    FB.ensureInit ( function () {
    FB.Facebook.get_sessionState().waitUntilReady(
        function() { 



            

        }
    );
  });
}
function fbapi_fbConnected(uid) {
    //alert('connected\n'+uid);
    if (!guest_id) {
        fbapi_connectedReload();
        //var url = 'x_fb.php?action=connected';
        //fbapi_request = new xmlhttp_request(url, fbapi_fbConnectedResp, 'load');
    } else {
        var fbconnect = fbapi_getFBConnectDiv();
        if (fbconnect) {
            fbconnect.innerHTML = '<fb:profile-pic uid="'+uid+'" width="30" height="30px" size=\"square\" facebook-logo="true" ></fb:profile-pic>';
            FB.XFBML.Host.parseDomTree(); 
        }
    }
    
}
function fbapi_fbConnectedResp() {
    var logindiv = document.getElementById('login');
    if (logindiv) {
        try {
            logindiv.innerHTML = decodeURIComponent(fbapi_request.response);
        } catch (e) {
            logindiv.innerHTML = unescape(fbapi_request.response);
        }
    } 

}
function fbapi_fbNotConnected() {
    //alert('not connected');
    var fbconnect = fbapi_getFBConnectDiv();
    if (fbconnect) {
	FB.ensureInit(function() { 
        fbconnect.innerHTML = '<fb:login-button size="medium" onlogin="fbapi_nowLoggedIn = true;"></fb:login-button>';
        FB.XFBML.Host.parseDomTree(); 
	});
    }
}
function fbapi_loggedIn() {
    var url = 'x_fb.php?action=logged_in';
    fbapi_request = new xmlhttp_request(url, fbapi_loggedInResp, 'load');

}
function fbapi_loggedInResp() {
    var aresp = fbapi_request.response.split(delim);
    if (aresp[0] == 'ask_login_and_connect_account') {
        document.body.innerHTML += aresp[1];
    } else {
        fbapi_connectedReload();
    }
}
function fbapi_logout(url) {
    if (url == undefined) url = '';
    
    if (fbapi_uid == '') {
        document.location = url;
    } else {
        if (url == '') {
            FB.Connect.logout(fbapi_loggedOut);
        } else {
            FB.Connect.logoutAndRedirect(url);
        }
    }
}
function fbapi_loggedOut() {
    fbapi_uid = '';
    alert('Uspe\u0161no ste se odjavili sa Facebook-a i sa Subotica.info');
}
function fbapi_siteLogin() { 
    var pn_guestname = encodeURIComponent(document.sitelogin.pn_guestname.value.replace(/^\s+|s+$/g, ''));
    var pn_password = encodeURIComponent(document.sitelogin.pn_password.value.replace(/^\s+|s+$/g, ''));
    if ((pn_guestname == '') || (pn_password == '')) {
        alert('Morate popuniti oba polja');
    } else {
        var url = 'x_fb.php?action=xlogin&pn_guestname='+pn_guestname+'&pn_password='+pn_password;
        fbapi_request = new xmlhttp_request(url, fbapi_siteLoginResp, 'load');
    }
    return false;
}
function fbapi_siteLoginResp() { 
    var aresp = fbapi_request.response.split(delim);
    if (aresp[0] == 'ok') {
        alert(aresp[1]);
        var o = document.getElementById('suinfologin');
        if (o) o.parentNode.removeChild(o);
    } else {
        alert(aresp[1]);
        if (aresp[0] == 'reload') {
            fbapi_connectedReload();
        }
    }
}
function fbapi_connectAccount() { 
    var url = 'x_fb.php?action=connect_account';
    fbapi_request = new xmlhttp_request(url, fbapi_loggedInResp, 'load');
}
function fbapi_connectedReload() {
    var loc = document.location.href;
    if ((loc.indexOf('login.php') != -1) || (loc.indexOf('register.php') != -1)) {
        loc = baseurl;
    } else {
        loc = loc.replace(/.logout=1/, '');
        loc = loc.replace(/.fbconnected=./, '');
    }
    var sign = '&';
    if (loc.indexOf('?') == -1) {
        sign = '?';
    }
    document.location = loc + sign + 'fbconnected=' + (fbapi_nowLoggedIn ? 2 : 1);    
}
function fbapi_getFBConnectDiv() {
    var fbconnect = document.getElementById('fbconnect');
    if (!fbconnect) {
        var logindiv = document.getElementById('login');
        var fbconnect = document.createElement('DIV');
        fbconnect.id = 'fbconnect';
        insertAfter(fbconnect, logindiv);
        
    }
    return fbconnect;
}
