def create_code(): data = parse_request(RoleCodeCreateSchema) signature = Role.SIGNATURE.dumps(data['email']) url = '{}activate/{}'.format(app_ui_url, signature) role = Role(email=data['email'], name='Visitor') notify_role_template(role, 'Registration', 'email/registration_code.html', url=url) return jsonify({ 'status': 'ok', 'message': 'To proceed, please check your email.' })
def invite_email(): data = parse_request(schema=RoleInviteSchema) signature = Role.SIGNATURE.dumps(data['email']) url = '{}signup/{}'.format(app_url, signature) role = Role(email=data['email'], name='Visitor') notify_role_template(role, 'Registration', 'email/registration_invitation.html', url=url) return jsonify({ 'status': 'ok', 'message': 'To proceed, please check your email.' })
def challenge_role(data): """Given an email address, this will send out a message to allow the user to then register an account.""" signature = Role.SIGNATURE.dumps(data["email"]) url = "{}activate/{}".format(settings.APP_UI_URL, signature) role = Role(email=data["email"], name=data["email"]) params = dict( url=url, role=role, ui_url=settings.APP_UI_URL, app_title=settings.APP_TITLE ) plain = render_template("email/registration_code.txt", **params) html = render_template("email/registration_code.html", **params) log.info("Challenge: %s", plain) email_role(role, gettext("Registration"), html=html, plain=plain)
def create_code(): data = parse_request(RoleCodeCreateSchema) signature = Role.SIGNATURE.dumps(data['email']) url = '{}activate/{}'.format(settings.APP_UI_URL, signature) role = Role(email=data['email'], name='Visitor') log.info("Confirmation URL [%r]: %s", role, url) notify_role(role, gettext('Registration'), 'email/registration_code.html', url=url) return jsonify({ 'status': 'ok', 'message': gettext('To proceed, please check your email.') })
def invite_email(): data = request_data() email = data.get('email') if not email: abort(400) signature = Role.SIGNATURE_SERIALIZER.dumps(email, salt=email) url = '{}signup/{}'.format(app_url, signature) role = Role(email=email, name='Visitor') notify_role(role=role, subject='Registration', html=render_template('email/registration_invitation.html', url=url, role=role)) return jsonify({'status': 'To proceed, please check your email.'}), 201