Exemple #1
0
class ChangePasswordHandler(BaseHandler, NoCacheMixin):

  def __init__(self, template_name='auth/change_password.html'):
    self.template_name = template_name

  def prepare(self):
    # TODO: check if FlashMiddleware is used.
    if not self.request.user.is_authenticated():
      raise Forbidden(_("You must sign in for this operation."))
    self.form = ChangePasswordForm()

  def get(self):
    message = flash.get_flash()
    return render_to_response(self.template_name,
                              {"form": self.form.as_widget(),
                               "message": message})

  def post(self):
    if self.form.validate(self.request.form):
      self.request.user.set_password(self.form['new_password'])
      flash.set_flash(gettext("Password changed successfully."))
      return redirect(url_for('auth/change_password'))
    return self.get()
Exemple #2
0
 def prepare(self):
   # TODO: check if FlashMiddleware is used.
   if not self.request.user.is_authenticated():
     raise Forbidden(_("You must sign in for this operation."))
   self.form = ChangePasswordForm()