fb: кнопка входа не работает без показа лиц - PullRequest
0 голосов
/ 25 августа 2011

Мы только что перешли на новый PHP SDK и JS сегодня.но проблема странная.Когда мы не используем show-face с атрибутом perms, он не показывает всплывающее окно.Единственный способ получить разрешение всплывающего окна, нам нужно использовать show-face attr.

это ошибка?

<fb:login-button perms="email, publish_stream, offline_access, create_event, user_photos, user_online_presence, user_videos, user_website, user_events, user_relationships, user_interests" size="large">Sign Up With Facebook</fb:login-button>

<div id="fb-root"></div>
  <script>
      window.fbAsyncInit = function() {
        FB.init({
          appId: '<?php echo $facebook->getAppID() ?>',
          cookie: true,
          xfbml: true,
          oauth: true
        });
        FB.Event.subscribe('auth.login', function(response) {
          window.location.reload();
        });
        FB.Event.subscribe('auth.logout', function(response) {
          window.location.reload();
        });
      };
      (function() {
        var e = document.createElement('script'); e.async = true;
        e.src = document.location.protocol +
          '//connect.facebook.net/en_US/all.js';
        document.getElementById('fb-root').appendChild(e);
      }());
    </script>

Спасибо

РЕДАКТИРОВАТЬ:

OMG.я только что нашел решение, с новым JS SDK мы должны использовать область вместо атрибута perms!

Ответы [ 2 ]

1 голос
/ 25 августа 2011

с новым JS SDK мы должны использовать контекст вместо атрибута perms!

0 голосов
/ 25 августа 2011

В качестве альтернативы вы можете использовать прямой Javascript и создавать свои собственные кнопки.

<script>
    function addPermissions(permissions){
        FB.login(function(response) {
            if (response.session) {
                if (response.perms) {
                    // user is logged in and granted some permissions.

                } else {
                    // user is logged in, but did not grant any permissions

                }
            } else {
                // user is not logged in
            }
        }, {perms:permissions});
    }
</script>
<a onclick="addPermissions("email, publish_stream,...");">Click me</a>
...