def modify(request): #This one surely must login. user_qrs = list(User.objects.filter(username=request.user)) user_qrs = user_qrs[0] flag = False change_email_form = ChangeEmailForm(request.GET) change_user_details_form = ChangeUserDetailsForm(request.GET) if (change_email_form.is_valid()): new_email = (dict(change_email_form.cleaned_data))['email'] if (new_email): user_qrs.email = new_email user_qrs.save() if (change_user_details_form.is_valid()): contact = (dict(change_user_details_form.cleaned_data))['contact'] address = (dict(change_user_details_form.cleaned_data))['address'] if (contact): user_qrs.userdetails.contact = contact flag = True if (address): user_qrs.userdetails.address = address flag = True if (flag): user_qrs.userdetails.save() return redirect("/accounts/user")
def change_email(request): tokens = EmailChangeToken.objects.filter(user=request.user) token = len(tokens) and tokens[0] or None if request.method == 'POST': form = ChangeEmailForm(request.user, data=request.POST) if form.is_valid(): # If there is an existing token, delete it if token: token.delete() # Create a new token token = EmailChangeToken(user=request.user, email=form.cleaned_data['email'], token=generate_random_token()) token.save() send_template_mail(settings.NOTIFICATION_FROM, form.cleaned_data['email'], 'Your postgresql.org community account', 'account/email_change_email.txt', { 'token': token , 'user': request.user, } ) return HttpResponseRedirect('done/') else: form = ChangeEmailForm(request.user) return render_to_response('account/emailchangeform.html', { 'form': form, 'token': token, }, NavContext(request, "account"))
def modify(request): #This one surely must login. user_qrs = list(User.objects.filter(username=request.user)) user_qrs = user_qrs[0] flag = False change_email_form = ChangeEmailForm(request.GET) change_user_details_form = ChangeUserDetailsForm(request.GET) if (change_email_form.is_valid()): new_email = (dict(change_email_form.cleaned_data))['email'] if (new_email): user_qrs.email = new_email user_qrs.save() if (change_user_details_form.is_valid()): contact = (dict(change_user_details_form.cleaned_data))['contact'] address = (dict(change_user_details_form.cleaned_data))['address'] if (contact): user_qrs.userdetails.contact = contact flag = True if (address): user_qrs.userdetails.address = address flag = True if (flag): user_qrs.userdetails.save() return redirect("/accounts/user")
def change_email(request): tokens = EmailChangeToken.objects.filter(user=request.user) token = len(tokens) and tokens[0] or None if request.method == 'POST': form = ChangeEmailForm(request.user, data=request.POST) if form.is_valid(): # If there is an existing token, delete it if token: token.delete() # Create a new token token = EmailChangeToken(user=request.user, email=form.cleaned_data['email'], token=generate_random_token()) token.save() send_template_mail(settings.NOTIFICATION_FROM, form.cleaned_data['email'], 'Your postgresql.org community account', 'account/email_change_email.txt', { 'token': token , 'user': request.user, } ) return HttpResponseRedirect('done/') else: form = ChangeEmailForm(request.user) return render_to_response('account/emailchangeform.html', { 'form': form, 'token': token, }, NavContext(request, "account"))
def edit_account(request, entry=None): if entry not in (None, 'email', 'username', 'password'): raise Http404 if request.method=='POST' and entry=='email': email_form = ChangeEmailForm(request.POST, instance=request.user) if email_form.is_valid(): email_form.save() return redirect('accounts:edit_account') else: email_form = ChangeEmailForm(instance=request.user) if request.method=='POST' and entry=='username': username_form = ChangeUsernameForm(request.POST, instance=request.user) if username_form.is_valid(): username_form.save() return redirect('accounts:edit_account') else: username_form = ChangeUsernameForm(instance=request.user) if request.method=='POST' and entry=='password': password_form = ChangePasswordForm(request.POST, instance=request.user) if password_form.is_valid(): password_form.save() return redirect('accounts:edit_account') else: password_form = ChangePasswordForm(instance=request.user) return render(request, 'accounts/edit_account.html', { 'email_form': email_form, 'username_form': username_form, 'password_form': password_form, })
def change_email(request): tokens = EmailChangeToken.objects.filter(user=request.user) token = len(tokens) and tokens[0] or None if request.user.password == OAUTH_PASSWORD_STORE: # Link shouldn't exist in this case, so just throw an unfriendly # error message. return HttpServerError( request, "This account cannot change email address as it's connected to a third party login site." ) if request.method == 'POST': form = ChangeEmailForm(request.user, data=request.POST) if form.is_valid(): # If there is an existing token, delete it if token: token.delete() # Create a new token token = EmailChangeToken(user=request.user, email=form.cleaned_data['email'].lower(), token=generate_random_token()) token.save() send_template_mail(settings.ACCOUNTS_NOREPLY_FROM, form.cleaned_data['email'], 'Your postgresql.org community account', 'account/email_change_email.txt', { 'token': token, 'user': request.user, }) return HttpResponseRedirect('done/') else: form = ChangeEmailForm(request.user) return render_pgweb(request, 'account', 'account/emailchangeform.html', { 'form': form, 'token': token, })