def clean(self): data = self.cleaned_data if 'upload' not in self.cleaned_data: self._errors['upload'] = self.upload_error return if self.is_packaged(): # Now run the packaged app check, done in clean, because # clean_packaged needs to be processed first. try: pkg = parse_addon(data['upload'], self.addon) except forms.ValidationError, e: self._errors['upload'] = self.error_class(e.messages) return # Collect validation errors so we can display them at once. errors = [] ver = pkg.get('version') if (ver and self.addon and self.addon.versions.filter(version=ver).exists()): errors.append(_(u'Version %s already exists.') % ver) origin = pkg.get('origin') if origin: try: verify_app_domain(origin, packaged=True, exclude=self.addon) except forms.ValidationError, e: errors.append(e.message) if self.addon and origin != self.addon.app_domain: errors.append(_('Changes to "origin" are not allowed.'))
def clean_upload(self): upload = self.cleaned_data['upload'] if self.is_packaged: pkg = parse_addon(upload, self.addon) ver = pkg.get('version') if (ver and self.addon and self.addon.versions.filter(version=ver).exists()): raise forms.ValidationError( _(u'Version %s already exists') % ver) else: # Throw an error if this is a dupe. verify_app_domain(upload.name) # JS sets manifest as `upload.name`. return upload
def clean_upload(self): upload = self.cleaned_data['upload'] if self.is_packaged: pkg = parse_addon(upload, self.addon) ver = pkg.get('version') if (ver and self.addon and self.addon.versions.filter(version=ver).exists()): raise forms.ValidationError( _(u'Version %s already exists') % ver) else: # Throw an error if this is a dupe. # (JS sets manifest as `upload.name`.) verify_app_domain(upload.name) return upload
def clean(self): data = self.cleaned_data if 'upload' not in self.cleaned_data: self._errors['upload'] = self.upload_error return if self.is_packaged(): # Now run the packaged app check, done in clean, because # clean_packaged needs to be processed first. try: pkg = parse_addon(data['upload'], self.addon) except forms.ValidationError, e: self._errors['upload'] = self.error_class(e.messages) return ver = pkg.get('version') if (ver and self.addon and self.addon.versions.filter(version=ver).exists()): self._errors['upload'] = _(u'Version %s already exists') % ver return origin = pkg.get('origin') if origin: try: origin = verify_app_domain(origin, packaged=True, exclude=self.addon) except forms.ValidationError, e: self._errors['upload'] = self.error_class(e.messages) return if origin: data['origin'] = origin
pkg = parse_addon(data['upload'], self.addon) except forms.ValidationError, e: self._errors['upload'] = self.error_class(e.messages) return ver = pkg.get('version') if (ver and self.addon and self.addon.versions.filter(version=ver).exists()): self._errors['upload'] = _(u'Version %s already exists') % ver return else: # Throw an error if this is a dupe. # (JS sets manifest as `upload.name`.) try: from mkt.developers.forms import verify_app_domain verify_app_domain(data['upload'].name) except forms.ValidationError, e: self._errors['upload'] = self.error_class(e.messages) return return data def is_packaged(self): return self._is_packaged def __init__(self, *args, **kw): request = kw.pop('request', None) self.addon = kw.pop('addon', None) self._is_packaged = kw.pop('is_packaged', False) super(NewWebappVersionForm, self).__init__(*args, **kw)
pkg = parse_addon(data["upload"], self.addon) except forms.ValidationError, e: self._errors["upload"] = self.error_class(e.messages) return ver = pkg.get("version") if ver and self.addon and self.addon.versions.filter(version=ver).exists(): self._errors["upload"] = _(u"Version %s already exists") % ver return else: # Throw an error if this is a dupe. # (JS sets manifest as `upload.name`.) try: from mkt.developers.forms import verify_app_domain verify_app_domain(data["upload"].name) except forms.ValidationError, e: self._errors["upload"] = self.error_class(e.messages) return return data def is_packaged(self): return self._is_packaged def __init__(self, *args, **kw): request = kw.pop("request", None) self.addon = kw.pop("addon", None) self._is_packaged = kw.pop("is_packaged", False) super(NewWebappVersionForm, self).__init__(*args, **kw)
exclude=self.addon) except forms.ValidationError, e: errors.append(e.message) if self.addon and origin != self.addon.app_domain: errors.append(_('Changes to "origin" are not allowed.')) if errors: self._errors['upload'] = self.error_class(errors) return else: # Throw an error if this is a dupe. # (JS sets manifest as `upload.name`.) try: verify_app_domain(data['upload'].name) except forms.ValidationError, e: self._errors['upload'] = self.error_class(e.messages) return return data def is_packaged(self): return self._is_packaged class NewWebappForm(DeviceTypeForm, NewWebappVersionForm): upload = forms.ModelChoiceField(widget=forms.HiddenInput, queryset=FileUpload.objects.filter(valid=True), error_messages={'invalid_choice': _lazy( u'There was an error with your upload. Please try again.')})
def clean_upload(self): upload = self.cleaned_data['upload'] # Throw an error if this is a dupe. verify_app_domain(upload.name) # JS sets manifest as `upload.name`. return upload
def clean_upload(self): upload = self.cleaned_data['upload'] verify_app_domain(upload.name) # JS puts manifest URL here. return upload