def activate(request, activation_key): """ Activates a user's account, if their key is valid and hasn't expired. """ from registration.models import RegistrationProfile activation_key = activation_key.lower() account = RegistrationProfile.objects.activate_user(activation_key) if account: # ** hack for logging in the user ** # when the login form is posted, user = authenticate(username=data['username'], password=data['password']) # ...but we cannot authenticate without password... so we work-around authentication account.backend = settings.AUTHENTICATION_BACKENDS[0] login(request, account) contact = Contact.objects.get(user=account) request.session[CUSTOMER_ID] = contact.id send_welcome_email(contact.email, contact.first_name, contact.last_name) signals.satchmo_registration_verified.send(contact, contact=contact) context = RequestContext(request, { 'account': account, 'expiration_days': config_value('SHOP', 'ACCOUNT_ACTIVATION_DAYS'), }) return render_to_response('registration/activate.html', context)
def add_user(username, firstname, lastname, password, email): new_user = User(username, firstname, lastname, password, email) db.session.add(new_user) db.session.commit() activation_link = request.url_root + URL_PREFIX[ 1:] + '/user/activate/' + get_activation_link(username) print activation_link if SEND_EMAILS: mail.send_welcome_email(new_user, activation_link)
def register(): if current_user.is_authenticated(): return redirect(url_for("resumes")) form = RegistrationForm() if form.validate_on_submit(): email = form.email.data display_name = form.display_name.data password = form.password.data u = User(email, display_name, password) db.session.add(u) db.session.commit() # TODO: Capture first and last name? personalized email? mail.send_welcome_email(email) login_user(u) return redirect(url_for("resumes")) return render_template('register.html', form=form)