SORT_KEY_SEP = '$'
+ is_book = True
+
class AlreadyExists(Exception):
pass
def get_daisy(self):
return self.get_media("daisy")
+ def get_audio_epub(self):
+ return self.get_media("audio.epub")
+
def media_url(self, format_):
media = self.get_media(format_)
if media:
has_daisy_file.short_description = 'DAISY'
has_daisy_file.boolean = True
+ def has_audio_epub_file(self):
+ return self.has_media("audio.epub")
+
@property
def media_daisy(self):
return self.get_media('daisy')
+ @property
+ def media_audio_epub(self):
+ return self.get_media('audio.epub')
+
def get_audiobooks(self):
ogg_files = {}
for m in self.media.filter(type='ogg').order_by().iterator():
# will make problems in conjunction with paid previews
def download_pictures(self, remote_gallery_url):
+ # This is only needed for legacy relative image paths.
gallery_path = self.gallery_path()
# delete previous files, so we don't include old files in ebooks
if os.path.isdir(gallery_path):
makedirs(gallery_path)
for ilustr in ilustr_elements:
ilustr_src = ilustr.get('src')
+ if '/' in ilustr_src:
+ continue
ilustr_path = os.path.join(gallery_path, ilustr_src)
urlretrieve('%s/%s' % (remote_gallery_url, ilustr_src), ilustr_path)