Example #1
0
    def post(self, request, *args, **kwargs):
        user = get_object_or_404(User, id=self.request.user.id)
        member = get_object_or_404(Member, user=user)        

        user_edit_form = UserEditForm(data=request.POST, instance=user)
        password_edit_form = ChangePasswordForm(data=request.POST, user=user, initial={})
        member_edit_form = MemberDetailsForm(data=request.POST, instance=member)

        if user_edit_form.is_valid():
            user_edit_form.save()
            
        if password_edit_form.has_changed():
            if password_edit_form.is_valid():
                password_edit_form.save()
                return redirect(reverse('users:login'))
            
        if member_edit_form.is_valid():
            member_edit_form.save()
            
        context = self.get_context_data(**kwargs)
        
        context['form'] = user_edit_form
        context['form2'] = password_edit_form
        context['form3'] = member_edit_form
        
        return render_to_response(self.template_name, context, context_instance=RequestContext(request))