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)
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())
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)
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)
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())