mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-07 10:14:46 -04:00
Fix two problems in bulk search/replace:
1) S/R of datetime fields generated an exception 2) Using {template} as a source generated an error until the destination field was filled in.
This commit is contained in:
parent
a87092ba4f
commit
e87281a8d2
@ -585,6 +585,8 @@ class MetadataBulkDialog(ResizableDialog, Ui_MetadataBulkDialog):
|
||||
fm = self.db.metadata_for_field(field)
|
||||
if field == 'sort':
|
||||
val = mi.get('title_sort', None)
|
||||
elif fm['datatype'] == 'datetime':
|
||||
val = mi.format_field(field)[1]
|
||||
else:
|
||||
val = mi.get(field, None)
|
||||
if isinstance(val, (int, float, bool)):
|
||||
@ -731,8 +733,10 @@ class MetadataBulkDialog(ResizableDialog, Ui_MetadataBulkDialog):
|
||||
return ''
|
||||
dest = self.s_r_df_itemdata(None)
|
||||
if dest == '':
|
||||
if self.db.metadata_for_field(src)['datatype'] == 'composite':
|
||||
raise Exception(_('You must specify a destination when source is a composite field'))
|
||||
if (src == '{template}' or
|
||||
self.db.metadata_for_field(src)['datatype'] == 'composite'):
|
||||
raise Exception(_('You must specify a destination when source is '
|
||||
'a composite field or a template'))
|
||||
dest = src
|
||||
dest_mode = self.replace_mode.currentIndex()
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user