Exemplo n.º 1
0
def api(request):
    roles = request.amo_user.groups.filter(name='Admins').exists()
    f = APIConsumerForm()
    if roles:
        messages.error(request,
                       _('Users with the admin role cannot use the API.'))

    elif request.method == 'POST':
        if 'delete' in request.POST:
            try:
                consumer = Access.objects.get(pk=request.POST.get('consumer'))
                consumer.delete()
            except Access.DoesNotExist:
                messages.error(request, _('No such API key.'))
        else:
            key = 'mkt:%s:%s:%s' % (
                request.amo_user.pk,
                request.amo_user.email,
                Access.objects.filter(user=request.user).count())
            access = Access.objects.create(key=key,
                                           user=request.user,
                                           secret=generate())
            f = APIConsumerForm(request.POST, instance=access)
            if f.is_valid():
                f.save()
                messages.success(request, _('New API key generated.'))
            else:
                access.delete()
    consumers = list(Access.objects.filter(user=request.user))
    return jingo.render(request, 'developers/api.html',
                        {'consumers': consumers, 'roles': roles, 'form': f})
Exemplo n.º 2
0
def api(request):
    roles = request.user.groups.filter(name='Admins').exists()
    form = APIConsumerForm()
    if roles:
        messages.error(request,
                       _('Users with the admin role cannot use the API.'))

    elif request.method == 'POST':
        if 'delete' in request.POST:
            try:
                consumer = Access.objects.get(pk=request.POST.get('consumer'),
                                              user=request.user)
                consumer.delete()
            except Access.DoesNotExist:
                messages.error(request, _('No such API key.'))
        else:
            access = Access.create_for_user(request.user)
            form = APIConsumerForm(request.POST, instance=access)
            if form.is_valid():
                form.save()
                messages.success(request, _('New API key generated.'))
            else:
                access.delete()
    consumers = list(Access.objects.filter(user=request.user))
    return render(request, 'developers/api.html',
                  {'consumers': consumers, 'roles': roles, 'form': form,
                   'domain': settings.DOMAIN, 'site_url': settings.SITE_URL})
Exemplo n.º 3
0
def api(request):
    roles = request.amo_user.groups.filter(name="Admins").exists()
    f = APIConsumerForm()
    if roles:
        messages.error(request, _("Users with the admin role cannot use the API."))

    elif request.method == "POST":
        if "delete" in request.POST:
            try:
                consumer = Access.objects.get(pk=request.POST.get("consumer"))
                consumer.delete()
            except Access.DoesNotExist:
                messages.error(request, _("No such API key."))
        else:
            key = "mkt:%s:%s:%s" % (
                request.amo_user.pk,
                request.amo_user.email,
                Access.objects.filter(user=request.user).count(),
            )
            access = Access.objects.create(key=key, user=request.user, secret=generate())
            f = APIConsumerForm(request.POST, instance=access)
            if f.is_valid():
                f.save()
                messages.success(request, _("New API key generated."))
            else:
                access.delete()
    consumers = list(Access.objects.filter(user=request.user))
    return jingo.render(
        request, "developers/api.html", {"consumers": consumers, "profile": profile, "roles": roles, "form": f}
    )
Exemplo n.º 4
0
def api(request):
    roles = request.user.groups.filter(name="Admins").exists()
    form = APIConsumerForm()
    if roles:
        messages.error(request, _("Users with the admin role cannot use the API."))

    elif request.method == "POST":
        if "delete" in request.POST:
            try:
                consumer = Access.objects.get(pk=request.POST.get("consumer"), user=request.user)
                consumer.delete()
            except Access.DoesNotExist:
                messages.error(request, _("No such API key."))
        else:
            access = Access.create_for_user(request.user)
            form = APIConsumerForm(request.POST, instance=access)
            if form.is_valid():
                form.save()
                messages.success(request, _("New API key generated."))
            else:
                access.delete()
    consumers = list(Access.objects.filter(user=request.user))
    return render(
        request,
        "developers/api.html",
        {
            "consumers": consumers,
            "roles": roles,
            "form": form,
            "domain": settings.DOMAIN,
            "site_url": settings.SITE_URL,
        },
    )
Exemplo n.º 5
0
def api(request):
    roles = request.user.groups.filter(name='Admins').exists()
    form = APIConsumerForm()
    if roles:
        messages.error(request,
                       _('Users with the admin role cannot use the API.'))

    elif request.method == 'POST':
        if 'delete' in request.POST:
            try:
                consumer = Access.objects.get(pk=request.POST.get('consumer'),
                                              user=request.user)
                consumer.delete()
            except Access.DoesNotExist:
                messages.error(request, _('No such API key.'))
        else:
            access = Access.create_for_user(request.user)
            form = APIConsumerForm(request.POST, instance=access)
            if form.is_valid():
                form.save()
                messages.success(request, _('New API key generated.'))
            else:
                access.delete()
    consumers = list(Access.objects.filter(user=request.user))
    return render(
        request, 'developers/api.html', {
            'consumers': consumers,
            'roles': roles,
            'form': form,
            'domain': settings.DOMAIN,
            'site_url': settings.SITE_URL
        })
Exemplo n.º 6
0
def api(request):
    roles = request.amo_user.groups.filter(name='Admins').exists()
    f = APIConsumerForm()
    if roles:
        messages.error(request,
                       _('Users with the admin role cannot use the API.'))

    elif request.method == 'POST':
        if 'delete' in request.POST:
            try:
                consumer = Access.objects.get(pk=request.POST.get('consumer'))
                consumer.delete()
            except Access.DoesNotExist:
                messages.error(request, _('No such API key.'))
        else:
            key = 'mkt:%s:%s:%s' % (
                request.amo_user.pk, request.amo_user.email,
                Access.objects.filter(user=request.user).count())
            access = Access.objects.create(key=key,
                                           user=request.user,
                                           secret=generate())
            f = APIConsumerForm(request.POST, instance=access)
            if f.is_valid():
                f.save()
                messages.success(request, _('New API key generated.'))
            else:
                access.delete()
    consumers = list(Access.objects.filter(user=request.user))
    return jingo.render(request, 'developers/api.html', {
        'consumers': consumers,
        'roles': roles,
        'form': f
    })