def METHOD_NAME(self):
    for field, attr in self.settings.USER_ATTR_MAP.items():
        if field in ['groups']:
            continue
        try:
            value = self.attrs[attr][0]
            value = value.strip()
            if field == 'is_active':
                if attr.lower() == 'useraccountcontrol' and value:
                    value = int(value) & LDAP_AD_ACCOUNT_DISABLE != LDAP_AD_ACCOUNT_DISABLE
                else:
                    value = is_true(value)
        except LookupError:
            logger.warning("{} does not have a value for the attribute {}".format(self.dn, attr))
        else:
            if not hasattr(self._user, field):
                continue
            if isinstance(getattr(self._user, field), bool):
                if isinstance(value, str):
                    value = value.lower()
                value = value in ['true', '1', True]
            setattr(self._user, field, value)
    email = getattr(self._user, 'email', '')
    email = construct_user_email(self._user.username, email)
    setattr(self._user, 'email', email)