12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- from django.contrib.auth.decorators import login_required
- from django.core.urlresolvers import reverse
- from django.forms import model_to_dict
- from django.http import HttpResponseRedirect
- from django.shortcuts import render_to_response
- from django.template import RequestContext
- from .utils import send_change_of_address_email
- from . import forms
- from . import profile
- def profile_create(request, template='accounts/full_profile_form.html'):
- """ Allows user to create an account """
- userform = forms.ProfileCreateForm(
- request.POST or None, initial={'country': 'US'}, prefix='form2')
- second_address_form = forms.ProfileSecondaryAddressForm(
- request.POST or None, initial={'country': 'US'}, prefix='form5')
- if request.method == 'POST':
- if userform.is_valid() and second_address_form.is_valid():
- user = userform.save(request=request)
- second_address_form.save(user=user)
- return HttpResponseRedirect(reverse('profile_create_complete'))
- return render_to_response(
- template, {'userform': userform,
- 'second_address': second_address_form},
- context_instance=RequestContext(request))
- def profile_create_complete(request,
- template='accounts/profile_create_complete.html'):
- return render_to_response(
- template,
- context_instance=RequestContext(request))
- @login_required
- def profile_edit(request, template='accounts/full_profile_form.html'):
- """ Allows a user to edit their profile """
- user = request.user
- user_profile = profile.get_profile(user)
- secondary_address = profile.get_profile_secondary_address(user)
- primary_initial = model_to_dict(user)
- primary_initial.update(model_to_dict(user_profile))
- secondary_initial = model_to_dict(secondary_address)
- userform = forms.ProfileUpdateForm(
- user, request.POST or None, initial=primary_initial, prefix='form2')
- second_address_form = forms.ProfileSecondaryAddressForm(
- request.POST or None, initial=secondary_initial, prefix='form5')
- if request.method == 'POST':
- if userform.is_valid() and second_address_form.is_valid():
- user = userform.save()
- second_address_form.save(user=user)
- send_change_of_address_email(
- None,
- None,
- None,
- None,
- None,
- primary_initial,
- userform.cleaned_data)
- return render_to_response(
- template, {'userform': userform,
- 'second_address': second_address_form},
- context_instance=RequestContext(request))
- @login_required
- def view_orders_subs(request, template='accounts/orders_subs_overview.html'):
- return render_to_response(
- template, {},
- context_instance=RequestContext(request))
|