30
30
Contact the owner of the wiki, who can enable email.""")
33
email = wikiutil.clean_input(form['email'].lower())
33
email = wikiutil.clean_input(form['email'][0].lower())
35
35
# continue if email not given
149
149
# we will not have linked, so forbid access
150
request.makeForbidden(403, 'No MoinAuth in auth list')
150
request.makeForbidden403()
153
153
page = Page(request, pagename)
154
154
_ = request.getText
155
form = request.values # link in mail -> GET request
157
157
if not request.cfg.mail_enabled:
158
158
request.theme.add_msg(_("""This wiki is not enabled for mail processing.
163
submitted = form.get('account_sendmail', '')
164
token = form.get('token', '')
165
newpass = form.get('password', '')
166
name = form.get('name', '')
163
submitted = form.get('account_sendmail', [''])[0]
164
token = form.get('token', [''])[0]
165
newpass = form.get('password', [''])[0]
166
name = form.get('name', [''])[0]
168
168
if token and name and newpass:
169
newpass2 = form.get('password_repeat', '')
169
newpass2 = form.get('password_repeat', [''])[0]
170
170
msg = _("Passwords don't match!")
171
171
msg_type = 'error'
172
172
if newpass == newpass2:
173
173
pw_checker = request.cfg.password_checker
176
pw_error = pw_checker(request, name, newpass)
176
pw_error = pw_checker(name, newpass)
178
msg = _("Password not acceptable: %s") % wikiutil.escape(pw_error)
178
msg = _("Password not acceptable: %s") % pw_error
180
180
u = user.User(request, user.getUserId(request, name))
181
181
if u and u.valid and u.apply_recovery_token(token, newpass):
204
205
request.theme.send_footer(pagename)
205
206
request.theme.send_closing_html()
206
207
elif submitted: # user pressed create button
207
if request.method != 'POST':
208
if request.request_method != 'POST':
209
210
msg = _do_recover(request)
210
211
request.theme.add_msg(msg, "dialog")
212
213
else: # show create form
214
request.emit_http_headers()
213
215
request.theme.send_title(_("Lost password"), pagename=pagename)
215
217
request.write(request.formatter.startContent("content"))