Ejemplo n.º 1
0
    def post(self, request, *args, **kwargs):
        user_form = UserForm(request.POST, instance=request.user)
        sp_form = SocialProfileForm(request.POST, instance=request.user.social_profile)

        if user_form.is_valid() & sp_form.is_valid():
            user_form.save()
            sp_form.save()
            messages.add_message(self.request, messages.INFO, _('Your profile has been updated.'))
            return HttpResponseRedirect(sp_form.cleaned_data.get('returnTo', DEFAULT_RETURNTO_PATH))
        else:
            messages.add_message(self.request, messages.INFO, _('Your profile has NOT been updated.'))
            return self.render_to_response({'sp_form': sp_form, 'user_form': user_form})
Ejemplo n.º 2
0
    def post(self, request, *args, **kwargs):
        # user_form = UserForm(request.POST, instance=request.user)
        return_to = self.request.GET.get('returnTo', DEFAULT_RETURNTO_PATH)
        sp_form = SocialProfileForm(request.POST, instance=request.user)
        sp_form.initial['returnTo'] = return_to

        # if user_form.is_valid() & sp_form.is_valid():
        if sp_form.is_valid():
            try:
               # user_form.save()
               sp_form.save()
               messages.add_message(self.request, messages.INFO, _('Your profile has been updated.'))
               return HttpResponseRedirect(sp_form.cleaned_data.get('returnTo', DEFAULT_RETURNTO_PATH))
            except Exception as e:
               messages.add_message(self.request, messages.INFO, _('ERROR: Your profile has NOT been updated! ['+str(e)+']'))
               return self.render_to_response({'sp_form': sp_form})
        else:
            messages.add_message(self.request, messages.INFO, _('Your profile has NOT been updated.'))
            return self.render_to_response({'sp_form': sp_form})
Ejemplo n.º 3
0
    def get_context_data(self, **kwargs):
        """Load up the default data to show in the display form."""
        LOGGER.debug("socialprofile.views.SocialProfileView.get_context_data")
        username = self.kwargs.get('username')
        if username:
            user = get_object_or_404(User, username=username)
        elif self.request.user.is_authenticated():
            user = self.request.user
        else:
            raise Http404  # Case where user gets to this view anonymously for non-existent user

        return_to = self.request.GET.get('returnTo', DEFAULT_RETURNTO_PATH)

        sp_form = SocialProfileForm(instance=user.social_profile)
        user_form = UserForm(instance=user)

        sp_form.initial['returnTo'] = return_to

        return {'sp_form': sp_form, 'user_form': user_form}
Ejemplo n.º 4
0
def profile_edit(request):
    """
    Profile Editing Page

    url: /

    template : socialprofile/sp_profile_edit.html
    """

    LOGGER.debug('socialprofile.views.profile_edit')

    if request.method == 'POST': # If the form has been submitted...
        form = SocialProfileForm(request.POST) # A form bound to the POST data
        if form.is_valid(): # All validation rules pass
            user = request.user
            form.clean()
            user.username = form.cleaned_data['username']
            user.email = form.cleaned_data['email']
            user.first_name = form.cleaned_data['first_name']
            user.last_name = form.cleaned_data['last_name']
            profile = user.social_profile
            profile.gender = form.cleaned_data['gender']
            profile.url = form.cleaned_data['url']
            profile.image_url = form.cleaned_data['image_url']
            profile.description = form.cleaned_data['description']
            returnTo = form.cleaned_data.get('returnTo', DEFAULT_RETURNTO_PATH)
            try:
                user.save()
                profile.save()
                messages.add_message(request, messages.INFO, 'Your profile has been updated.')
                return HttpResponseRedirect(reverse('sp_profile_view_page') + '?returnTo=' + returnTo)
            except IntegrityError:
                form._errors = {'username': [u'Your chosen username was not unique, please choose another username.'], }
                messages.add_message(request, messages.ERROR, 'Your chosen username was not unique.')

    else:
        returnTo = request.GET.get('returnTo', DEFAULT_RETURNTO_PATH)
        form = SocialProfileForm(user=request.user, return_to=returnTo) # Pass in User to Pre-Populate with Current Values

    response_data = {'form': form}

    return render_to_response('socialprofile/sp_profile_edit.html', response_data, context_instance=RequestContext(request))