def recover_password(request): """ Форма смены пароля """ try: user = User.objects.get(recover_pass_key=request.GET.get('key'), recover_pass_active=True) except User.DoesNotExist: return TemplateResponse(request, "main/change_password.html", {}) if request.method == 'POST': form = ChangePasswordForm(request.POST) if form.is_valid(): user.set_password(form.get_password()) user.recover_pass_deactivate() user.save() context = {'success': 1} return TemplateResponse(request, "main/change_password.html", context) else: context = {'form': form} return TemplateResponse(request, "main/change_password.html", context) else: form = ChangePasswordForm() context = {'form': form} return TemplateResponse(request, "main/change_password.html", context)
def change_password(request, redirect_to='/help/'): info = messager(request, messages.INFO) redirect_to = request.GET.get('next', redirect_to) change_password_form = None if request.method == 'POST': change_password_form = ChangePasswordForm(request.POST) if change_password_form.is_valid(): # change password. password = extract_cd(change_password_form, 'password') user = request.user user.set_password(password) user.get_profile().change_password_on_login = False user.save() user.get_profile().save() # DONE! action_factory.user_change_password(user) info("Password changed successfully.") return HttpResponseRedirect(redirect_to) else: # Change password failed (miserably). info(change_password_form.errors.values()[0][0]) return login_screens_with_next(change_password, redirect_to) else: change_password_form = ChangePasswordForm() ctx = dict(change_password_form=change_password_form) return render_to_response('intro/intro_password.html', ctx, RequestContext(request))
def change_password(request): if request.method == 'POST': form = ChangePasswordForm(user=request.user, data=request.POST) if request.is_ajax(): if form.is_valid(): form.save() data = {'changed': True} else: data = { 'changed': False, 'errors': dict([(k, [e for e in v]) for k, v in form.errors.items()]) } return JSONResponse(data)
def account_password(request): user = request.user err_msg = '' if request.method == 'POST': form = ChangePasswordForm(request.POST) if form.is_valid(): old_password = form.cleaned_data.get('old_password') if user.check_password(old_password): user.set_password(form.cleaned_data.get('new_password')) user.save() return render_to_response('account/password_ok.html', locals(), context_instance=RequestContext(request)) else: err_msg = design.invalid_old_password else: form = ChangePasswordForm() return render_to_response('account/password.html', locals(), context_instance=RequestContext(request))
def password(request): user = request.user if request.method == 'POST': form = ChangePasswordForm(request.POST) if form.is_valid(): new_password = form.cleaned_data.get('new_password') user.set_password(new_password) user.save() update_session_auth_hash(request, user) messages.add_message(request, messages.SUCCESS, 'Your password was successfully changed.') return redirect('password') else: form = ChangePasswordForm(instance=user) return render(request, 'main/password.html', {'form': form})
def post(self, request): status = False form = ChangePasswordForm(request.POST) if form.is_valid(): old_password = form.cleaned_data['old_password'] new_password = form.cleaned_data['new_password'] user = authenticate(request, username=request.user.username, password=old_password) if not user: messages.error(request, 'Текущий пароль введен неверно') else: user.set_password(new_password) user.save() login(request, user) messages.success(request, 'Пароль успешно изменен') status = True return form_response(request, form, status, 'account')
def personal(request): args = {} user = request.user userprofile = UserProfile.objects.get(user=request.user) if request.method == 'POST' and ('update_info' in request.POST): update_user_form = UpdateUserForm(request.POST, instance=user) update_userprofile_form = UpdateUserProfileForm(request.POST, request.FILES, instance=userprofile) if update_user_form.is_valid() and update_userprofile_form.is_valid(): update_user_form.save() update_userprofile_form.save() return HttpResponseRedirect(request.META.get('HTTP_REFERER')) else: update_user_form = UpdateUserForm(instance=user) update_userprofile_form = UpdateUserProfileForm(instance=userprofile) person_form = UpdateUserForm(instance=user) person_form_info = UpdateUserProfileForm(instance=userprofile) args['person'] = person_form args['person_info'] = person_form_info password_form = ChangePasswordForm(user=request.user) if request.method == 'POST' and ('change_password' in request.POST): password_form = ChangePasswordForm(user=request.user, data=request.POST) if password_form.is_valid(): password_form.save() update_session_auth_hash(request, password_form.user) args['password_form'] = password_form if request.method == 'POST' and ('delete_profile' in request.POST): user = request.user user.delete() return redirect('index') if request.method == 'POST' and ('delete_photo' in request.POST): userprofile.photo.delete() return redirect('personal') if userprofile.photo: args['url'] = userprofile.photo.url else: args['url'] = '' return render(request, 'personal.html', args)
def account_password(request): user = request.user err_msg = '' if request.method == 'POST': form = ChangePasswordForm(request.POST) if form.is_valid(): old_password = form.cleaned_data.get('old_password') if user.check_password(old_password): user.set_password(form.cleaned_data.get('new_password')) user.save() return render_to_response( 'account/password_ok.html', locals(), context_instance=RequestContext(request)) else: err_msg = design.invalid_old_password else: form = ChangePasswordForm() return render_to_response('account/password.html', locals(), context_instance=RequestContext(request))