Простая интеграция JS-кода для входа в Facebook через Drupal 8 в шаблон веточки - PullRequest
0 голосов
/ 28 мая 2019

Я пишу пользовательский модуль для входа в систему через социальные сети, такие как Facebook, Gmail, Twitter. Я начал с Facebook первым. Я выполнил все шаги входа в систему Facebook для быстрого старта , чтобы получить код js от Facebook для интеграции в мой веб-сайт.

Я использую Drupal 8 , для этого я скопировал весь код в шаблон TWIG . Я не знаю, пропустил ли я что-нибудь здесь, Я не могу получить кнопку входа в Facebook на веб-странице . Кто-нибудь может высветить мои ошибки? Просматриваю вкладку "Сеть" браузера Chrome, вижу, что https://connect.facebook.net/en_US/sdk.js загружается и в списке нет ошибок.

Это мой html.twig файл.

<script>
  window.fbAsyncInit = function() {
    FB.init({
      appId      : 'MyappId',
      cookie     : true,
      xfbml      : true,
      version    : '3.3'
    });

    FB.AppEvents.logPageView();   

  };

  (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 = "https://connect.facebook.net/en_US/sdk.js";
     fjs.parentNode.insertBefore(js, fjs);
   }(document, 'script', 'facebook-jssdk'));

       function checkLoginState() {
      FB.getLoginStatus(function(response) {
        statusChangeCallback(response);
      });
    }

</script>

<h2><b>Choose login method</b></h2>

<ul>
    {% for methods in items %}
        {% if methods.id == 1 %}
            <li> 
                <fb:login-button 
                  scope="public_profile,email"
                  onlogin="checkLoginState();">
                </fb:login-button>
                 {{ methods.name }}
            </li>
        {% endif %}

        {% if methods.id == 2 %}
            <li> GMAIL image {{ methods.name }}</li>
        {% endif %}

        {% if methods.id == 3 %}
            <li> TWITTER image {{ methods.name }}</li>
        {% endif %}

    {% endfor %}
</ul>
...