X-Git-Url: https://git.mdrn.pl/librarian.git/blobdiff_plain/aeb2a02ce8d5bc789e8e23f5859c7e96afa6da0b..d2997b73a50a2885a993408d277d511f98320ed3:/librarian/formats/cover/evens/__init__.py?ds=sidebyside diff --git a/librarian/formats/cover/evens/__init__.py b/librarian/formats/cover/evens/__init__.py index 35ef84a..9081464 100644 --- a/librarian/formats/cover/evens/__init__.py +++ b/librarian/formats/cover/evens/__init__.py @@ -22,18 +22,17 @@ class EvensCover(Cover): try: cover_url = self.doc.meta.get(DCNS('relation.coverimage.url'))[0] except IndexError: - raise BuildError('No cover specified (metadata field relation.coverimage.url missing)') - if not cover_url: - raise BuildError('No cover specified (metadata field relation.coverimage.url empty)') - if cover_url.startswith('file://'): - cover_url = ctx.files_path + urllib.quote(cover_url[7:]) - IMG_EXT = ('png', 'jpg', 'jpeg') - if '.' not in self.background_img or self.background_img.rsplit('.')[1].lower() not in IMG_EXT: - raise BuildError('Wrong cover format, should be PNG or JPG') - try: - self.background_img = urlopen(cover_url) - except URLError: - raise BuildError('Cannot open the cover image: %s' % cover_url) + cover_url = False + if cover_url: + if cover_url.startswith('file://'): + cover_url = ctx.files_path + urllib.quote(cover_url[7:]) + IMG_EXT = ('png', 'jpg', 'jpeg', 'gif') + if '.' not in cover_url or cover_url.rsplit('.', 1)[1].lower() not in IMG_EXT: + raise BuildError('Wrong cover format, should be PNG, JPG, GIF or SVG') + try: + self.background_img = urlopen(cover_url) + except URLError: + raise BuildError('Cannot open the cover image: %s' % cover_url) if getattr(ctx, 'cover_logo', None): self.logo_width = 150