Интеграция плагинов входа и комментариев

Я пытаюсь интегрировать на свою страницу как кнопку входа Facebook, так и плагин для комментариев.

У меня они работают отдельно, и когда кто-то входит в систему с помощью кнопки входа, плагин комментариев отвечает (и регистрирует пользователя), но моя проблема заключается в другом; когда кто-то входит в систему, чтобы опубликовать комментарий через подключаемый модуль комментариев, не происходит события, которое можно было бы передать кнопке входа из подключаемого модуля комментариев.

Есть ли способ обойти это?

Спасибо,


person Leonidas    schedule 31.07.2012    source источник


Ответы (1)


Вы должны зарегистрироваться на javascript-событии FB в комментарии или, что еще лучше, войти в систему. Событие входа в систему должно запускаться, когда пользователь входит в систему с помощью действия «Нравится» или «Комментарий»:

    window.fbAsyncInit = function() {
                FB.init({
                    appId   : 'xxxx',
                    status  : true, // check login status
                    cookie  : true, // enable cookies to allow the server to access the session
                    xfbml   : true // parse XFBML
                }); 
   FB.Event.subscribe('auth.login', function() { 

                      /*create a reload in wich you login the user, because now you have the cookie. Or via ajax */
             });
}
person Stoia Alex    schedule 31.07.2012
comment
Эй, спасибо, у меня уже есть этот код, но он работает только тогда, когда пользователь входит в систему с помощью кнопки входа. Вы говорите, что плагин комментариев также должен запускать auth.login? - person Leonidas; 31.07.2012
comment
это то, что я понял из документов: developers.facebook.com/docs /ссылка/javascript/. Я использовал его в действии «Нравится», и это сработало. Я предположил, что вход через плагин комментариев такой же. - person Stoia Alex; 31.07.2012
comment
В любом случае, если это не так, вы должны сделать что-то вроде проверки события comment.create и в нем проверить статус входа в систему: FB.Event.subscribe('comment.create', function() {}); - person Stoia Alex; 31.07.2012
comment
проверка состояния: FB.getLoginStatus (функция (ответ) { if (response.status === 'подключено') {}} - person Stoia Alex; 31.07.2012
comment
Спасибо, я пробовал это, но проблема в том, что пользователь мог войти в систему через комментарии, а затем решить не комментировать, тогда им все равно пришлось бы входить в систему с помощью кнопки входа. - person Leonidas; 31.07.2012
comment
Но вызывает ли это событие? событие comment.create? возможно, действительно есть проблема с локальным хостом. В любом случае, я не понимаю, как вы хотите поймать это на лету. После входа в систему из любого плагина fb после обновления вы можете обнаружить это и начать вход на стороне сервера (приложения). - person Stoia Alex; 31.07.2012
comment
Событие создания комментария действительно срабатывает, как и другой комментарий (удалить? изменить?). Что вы подразумеваете под «после обновления»? Вечером закину на сервер, посмотрим что получится. - person Leonidas; 31.07.2012
comment
Только что попробовал на моем живом веб-сервере и без сигары. Я думаю, может быть, плагин комментариев не отправляет события входа в систему. - person Leonidas; 01.08.2012