0

我需要在我们的 SuiteCommerce 高级网站中集成社交注册/登录,有人知道我们可以这样做吗?帮助将不胜感激。我们的 SuiteCommerce 版本是 Vension 2016。

4

2 回答 2

1

我在搜索 1 天后设法做到了这一点,您只需对登录和注册页面进行更改

使用 Facebook 注册--> 这将使用 FB 详细信息将其粘贴到当前输入框并自动单击提交按钮

文件路径--> LoginRegister@2.2.0/Templates/login_register_register.tpl

代码-->

<!-- Code Button to get The Login With Fb -->
<fb:login-button scope="public_profile,email" id="facebook-reg" onlogin="checkLoginState();">
Sign Up With Facebook
</fb:login-button>

<script>
  function statusChangeCallback(response) {
    if (response.status === 'connected') {
      GetFbUserDetails();
    } else if (response.status === 'not_authorized') {
      document.getElementById('status').innerHTML = 'Please log ' +
        'into this app.';
    } else {
      document.getElementById('status').innerHTML = 'Please log ' +
        'into Facebook.';
    }
  }
  function checkLoginState() {
        document.getElementById("fblogin").innerHTML="Processing..";
    FB.getLoginStatus(function(response) {
      statusChangeCallback(response);
    });
  }
  window.fbAsyncInit = function()
    {
  FB.init({
    appId      : 'your-app-id',
    cookie     : true,  // enable cookies to allow the server to access
                        // the session
    xfbml      : true,  // parse social plugins on this page
    version    : 'v2.6' // use graph api version 2.8
  });
  FB.getLoginStatus(function(response)
    {
    statusChangeCallback(response);});
  };

    (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'));

  function GetFbUserDetails()
    {
            FB.api('/me?fields=id,email,first_name,last_name', function(response)
            {
                     var fname = document.getElementById('register-firstname');
                     fname.value = response.first_name;

                     var lname = document.getElementById('register-lastname');
                     lname.value = response.last_name;

                     var email = document.getElementById('register-email');
                     email.value = response.email;

                     var pass = document.getElementById('register-password');
                     pass.value = response.id;

                     var pass2 = document.getElementById('register-password2');
                     pass2.value = response.id;
                     if(pass!=="" && pass2!=="")
                     {
                        document.getElementById('facebook').click();
                     }
    }  );
}

使用 Facebook 登录-->您可以使用相同的代码来完成此操作..

让我知道您对此的评论

于 2017-01-11T11:17:47.343 回答
0

Anup,您不能在车把内插入 javascript,它不受支持。

至于原来的问题,网上商店用户注册是通过 session.registerCustomer 函数完成的。它目前不支持 Facebook SSO。Netsuite 支持一些协议,但它们用于从不同的应用程序登录到后端。

于 2018-12-07T17:20:51.747 回答