Search code examples
facebookfbmlfbjs

Publish to Current user's wall using FBJS in FBML application


I need to publish some message to the current user's wall using FBJS in FBML application. When I use

window.fbAsyncInit = function() {
    FB.init({appId: 'MY_APP_ID', status: true, cookie: true, xfbml: false});
};

i am getting an error :- FB is not defined. and window is not defined. For publishing i am using this code

function graphStreamPublish(){
           var body = document.getElementById("txtTextToPublish").value;
            FB.api('/me/feed', 'post', { message: body }, function(response) {
                if (!response || response.error) {
                    // alert('Error occured');
                } else {
                    // alert('Post ID: ' + response.id);
                }
           });
     }

(I cannot use alert in facebook..)

Thanks in advance..


Solution

  • If you're using FBML, you should be using FBJS instead of the Facebook Connect API.

    var body = document.getElementById('txtTextToPublish').getValue();
    Facebook.streamPublish(body);
    

    Note the getValue() call instead of .value due to use of FBJS.