Add force_cover_image setting.

This commit is contained in:
Jim Miller 2022-09-04 16:36:55 -05:00
parent b5f6a447b9
commit 6759803ccd
3 changed files with 22 additions and 12 deletions

View file

@ -279,17 +279,25 @@ class BaseSiteAdapter(Requestable):
self.storyDone = True
# include image, but no cover from story, add default_cover_image cover.
if self.getConfig('include_images') and \
not self.story.cover and \
self.getConfig('default_cover_image'):
logger.debug('default_cover_image')
(src,longdesc) = self.story.addImgUrl(None,
self.story.formatFileName(self.getConfig('default_cover_image'),
self.getConfig('allow_unsafe_filename')),
self.get_request_raw,
cover=True)
if src and src != 'failedtoload':
self.story.setMetadata('cover_image','default')
if self.getConfig('include_images'):
cover_image_url = None
if self.getConfig('force_cover_image'):
cover_image_type = 'force'
cover_image_url = self.getConfig('force_cover_image')
logger.debug('force_cover_image')
elif not self.story.cover and \
self.getConfig('default_cover_image'):
cover_image_type = 'default'
cover_image_url = self.getConfig('default_cover_image')
logger.debug('default_cover_image')
if cover_image_url:
(src,longdesc) = self.story.addImgUrl(None,
self.story.formatFileName(cover_image_url,
self.getConfig('allow_unsafe_filename')),
self.get_request_raw,
cover=True)
if src and src != 'failedtoload':
self.story.setMetadata('cover_image',cover_image_type)
# copy oldcover tuple to story.
self.story.oldcover = self.oldcover

View file

@ -377,6 +377,7 @@ def get_valid_keywords():
'datePublished_format',
'dateUpdated_format',
'default_cover_image',
'force_cover_image',
'description_limit',
'do_update_hook',
'use_archived_author',

View file

@ -304,7 +304,8 @@ div { margin: 0pt; padding: 0pt; }
def writeStoryImpl(self, out):
if self.story.oldcover and \
( self.getConfig('always_use_existing_cover') or not self.story.cover ):
( (self.getConfig('always_use_existing_cover') and
self.story.getMetadata('cover_image') != 'force' ) or not self.story.cover ):
logger.debug("use old cover always_use_existing_cover:%s"%self.getConfig('always_use_existing_cover'))
self.use_oldcover = True
self.story.setMetadata('cover_image','old')