Pink-El Posted January 25, 2016 Share Posted January 25, 2016 Hello, I need create facebook login in my app. I added fblogin.js to the custom files When I use the following code <fb:login-button scope="public_profile,email" onlogin="checkLoginState();"></fb:login-button><div id="status"></div> On click event back me with a result to the java function on the page function testAPI(userID) { console.log('Welcome! Fetching your information.... '); FB.api('/me', function(response) { ajaxRequest(MainmForm, 'fblogin', []); document.getElementById('status').innerHTML = 'Thanks for logging in, ' + response.name+' ID '+userID +'!'; }); } I tried to generate ajax event but I`ve got error message Event:fblogin Object not found in session list How to fix it? fblogin.js // JavaScript Document // This is called with the results from from FB.getLoginStatus(). function statusChangeCallback(response) { console.log('statusChangeCallback'); console.log(response); // The response object is returned with a status field that lets the // app know the current login status of the person. // Full docs on the response object can be found in the documentation // for FB.getLoginStatus(). if (response.status === 'connected') { // Logged into your app and Facebook. var uid = response.authResponse.userID; //var uname = response.name; // alert(uname); // alert(uid); testAPI(uid); } else if (response.status === 'not_authorized') { // The person is logged into Facebook, but not your app. document.getElementById('status').innerHTML = 'Please log ' + 'into this app.'; } else { // The person is not logged into Facebook, so we're not sure if // they are logged into this app or not. document.getElementById('status').innerHTML = 'Please log ' + 'into Facebook.'; } } // This function is called when someone finishes with the Login // Button. See the onlogin handler attached to it in the sample // code below. function checkLoginState() { FB.getLoginStatus(function(response) { statusChangeCallback(response); }); } window.fbAsyncInit = function() { FB.init({ appId : '1558074717851346', cookie : true, // enable cookies to allow the server to access // the session xfbml : true, // parse social plugins on this page version : 'v2.5' // use version 2.2 }); // Now that we've initialized the JavaScript SDK, we call // FB.getLoginStatus(). This function gets the state of the // person visiting this page and can return one of three states to // the callback you provide. They can be: // // 1. Logged into your app ('connected') // 2. Logged into Facebook, but not your app ('not_authorized') // 3. Not logged into Facebook and can't tell if they are logged into // your app or not. // // These three cases are handled in the callback function. FB.getLoginStatus(function(response) { statusChangeCallback(response); }); }; // Load the SDK asynchronously (function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0]; if (d.getElementById(id)) return; js = d.createElement(s); js.id = id; js.src = "//connect.facebook.net/en_US/sdk.js"; fjs.parentNode.insertBefore(js, fjs); }(document, 'script', 'facebook-jssdk')); // Here we run a very simple test of the Graph API after login is // successful. See statusChangeCallback() for when this call is made. function testAPI(userID) { console.log('Welcome! Fetching your information.... '); FB.api('/me', function(response) { // if (response.id) { // var facebook_userid = response.id; // } ajaxRequest(MainmForm, 'fblogin', []); //var uid = response.authResponse.userID; //console.log('Successful login for: ' + response.name); document.getElementById('status').innerHTML = 'Thanks for logging in, ' + response.name+' ID '+userID +'!'; }); } Regards, Dmytro Quote Link to comment Share on other sites More sharing options...
Sherzod Posted January 25, 2016 Share Posted January 25, 2016 Hi, Try to analyze this link too: https://fiddle.sencha.com/#fiddle/cmm Best regards. Quote Link to comment Share on other sites More sharing options...
Pink-El Posted January 25, 2016 Author Share Posted January 25, 2016 Well, it`s good code but I can not to understand how implement third-party script with existing page. In my example some java script functions plugin to the page and I just need back some values. The simple way to generate ajax event with parameters and catch there on the server. As far as I can see the problem with first parameter of the ajax event. I need to get UserID and Username for the login. Mainmform is unknow object. Window and document are ok but server part does not catch event. I am lost a little Dmytro Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.