сообщение с подтверждением по электронной почте после автоматического входа в систему

Я использую grails 2.3.2 и spring security rc2 для аутентификации и могу автоматически входить в систему и отправлять электронное письмо с подтверждением по следующему адресу:

sendMail {
                from "[email protected]"
                to params.user.username
                subject "Registration "
                body "You have register as following ID :"+institution.id+" \n" +
                        "Please click following link for verification "+
                        " \n"+baseURL+"/home/compare?code="+random+""
            }

 Authentication authentication = new UsernamePasswordAuthenticationToken(params.user.username, params.user.password);
            SecurityContextHolder.getContext().setAuthentication(authentication);

но мне нужно, чтобы сообщение отображалось на каждой странице, если пользователь не щелкнул ссылку подтверждения, и если пользователь щелкнул электронное письмо с подтверждением, тогда сообщение не должно появляться. Есть ли способ сделать это, пожалуйста, помогите...


person J.Srivastava    schedule 07.05.2014    source источник
comment
В чем именно проблема? Действие, обрабатывающее ссылку подтверждения, может сохранять любую информацию в учетной записи пользователя. Затем вы можете использовать его, чтобы отличать подтвержденных пользователей от неподтвержденных.   -  person lukelazarovic    schedule 07.05.2014


Ответы (1)


Сохраняйте статус соответствия в домене пользователя. установить значение nullable :true.set логическое значение

когда этот URL-адрес активируется пользователем, установите истинный статус подтверждения в домене пользователя.

в гсп,

<g:if test="{session.loggedInUser.confirmStatus== false}">
display like click confirmation link from your mail
</g:if>
person Visme    schedule 07.05.2014