2017-10-05 6 views
0

JavaScriptでthemeDisplayオブジェクトを取得できます。JavaScriptでLiferayのユーザーのメールアドレスを取得するには?

査読:https://web.liferay.com/web/pankaj.kathiriya/blog/-/blogs/usage-of-liferay-js-object

$(document).ready(function() { 
    var userid=Liferay.ThemeDisplay.getUserId; 
    alert(userid); 
}); 

どうUser email Addressを取得するには?

+0

'Liferay.themeDisplay.getUser()。getDisplayEmailAddress(); ' –

+0

あなたはそれをチェックしましたか? –

答えて

1

Liferay JSユーティリティのLiferay.ThemeDisplayまたはちょうどthemeDisplayは、暗黙的にユーザーの電子メールアドレスを含んでいません。 userIduserNameが公開されていますが、getUserまたはUserオブジェクトは含まれていません。

しかし、\html\common\themes\top_js.jspfをJSPフックで上書きすることで実現できます。あなたがする必要があるのはgetUserName: function() {の下に以下の行を追加することです:

getUserEmailAddress: function() { 
    <c:choose> 
     <c:when test="<%= themeDisplay.isSignedIn() %>"> 
      return "<%= UnicodeFormatter.toString(user.getEmailAddress()) %>"; 
     </c:when> 
     <c:otherwise> 
      return ""; 
     </c:otherwise> 
    </c:choose> 
}, 

次にあなたがLiferay.ThemeDisplay.getUserEmailAddress();themeDisplay.getUserEmailAddress();のいずれかにより、ユーザーの電子メールアドレスを取得することができます。

+0

私はLiferay 7に取り組んでいます。私はliferayモジュールフラグメントプロジェクトを書く必要があります。生地は\ html \ common \ themes \ top_js.jspfのjarファイルです –

+0

私はtop_js-ext.jspfにこの関数を追加したいと考えています – ravikuwi

+0

私はLiferay 7でまだ作業していませんが、このファイルは 'liferay-portal/portal-web/docroot/html/common/themes/top_js.jspf'で見つけ出し、変更を加えて上書きすることができます。 –

関連する問題