Example #1
0
def account(request):

    if request.method == 'GET':

        site = RequestSite(request)
        userpage_token = request.user.profile.get_token('userpage_token')

        profile_form = ProfileForm({
            'twitter': request.user.profile.twitter,
            'about': request.user.profile.about,
        })

        form = UserAccountForm({
            'email':
            request.user.email,
            'public':
            request.user.profile.settings.get_wksetting(PUBLIC_SUB_USER),
        })

        return render(
            request,
            'account.html',
            {
                'site': site,
                'form': form,
                'profile_form': profile_form,
                'userpage_token': userpage_token,
            },
        )

    try:
        form = UserAccountForm(request.POST)

        if not form.is_valid():
            raise ValueError(
                _('Oops! Something went wrong. Please double-check the data you entered.'
                  ))

        if form.cleaned_data['password_current']:
            if not request.user.check_password(
                    form.cleaned_data['password_current']):
                raise ValueError('Current password is incorrect')

            request.user.set_password(form.cleaned_data['password1'])

        request.user.email = form.cleaned_data['email']

        try:
            request.user.save()
        except Exception as ex:
            # TODO: which exception?
            messages.error(request, str(ex))

        messages.success(request, 'Account updated')

    except (ValueError, ValidationError) as e:
        messages.error(request, str(e))

    return render(request, 'account.html', {'form': form})
Example #2
0
def account(request):

    if request.method == "GET":

        site = RequestSite(request)
        userpage_token = request.user.profile.get_token("userpage_token")

        profile_form = ProfileForm({
            "twitter": request.user.profile.twitter,
            "about": request.user.profile.about,
        })

        form = UserAccountForm({
            "email":
            request.user.email,
            "public":
            request.user.profile.settings.get_wksetting(PUBLIC_SUB_USER),
        })

        return render(
            request,
            "account.html",
            {
                "site": site,
                "form": form,
                "profile_form": profile_form,
                "userpage_token": userpage_token,
            },
        )

    try:
        form = UserAccountForm(request.POST)

        if not form.is_valid():
            raise ValueError(
                _("Oops! Something went wrong. Please double-check the data you entered."
                  ))

        if form.cleaned_data["password_current"]:
            if not request.user.check_password(
                    form.cleaned_data["password_current"]):
                raise ValueError("Current password is incorrect")

            request.user.set_password(form.cleaned_data["password1"])

        request.user.email = form.cleaned_data["email"]

        try:
            request.user.save()
        except Exception as ex:
            # TODO: which exception?
            messages.error(request, str(ex))

        messages.success(request, "Account updated")

    except (ValueError, ValidationError) as e:
        messages.error(request, str(e))

    return render(request, "account.html", {"form": form})
Example #3
0
def account(request):

    if request.method == 'GET':

       form = UserAccountForm({
            'email': request.user.email,
            'public': request.user.settings.get('public_subscriptions', True)
            })

       return render(request, 'account.html', {
            'form': form,
            })

    try:
        form = UserAccountForm(request.POST)

        if not form.is_valid():
            raise ValueError(_('Oops! Something went wrong. Please double-check the data you entered.'))

        if form.cleaned_data['password_current']:
            if not request.user.check_password(form.cleaned_data['password_current']):
                raise ValueError('Current password is incorrect')

            request.user.set_password(form.cleaned_data['password1'])

        request.user.email = form.cleaned_data['email']

        try:
            request.user.save()
        except (UsernameException, PasswordException) as ex:
            messages.error(request, str(ex))

        messages.success(request, 'Account updated')

    except (ValueError, ValidationError) as e:
        messages.error(request, str(e))

    return render(request, 'account.html', {
        'form': form,
    })
Example #4
0
def account(request):

    if request.method == 'GET':

        site = RequestSite(request)
        flattr = Flattr(request.user, site.domain, request.is_secure())
        userpage_token = request.user.profile.get_token('userpage_token')

        profile_form = ProfileForm({
               'twitter': request.user.profile.twitter,
               'about':   request.user.profile.about,
            })

        form = UserAccountForm({
            'email': request.user.email,
            'public': request.user.profile.settings.get_wksetting(PUBLIC_SUB_USER)
            })

        flattr_form = FlattrForm({
               'enable': request.user.profile.settings.get_wksetting(FLATTR_AUTO),
               'token': request.user.profile.settings.get_wksetting(FLATTR_TOKEN),
               'flattr_mygpo': request.user.profile.settings.get_wksetting(FLATTR_MYGPO),
               'username': request.user.profile.settings.get_wksetting(FLATTR_USERNAME),
            })

        return render(request, 'account.html', {
            'site': site,
            'form': form,
            'profile_form': profile_form,
            'flattr_form': flattr_form,
            'flattr': flattr,
            'userpage_token': userpage_token,
            })

    try:
        form = UserAccountForm(request.POST)

        if not form.is_valid():
            raise ValueError(_('Oops! Something went wrong. Please double-check the data you entered.'))

        if form.cleaned_data['password_current']:
            if not request.user.check_password(form.cleaned_data['password_current']):
                raise ValueError('Current password is incorrect')

            request.user.set_password(form.cleaned_data['password1'])

        request.user.email = form.cleaned_data['email']

        try:
            request.user.save()
        except Exception as ex:
            # TODO: which exception?
            messages.error(request, str(ex))

        messages.success(request, 'Account updated')

    except (ValueError, ValidationError) as e:
        messages.error(request, str(e))

    return render(request, 'account.html', {
        'form': form,
    })