def login(): form = LoginForm(request.form) # Handle logging in if request.method == 'POST': if form.validate_on_submit(): login_user(form.user) flash("You are logged in.", 'success') if form.user.is_admin(): redirect_url = request.args.get("next") or url_for( "admin.admin_dashboard") return redirect(redirect_url) else: if request.args.get("next"): return redirect(request.args.get("next")) if form.user.first_department(): return redirect( url_for("department.department_dashboard", department_id=form.user.first_department().id)) else: flash( "You are not registered in any department. Please contact support.", 'alert alert-danger') return render_template("public/login.html", form=form, published=True) else: flash_errors(form) return render_template("public/login.html", form=form, published=True)
def login(): form = LoginForm(request.form) # Handle logging in if request.method == 'POST': if form.validate_on_submit(): login_user(form.user) flash("You are logged in.", 'success') if form.user.is_admin(): redirect_url = request.args.get("next") or url_for("admin.admin_dashboard") return redirect(redirect_url) else: if request.args.get("next"): return redirect(request.args.get("next")) if form.user.first_department(): # direct the user to the first existing dataset page redirect_path = form.user.first_department().get_first_dataset_path() if redirect_path: return redirect(url_for(redirect_path, short_name=form.user.first_department().short_name)) else: flash("There are no datasets configured for this department.", 'alert alert-danger') return redirect(url_for('public.home')) else: flash("You are not registered in any department. Please contact support.", 'alert alert-danger') return render_template("public/login.html", form=form, published=True) else: flash_errors(form) return render_template("public/login.html", form=form)
def add_department(): form = NewDepartmentForm(request.form) if request.method == 'POST': if form.validate_on_submit(): Department.create(name=form.department_name.data) flash('Department %s created.' % form.department_name.data, 'info') return redirect(url_for('admin.admin_dashboard')) else: flash_errors(form) return render_template("admin/newDepartment.html", form=form)
def new_invite_code(): form = NewInviteForm(request.form) form.department_id.choices = [(d.id, d.name) for d in Department.query.order_by('name')] if request.method == 'POST': if form.validate_on_submit(): invite = Invite_Code.create(department_id=form.department_id.data, code=str(uuid.uuid4()), used=False) flash('Invite Code for {0}: {1} created.'.format(invite.department.name, invite.code), 'info') return redirect(url_for('admin.view_active_invites')) else: flash_errors(form) return render_template("admin/newInvite.html", form=form)
def add_department(): form = NewDepartmentForm(request.form) if request.method == 'POST': if form.validate_on_submit(): Department.create(name=form.department_name.data, short_name=form.department_short_name.data) flash('Department %s created.' % form.department_name.data, 'info') return redirect(url_for('admin.admin_dashboard')) else: flash_errors(form) return render_template("admin/newDepartment.html", form=form)
def new_invite_code(): form = NewInviteForm(request.form) form.department_id.choices = [(d.id, d.name) for d in Department.query.order_by('name')] if request.method == 'POST': if form.validate_on_submit(): invite = Invite_Code.create(department_id=form.department_id.data, code=str(uuid.uuid4()), used=False) flash( 'Invite Code for {0}: {1} created.'.format( invite.department.name, invite.code), 'info') return redirect(url_for('admin.admin_dashboard')) else: flash_errors(form) return render_template("admin/newInvite.html", form=form)
def home(): form = InterestForm(request.form, csrf_enabled=False) if request.method == 'POST': if form.validate_on_submit(): Interested.create( name=form.name.data, agency=form.agency.data, location=form.location.data, phone=form.phone.data, email=form.email.data, comments=form.comments.data) flash("Thank you. We will be in contact shortly.", 'success') return redirect(url_for('public.home')) else: flash_errors(form) return render_template("public/interest_form.html", interest_form=form)
def password_reset(password_reset_uuid): user = User.query.filter_by(password_reset_uuid=password_reset_uuid).first() if not user: abort(404) form = PasswordResetForm(request.form, csrf_enabled=False) if form.validate_on_submit(): user.password_reset_uuid = None user.set_password(form.password.data) user.save() flash("Thank you for resetting your password. You can now log in.", 'success') return redirect(url_for('public.login')) else: flash_errors(form) return render_template('public/passwordReset.html', form=form)
def home(): form = LoginForm(request.form) # Handle logging in if request.method == "POST": if form.validate_on_submit(): login_user(form.user) flash("You are logged in.", "success") if form.user.is_admin(): redirect_url = request.args.get("next") or url_for("admin.admin_dashboard") return redirect(redirect_url) else: redirect_url = request.args.get("next") or url_for( "department.department_dashboard", department_id=form.user.department_id ) return redirect(redirect_url) else: flash_errors(form) return render_template("public/home.html", form=form)
def register(): form = RegisterForm(request.form, csrf_enabled=False) if form.validate_on_submit(): invite_code = Invite_Code.query.filter_by(code=form.invite_code.data).first() invite_code.used = True invite_code.save() new_user = User.create( username=form.username.data, email=form.email.data, password=form.password.data, active=True, department_id=invite_code.department_id, ) flash("Thank you for registering. You can now log in.", "success") return redirect(url_for("public.home")) else: flash_errors(form) return render_template("public/register.html", form=form)
def home(): form = InterestForm(request.form, csrf_enabled=False) if request.method == 'POST': if form.validate_on_submit(): Interested.create(name=form.name.data, agency=form.agency.data, location=form.location.data, phone=form.phone.data, email=form.email.data, comments=form.comments.data) # send a slack notification send_slack_message('New Interest Form Submission!', [ form.name.data, form.agency.data, form.location.data, form.phone.data, form.email.data, form.comments.data ]) flash("Thank you. We will be in contact shortly.", 'success') return redirect(url_for('public.home')) else: flash_errors(form) return render_template("public/interest_form.html", interest_form=form)
def register(): form = RegisterForm(request.form, csrf_enabled=False) if form.validate_on_submit(): invite_code = Invite_Code.query.filter_by( code=form.invite_code.data).first() invite_code.used = True invite_code.save() new_user = User.create(username=form.username.data, email=form.email.data, password=form.password.data, active=True) new_user.departments.append( Department.get_by_id(invite_code.department_id)) flash("Thank you for registering. You can now log in.", 'success') return redirect(url_for('public.home')) else: flash_errors(form) return render_template('public/register.html', form=form)
def login(): form = LoginForm(request.form) # Handle logging in if request.method == 'POST': if form.validate_on_submit(): login_user(form.user) flash("You are logged in.", 'success') if form.user.is_admin(): redirect_url = request.args.get("next") or url_for("admin.admin_dashboard") return redirect(redirect_url) else: if request.args.get("next"): return redirect(request.args.get("next")) if form.user.first_department(): return redirect(url_for("department.department_dashboard", department_id=form.user.first_department().id)) else: flash("You are not registered in any department. Please contact support.", 'alert alert-danger') return render_template("public/login.html", form=form, published=True) else: flash_errors(form) return render_template("public/login.html", form=form, published=True)