List of usage examples for com.liferay.portal.security.sso.facebook.connect.constants FacebookConnectWebKeys FACEBOOK_USER_ID
String FACEBOOK_USER_ID
To view the source code for com.liferay.portal.security.sso.facebook.connect.constants FacebookConnectWebKeys FACEBOOK_USER_ID.
Click Source Link
From source file:com.liferay.login.authentication.facebook.connect.web.internal.portlet.action.FacebookConnectAction.java
License:Open Source License
protected User setFacebookCredentials(HttpSession session, long companyId, String token) throws Exception { JSONObject jsonObject = _facebookConnect.getGraphResources(companyId, "/me", token, "id,email,first_name,last_name,gender,verified"); if ((jsonObject == null) || (jsonObject.getJSONObject("error") != null)) { return null; }//from w w w . ja v a 2 s.com if (_facebookConnect.isVerifiedAccountRequired(companyId) && !jsonObject.getBoolean("verified")) { return null; } User user = null; long facebookId = jsonObject.getLong("id"); if (facebookId > 0) { session.setAttribute(FacebookConnectWebKeys.FACEBOOK_ACCESS_TOKEN, token); user = _userLocalService.fetchUserByFacebookId(companyId, facebookId); if ((user != null) && !user.isActive()) { return null; } else if ((user != null) && (user.getStatus() != WorkflowConstants.STATUS_INCOMPLETE)) { session.setAttribute(FacebookConnectWebKeys.FACEBOOK_USER_ID, String.valueOf(facebookId)); } } String emailAddress = jsonObject.getString("email"); if ((user == null) && Validator.isNotNull(emailAddress)) { user = _userLocalService.fetchUserByEmailAddress(companyId, emailAddress); if ((user != null) && !user.isActive()) { return null; } else if ((user != null) && (user.getStatus() != WorkflowConstants.STATUS_INCOMPLETE)) { session.setAttribute(WebKeys.FACEBOOK_USER_EMAIL_ADDRESS, emailAddress); } } if (user != null) { if (user.getStatus() == WorkflowConstants.STATUS_INCOMPLETE) { session.setAttribute(WebKeys.FACEBOOK_INCOMPLETE_USER_ID, facebookId); user.setEmailAddress(jsonObject.getString("email")); user.setFirstName(jsonObject.getString("first_name")); user.setLastName(jsonObject.getString("last_name")); return user; } user = updateUser(user, jsonObject); } else { user = addUser(session, companyId, jsonObject); } return user; }