Пример #1
0
def resend_email():
    error = ""
    form = ForgotForm()
    if form.validate_on_submit():
        email = form.email.data
        user = alumni.query.filter_by(info_email=email).first()
        if user is not None:

            token = s.dumps(email, salt='email-confirm')

            msg = Message('Confirm Email',
                          sender='*****@*****.**',
                          recipients=[email])
            link = url_for('confirm_email', token=token, _external=True)
            msg.body = 'Click here to verify email {}'.format(link)
            mail.send(msg)
            return redirect(url_for('gotoemail'))

        else:
            error = "Invalid credentials"

    html = render_template('pages/login/resend_email.html',
                           form=form,
                           errors=[error])  # MAKE THIS
    return make_response(html)
Пример #2
0
def forgot():
    message_box = ""
    forgot_form = ForgotForm()

    #Only validate forms if the user pressed the submit button
    if 'submit_button' in request.form and request.form['submit_button'].strip(
    ) == 'Send Email':
        if forgot_form.validate_on_submit():
            user = User.query.filter_by(
                email=request.form['email'].strip()).first()
            if user == None:
                message_box = message_box_html(
                    'The provided email address is not associated with an account.',
                    error=True)
            else:
                msg = Message("Your password for ISU Event Planner",
                              sender=ADMINS[0],
                              recipients=[user.email])
                msg.body = "Your password for ISU Event Planner is: " + user.password
                msg.html = "<html>Your password for ISU Event Planner is: " + user.password + "</html>"
                send_async_email(msg)
                message_box = message_box_html('Password reminder sent.')
        else:  #Set error message to the first validation error.
            message_box = get_form_error(forgot_form)

    return render_template('forgot.html',
                           forgot_form=forgot_form,
                           message_box=message_box)
Пример #3
0
def forgot():
    form = ForgotForm()
    if form.validate_on_submit():
        user = find_user(form.email.data)
        if user:
            salt = bcrypt.gensalt()
            password = bcrypt.hashpw(form.password.data.encode(), salt)
            users = []
            #opening users file putting the users in a list
            with open('data/users.csv', 'r') as f:
                for row in f:
                    users.append(row)
            #opening ursers file copying the entire users list with changed password
            with open('data/users.csv', 'w') as f:
                writer = csv.writer(f)
                for row in users:
                    row = row[:-1].split(",")
                    if len(row) >= 2 and form.email.data == row[1]:
                        row[2] = password.decode()
                        writer.writerow(row)
                    elif len(row) >= 2:
                        writer.writerow(row)
            flash(f'Password for {form.email.data} has been changed!',
                  'success')
            return redirect('/login')
        else:
            flash('This email does not exist. Try again.', 'danger')
    return render_template('forgot.html', title='Forgot', form=form)
Пример #4
0
def forgot():
    form = ForgotForm(request.form)
    if form.validate_on_submit():
        try:
            core.user.reset_password(form.email.data)
        except Exception, e:
            flash(str(e), 'alert-warning')
            return redirect(url_for('user.forgot'))
        flash('A new password has been sent to %s.' % form.email.data,
              'alert-success')
        return redirect("/")
Пример #5
0
def reset_request():
    if current_user.is_authenticated:
        return redirect(url_for('home'))
    form = ForgotForm()
    if form.validate_on_submit():
        user = User.query.filter_by(email=form.email.data).first()
        send_reset_email(user)
        flash(
            'An email has been sent to you with instructions to reset your password',
            'warning')
        return (redirect(url_for('login')))
    return render_template('admin/reset_request.html',
                           title='Password Reset',
                           form=form)
Пример #6
0
def forgot():
    form = ForgotForm()
    if form.validate_on_submit():
	user = form.user
        s = get_serializer(form.temppassword.data)
        payload = s.dumps(user.id)
        url = url_for('forgotchange', payload=payload, _external=True)
        msg = Message('Password Reset', sender = ADMINS[0], recipients = [user.email])
        msg.body = "Follow this link to reset password: " + url
        mail.send(msg)
        flash('Password Reset Email Sent')
        return redirect(url_for('login'))
    return render_template('forgot.html',
        title = 'Forgot Password',
        form = form)
Пример #7
0
def forgot():
    """
    This is when  user forgets his username / password
    This module is a TO- DO.
    """
    form = ForgotForm(request.form)
    return render_template('forms/forgot.html', form=form)
Пример #8
0
def forgot():
    forgotForm = ForgotForm()
    if request.method == "POST":
        if forgotForm.validate_on_submit():
            username = request.form.get('username')
            password = request.form.get('password')  #下一步用hash加密
            email = request.form.get('email')
            user = User.query.filter(User.username == username,
                                     User.email == email).first()
            if user:
                user.password = password
                db.session.commit()
                flash('用户密码已重置!')
                return render_template('forgot.html', form=forgotForm)

    return render_template('forgot.html', form=forgotForm)
Пример #9
0
def forgot():

    a_email = session.get('aemail')
    if a_email:
        return redirect(url_for('admin'))

    stud_email = session.get('semail')
    if stud_email:
        return redirect(url_for('student'))

    form = ForgotForm()

    if form.validate_on_submit():
        email = form.email.data
        design = form.design.data

        info = db.execute("SELECT * FROM admininfo WHERE email = :email", {
            "email": email
        }).fetchone()
        info_one = db.execute("SELECT * FROM studentinfo WHERE email = :email",
                              {
                                  "email": email
                              }).fetchone()

        print(form.email.data)

        if design == "admin":
            if info:
                session['fpemailOne'] = info.email
                session['ades'] = "admin"
                return redirect(url_for('change_password'))
            else:
                flash(f'Sorry, your email does not exist, please check again.',
                      'danger')
                return redirect(url_for('forgot'))
        if design == "stud":
            if info_one:
                session['fpemailTwo'] = info_one.email
                session['sdes'] = "stud"
                return redirect(url_for('change_password'))
            else:
                flash(f'Sorry, your email does not exist, please check again.',
                      'danger')
                return redirect(url_for('forgot'))

    return render_template('forgotpass.html', form=form)
Пример #10
0
def index():
    email = None
    result, err = None, None
    f_form = ForgotForm()
    s_form = SignUp()
    l_login = LoginForm()
    if l_login.email_login.data and l_login.validate_on_submit():
        result, err = login(l_login)
        l_login.email_login.data = ''
    elif f_form.email_f.data and f_form.validate_on_submit():
        result, err = forgot(f_form)
        f_form.email_f.data = ''
    elif s_form.email_s.data and s_form.validate_on_submit():
        result, err = signup(s_form)
        s_form.email_s.data = ''
    return result if result else render_template(
        'fc.html', f_form=f_form, s_form=s_form, login_form=l_login, error=err)
Пример #11
0
def forgot():
    session.pop('email', None)
    form = ForgotForm(request.form)
    if request.method == 'POST':
        if not form.validate():
            return render_template('forgot.html', form=form, user=get_user())
        else:
            user = User.query.filter_by(email=form.email.data.lower()).first()
            m = mail.mail()
            e = crypto.crypto()
            # get encrypted link
            encrypted = e.encrypt(user.id, True)
            # email link
            result = m.send_forgot_password(user.email, encrypted)
            form.email.errors.append(result)
            return render_template('forgot.html', form=form, user=get_user())
    else:
        return render_template('forgot.html', form=form, user=get_user())
Пример #12
0
def forgot():
    client=currentSession()
    form = ForgotForm(request.form)
    if request.method == 'POST':
        if not form.validate():
            return render_template('forgot.html', form=form, client=client)
        else:
            user = client.getUserByEmail(form.email.data)
            m = Mail()
            e = Crypto()
            # get encrypted link
            encrypted = e.encrypt(user.id, True)
            # email link
            result = m.send_forgot_password(user.email, encrypted)
            form.email.errors.append(result)
            return render_template('forgot.html', form=form, client=client)
    else:
        return render_template('forgot.html', form=form, client=client)
Пример #13
0
def forgot():
	message_box = ""
	forgot_form = ForgotForm()

	#Only validate forms if the user pressed the submit button
	if 'submit_button' in request.form and request.form['submit_button'].strip() == 'Send Email':
		if forgot_form.validate_on_submit():
			user = User.query.filter_by(email = request.form['email'].strip()).first()
			if user == None:
				message_box = message_box_html('The provided email address is not associated with an account.', error=True)
			else:
				msg = Message("Your password for ISU Event Planner", sender=ADMINS[0], recipients=[user.email])
				msg.body = "Your password for ISU Event Planner is: " + user.password
				msg.html = "<html>Your password for ISU Event Planner is: " + user.password + "</html>"
				send_async_email(msg)
				message_box = message_box_html('Password reminder sent.')
		else:	#Set error message to the first validation error.
			message_box = get_form_error(forgot_form)

	return render_template('forgot.html', forgot_form=forgot_form, message_box=message_box)
Пример #14
0
def forgot():
    form = ForgotForm(request.form)

    if form.validate_on_submit():
        member = session.query(Member).filter(
            Member.Email == form.email.data).first()
        if member is not None:
            sendForgotPasswordEmail(form.email.data)
            flash(
                "We just sent you an email to reset your password. Please follow the email link to finish this process."
            )

            return redirect(url_for('home'))
        else:
            flash(
                "Could not find the member. Please contact an administrator.")
            return redirect(url_for('home'))
    else:
        print(form.errors)
        return render_template('forms/forgot.html', form=form)
Пример #15
0
def forgot():
    if 'email' in session:
        return redirect(url_for('home'))

    form = ForgotForm()

    if request.method == "POST":
        if form.validate() == False:
            return render_template("forgot.html", form=form)
        else:
            email = form.email.data
            password = form.password.data

            login_result = ln.update(email, password)
            if login_result['flag'] == True:
                return redirect(url_for('login'))
            else:
                return redirect(url_for('forgot'))

    elif request.method == 'GET':
        return render_template('forgot.html', form=form)
Пример #16
0
def forgot():
    form = ForgotForm(request.form)

    if request.method == 'POST' and form.validate():
        email = form.email.data
        user = Users.get_one(email=email)
        if not user:
            form.email.errors = ['No such user']
            context = {'form': form}
            return render_template('forgot.html', **context)

        chars = "ABCDEFGHJKLMNPQRSTUVWXYZ23456789"
        password = ''.join(map(lambda x: random.choice(chars), range(8)))
        user.set_password(password)
        user.save()

        send_email(user, password)
        return redirect('/signin')
    else:
        context = {'form': form}
        return render_template('forgot.html', **context)
Пример #17
0
def forgot():
    forgotform = ForgotForm()
    if forgotform.validate():
        reset_link = generate_password_reset_link(forgotform.email.data)
        if reset_link is None:
            flash(_(u'Could not find user with given email'), 'error')
        else:
            msg = Message(_(u"Troikalearning.org password reset"),
                      sender = ("Troika Webmaster", "*****@*****.**"),
                      recipients=[forgotform.email.data])
        
            msg.body = _("Go to the following link to reset your password in the troikalearning.org website:")
            msg.body += "\n\n" + reset_link
            msg.body += "\n\n"
            msg.body += _("If you did not ask for your password to be reset, you can ignore this message.")
            msg.body += "\n\n"
            msg.body += __get_troika_message_signature()    
            mail.send(msg)
            flash(_(u'Password reset instructions sent to %(email)s', email = forgotform.email.data))
    else:
        flash(_(u"Invalid forgot form") + ': ' + ', '.join((key + ': ' + value[0]) for key, value in forgotform.errors.items()), 'error')
    return redirect(get_redirect_target())
Пример #18
0
def forgotpassword():
    form = ForgotForm()
    if form.validate_on_submit():
        if request.method == 'POST':
            cursor = connection1.cursor()
            empid1 = form.empid.data
            global a
            a = empid1
            ques1 = form.select1.data
            ans1 = form.ans.data
            select = "SELECT ques,ans FROM profile where empid='" + empid1 + "'"
            cursor.execute(select)
            results = cursor.fetchone()
            if results is not None:
                ans = results[1]
                ques = results[0]
                if ans == ans1 and ques1 == ques:
                    return redirect(url_for("reset"))
                else:
                    flash('Please enter correct answer to question', 'danger')
            else:
                flash('Please enter correct Employee ID', 'danger')
    return render_template('forgotpassword.html', form=form)
def forgot():
    session.pop('logged-in', False)
    form=ForgotForm()
    cur = conn.cursor()
    if request.method == 'POST':
        phone=form.data['phone']
        cur.execute(f"select email from userinfo where phone = '{phone}' ")
        a=cur.fetchone()
        if(a == None):
            flash("You are not registered!!,REGISTER NOW", 'danger')
            return redirect(url_for('register'))
        else:
            session['phone'] = phone
            session['logged-in']=False
            return redirect(url_for('resetpass'))

    return render_template('forgot.html',form=form)
Пример #20
0
def forgot():
    form = ForgotForm()
    if form.validate_on_submit():
        flash('Mail has been sent to the provided email address', 'success')
        return redirect(url_for('reset'))
    return render_template('forgot.html', title='Forgot Password', form=form)
Пример #21
0
def forgot():
    form = ForgotForm(request.form)
    return render_template('forms/forgot.html', form=form)