registration: refactoring and add activation error page