List of usage examples for com.liferay.portal.kernel.exception UserFieldException hasFields
public boolean hasFields()
From source file:eu.gerhards.liferay.services.angular.service.impl.AngularUserServiceImpl.java
License:Open Source License
protected void validateUpdatePermission(User user, String screenName, String emailAddress, String firstName, String middleName, String lastName, long prefixId, long suffixId, int birthdayMonth, int birthdayDay, int birthdayYear, boolean male, String jobTitle) throws PortalException { List<String> fields = new ArrayList<>(); Contact contact = user.getContact(); Calendar birthday = CalendarFactoryUtil.getCalendar(); birthday.setTime(contact.getBirthday()); if ((birthdayMonth != birthday.get(Calendar.MONTH)) || (birthdayDay != birthday.get(Calendar.DAY_OF_MONTH)) || (birthdayYear != birthday.get(Calendar.YEAR))) { fields.add("birthday"); }/*w w w.ja v a 2 s. co m*/ if (!StringUtil.equalsIgnoreCase(emailAddress, user.getEmailAddress())) { fields.add("emailAddress"); } if (!StringUtil.equalsIgnoreCase(firstName, user.getFirstName())) { fields.add("firstName"); } if (male != contact.getMale()) { fields.add("gender"); } if (!StringUtil.equalsIgnoreCase(jobTitle, user.getJobTitle())) { fields.add("jobTitle"); } if (!StringUtil.equalsIgnoreCase(lastName, user.getLastName())) { fields.add("lastName"); } if (!StringUtil.equalsIgnoreCase(middleName, user.getMiddleName())) { fields.add("middleName"); } if (prefixId != contact.getPrefixId()) { fields.add("prefix"); } if (!StringUtil.equalsIgnoreCase(screenName, user.getScreenName())) { fields.add("screenName"); } if (suffixId != contact.getSuffixId()) { fields.add("suffix"); } UserFieldException ufe = new UserFieldException(); for (String field : fields) { if (!UsersAdminUtil.hasUpdateFieldPermission(getPermissionChecker(), getUser(), user, field)) { ufe.addField(field); } } if (ufe.hasFields()) { throw ufe; } }