def register(): if not current_app.config['REGISTRATION_ENABLED']: flash("Registration is disabled") return redirect(url_for(current_app.config['ROOT_ENDPOINT'])) form = RegistrationForm() if request.method == "POST": if not form.validate(): flash('Form invalid', 'warning') return redirect(url_for('auth.local.register')) if User.get_by_username(request.form['username']): flash('Username is taken', 'warning') return redirect(url_for('auth.local.register')) if User.get_by_email(request.form['email']): flash('Email is taken', 'warning') return redirect(url_for('auth.local.register')) User.create(request.form['username'], request.form['email'], request.form['password']) User.auth(request.form['email'], request.form['password']) return redirect(request.args.get("next") or url_for(current_app.config['ROOT_ENDPOINT'])) return render_template("auth/register.html", form=form)
def create_user(username, email, password): """ Create a new user """ show_pass = not password if not password: password = random_string(12) if User.get_by_username(username): red("Username %s already exists" % username) return if User.get_by_email(email): red("Email %s already exists" % email) return User.create(username, email, password) green("User %s created" % username) if show_pass: yellow("Password: %s" % password)