X-Git-Url: https://git.mdrn.pl/redakcja.git/blobdiff_plain/ed5df159a03b0c3c0d17f9e7be8d925e9e73f669..4d9632481149b2f7792505d521bdfdbae5245cc4:/apps/cover/forms.py diff --git a/apps/cover/forms.py b/apps/cover/forms.py index 36010c75..513bdefb 100755 --- a/apps/cover/forms.py +++ b/apps/cover/forms.py @@ -36,12 +36,22 @@ class ImageAddForm(forms.ModelForm): % {'url': img.get_absolute_url()})) return cl + def clean_source_url(self): + source_url = self.cleaned_data['source_url'] or None + if source_url is not None: + same_source = Image.objects.filter(source_url=source_url) + if same_source: + raise forms.ValidationError(mark_safe( + ugettext('Image already in repository' + % same_source.first().get_absolute_url()))) + return source_url + def clean(self): cleaned_data = super(ImageAddForm, self).clean() download_url = cleaned_data.get('download_url', None) uploaded_file = cleaned_data.get('file', None) if not download_url and not uploaded_file: - raise forms.ValidationError('No image specified') + raise forms.ValidationError(ugettext('No image specified')) if download_url: image_data = URLOpener().open(download_url).read() width, height = PILImage.open(StringIO(image_data)).size @@ -49,7 +59,7 @@ class ImageAddForm(forms.ModelForm): width, height = PILImage.open(uploaded_file.file).size min_width, min_height = settings.MIN_COVER_SIZE if width < min_width or height < min_height: - raise forms.ValidationError('Image too small: %sx%s, minimal dimensions %sx%s' % + raise forms.ValidationError(ugettext('Image too small: %sx%s, minimal dimensions %sx%s') % (width, height, min_width, min_height)) return cleaned_data @@ -66,7 +76,7 @@ class ImageEditForm(forms.ModelForm): width, height = PILImage.open(uploaded_file.file).size min_width, min_height = settings.MIN_COVER_SIZE if width < min_width or height < min_height: - raise forms.ValidationError('Image too small: %sx%s, minimal dimensions %sx%s' % + raise forms.ValidationError(ugettext('Image too small: %sx%s, minimal dimensions %sx%s') % (width, height, min_width, min_height))