Esempio n. 1
0
    def create(self, request):
        new_file_form = XPIForm(request, request.POST, request.FILES)

        if not new_file_form.is_valid():
            return _xpi_form_error(new_file_form, request)

        # License can be optional.
        license = None
        if 'builtin' in request.POST:
            license_form = LicenseForm(request.POST)
            if not license_form.is_valid():
                return _form_error(license_form)
            license = license_form.save()

        addon = new_file_form.create_addon(license=license)
        if not license:
            # If there is no license, we push you to step
            # 5 so that you can pick one.
            addon.submitstep_set.create(step=5)

        serializer = self.serializer_class(addon)
        return Response(serializer.data, **{
            'status': 201,
            'headers': {
                'Location': reverse('api.addon', kwargs={'addon_id': addon.id})
            }
        })
Esempio n. 2
0
    def create(self, request):
        new_file_form = XPIForm(request, request.POST, request.FILES)

        if not new_file_form.is_valid():
            return _xpi_form_error(new_file_form, request)

        # License can be optional.
        license = None
        if 'builtin' in request.POST:
            license_form = LicenseForm(request.POST)
            if not license_form.is_valid():
                return _form_error(license_form)
            license = license_form.save()

        addon = new_file_form.create_addon(license=license)
        if not license:
            # If there is no license, we push you to step
            # 5 so that you can pick one.
            addon.submitstep_set.create(step=5)

        serializer = self.serializer_class(addon)
        return Response(
            serializer.data, **{
                'status': 201,
                'headers': {
                    'Location': reverse('api.addon',
                                        kwargs={'addon_id': addon.id})
                }
            })
Esempio n. 3
0
    def create(self, request):
        new_file_form = XPIForm(request, request.POST, request.FILES)

        if not new_file_form.is_valid():
            return _xpi_form_error(new_file_form, request)

        # License Form can be optional
        license = None
        if 'builtin' in request.POST:
            license_form = LicenseForm(request.POST)
            if not license_form.is_valid():
                return _form_error(license_form)
            license = license_form.save()

        return new_file_form.create_addon(license=license)
Esempio n. 4
0
    def create(self, request, addon):
        # This has license data
        license_form = LicenseForm(request.POST)

        if not license_form.is_valid():
            return _form_error(license_form)

        new_file_form = XPIForm(request.POST, request.FILES, addon=addon)

        if not new_file_form.is_valid():
            return _xpi_form_error(new_file_form, request)

        license = license_form.save()
        v = new_file_form.create_version(license=license)
        return v
Esempio n. 5
0
    def create(self, request):
        license_form = LicenseForm(request.POST)

        if not license_form.is_valid():
            return _form_error(license_form)

        new_file_form = XPIForm(request, request.POST, request.FILES)

        if not new_file_form.is_valid():
            return _xpi_form_error(new_file_form, request)

        license = license_form.save()

        a = new_file_form.create_addon(license=license)
        return a
Esempio n. 6
0
    def update(self, request, addon, version):
        new_file_form = XPIForm(request, request.PUT, request.FILES,
                                version=version)

        if not new_file_form.is_valid():
            return _xpi_form_error(new_file_form, request)

        license = None
        if 'builtin' in request.POST:
            license_form = LicenseForm(request.POST)
            if not license_form.is_valid():
                return _form_error(license_form)
            license = license_form.save()

        v = new_file_form.update_version(license)
        return v
Esempio n. 7
0
    def update(self, request, addon, version):
        new_file_form = XPIForm(request, request.PUT, request.FILES,
                                version=version)

        if not new_file_form.is_valid():
            return _xpi_form_error(new_file_form, request)

        license = None
        if 'builtin' in request.POST:
            license_form = LicenseForm(request.POST)
            if not license_form.is_valid():
                return _form_error(license_form)
            license = license_form.save()

        v = new_file_form.update_version(license)
        return v
Esempio n. 8
0
    def update(self, request, addon, version):
        # This has license data.
        license_form = LicenseForm(request.POST)

        if license_form.is_valid():
            license = license_form.save()
        else:
            license = version.license

        new_file_form = XPIForm(request.PUT, request.FILES, version=version)

        if not new_file_form.is_valid():
            return _xpi_form_error(new_file_form, request)

        v = new_file_form.update_version(license)
        return v
Esempio n. 9
0
    def create(self, request, addon_id):
        addon = get_object_or_404(Addon, id=addon_id)
        new_file_form = XPIForm(request, request.POST, request.FILES,
                                addon=addon)

        if not new_file_form.is_valid():
            return _xpi_form_error(new_file_form, request)

        license = None
        if 'builtin' in request.POST:
            license_form = LicenseForm(request.POST)
            if not license_form.is_valid():
                return _form_error(license_form)
            license = license_form.save()

        v = new_file_form.create_version(license=license)
        serializer = self.serializer_class(v)
        return Response(serializer.data)
Esempio n. 10
0
    def create(self, request, addon_id):
        addon = get_object_or_404(Addon, id=addon_id)
        new_file_form = XPIForm(request,
                                request.POST,
                                request.FILES,
                                addon=addon)

        if not new_file_form.is_valid():
            return _xpi_form_error(new_file_form, request)

        license = None
        if 'builtin' in request.POST:
            license_form = LicenseForm(request.POST)
            if not license_form.is_valid():
                return _form_error(license_form)
            license = license_form.save()

        v = new_file_form.create_version(license=license)
        serializer = self.serializer_class(v)
        return Response(serializer.data)
Esempio n. 11
0
    def create(self, request):
        new_file_form = XPIForm(request, request.POST, request.FILES)

        if not new_file_form.is_valid():
            return _xpi_form_error(new_file_form, request)

        # License can be optional.
        license = None
        if 'builtin' in request.POST:
            license_form = LicenseForm(request.POST)
            if not license_form.is_valid():
                return _form_error(license_form)
            license = license_form.save()

        addon = new_file_form.create_addon(license=license)
        if not license:
            # If there is no license, we push you to step
            # 5 so that you can pick one.
            addon.submitstep_set.create(step=5)

        return addon
Esempio n. 12
0
    def create(self, request):
        new_file_form = XPIForm(request, request.POST, request.FILES)

        if not new_file_form.is_valid():
            return _xpi_form_error(new_file_form, request)

        # License can be optional.
        license = None
        if 'builtin' in request.POST:
            license_form = LicenseForm(request.POST)
            if not license_form.is_valid():
                return _form_error(license_form)
            license = license_form.save()

        addon = new_file_form.create_addon(license=license)
        if not license:
            # If there is no license, we push you to step
            # 5 so that you can pick one.
            addon.submitstep_set.create(step=5)

        return addon
Esempio n. 13
0
    def update(self, request, addon_id, version_id):
        try:
            version = self.get_object()
        except Http404:
            return Response(status=410)

        new_file_form = XPIForm(request, request.DATA, request.FILES,
                                version=version)

        if not new_file_form.is_valid():
            return _xpi_form_error(new_file_form, request)

        license = None
        if 'builtin' in request.DATA:
            license_form = LicenseForm(request.DATA)
            if not license_form.is_valid():
                return _form_error(license_form)
            license = license_form.save()

        v = new_file_form.update_version(license)
        serializer = self.serializer_class(v)
        return Response(serializer.data)
Esempio n. 14
0
    def update(self, request, addon_id, version_id):
        try:
            version = self.get_object()
        except Http404:
            return Response(status=410)

        new_file_form = XPIForm(request,
                                request.DATA,
                                request.FILES,
                                version=version)

        if not new_file_form.is_valid():
            return _xpi_form_error(new_file_form, request)

        license = None
        if 'builtin' in request.DATA:
            license_form = LicenseForm(request.DATA)
            if not license_form.is_valid():
                return _form_error(license_form)
            license = license_form.save()

        v = new_file_form.update_version(license)
        serializer = self.serializer_class(v)
        return Response(serializer.data)