-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathusers.py
More file actions
38 lines (29 loc) · 1.46 KB
/
users.py
File metadata and controls
38 lines (29 loc) · 1.46 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
from flask import Blueprint, render_template, request, redirect, url_for, current_app
from extensions import db
from flask_mail import Message
users_blueprint = Blueprint('users', __name__)
@users_blueprint.route('/admin/createuser', methods=['GET', 'POST'])
def create_user():
if request.method == 'POST':
first_name = request.form.get('first_name')
last_name = request.form.get('last_name')
email = request.form.get('email')
username = request.form.get('username')
password = request.form.get('password')
if not all([first_name, last_name, email, username, password]):
return render_template('users.html', error_message='Missing required fields')
new_user = User(first_name=first_name, last_name=last_name, email=email, username=username, is_admin=False)
new_user.set_password(password)
db.session.add(new_user)
db.session.commit()
if new_user:
login_url = "http://salesensai.com/login"
msg = Message("Welcome to SensAI", recipients=[email])
msg.body = (f"Thank you for joining SensAI! "
f"Here's a link to login: {login_url}\n\n"
f"Your credentials:\n"
f"Username: {username}\n"
f"Password: {password}")
current_app.extensions['mail'].send(msg)
return redirect(url_for('admin_dashboard'))
return render_template('users.html')