Example usage for com.liferay.portal.kernel.exception UserFieldException UserFieldException

List of usage examples for com.liferay.portal.kernel.exception UserFieldException UserFieldException

Introduction

In this page you can find the example usage for com.liferay.portal.kernel.exception UserFieldException UserFieldException.

Prototype

public UserFieldException() 

Source Link

Usage

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");
    }/*from ww  w.j  a  v a 2s  . c om*/

    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;
    }
}