else:
return TextPlus(text.decode('utf-8'))
+def as_bool(text):
+ return text == 'true'
+as_bool.no_lang = True
def as_wluri_strict(text):
return WLURI.strict(text)
if validator is None or val[0] is None:
return val[0]
nv = validator(val[0])
- if hasattr(val[0], 'lang'):
+ if hasattr(val[0], 'lang') and not hasattr(validator, 'no_lang'):
setattr(nv, 'lang', val[0].lang)
return nv
except ValueError as e:
Field(PLMETNS('digitisationSponsor'), 'sponsors', multiple=True,
required=False),
Field(WLNS('digitisationSponsorNote'), 'sponsor_note', required=False),
+ Field(WLNS('contentWarning'), 'content_warnings', multiple=True,
+ required=False),
Field(WLNS('developmentStage'), 'stage', required=False),
)
Field(WLNS('coverClass'), 'cover_class', default=['default']),
Field(WLNS('coverLogoUrl'), 'cover_logo_urls', multiple=True,
required=False),
+ Field(WLNS('endnotes'), 'endnotes', as_bool,
+ required=False),
Field('pdf-id', 'isbn_pdf', required=False),
Field('epub-id', 'isbn_epub', required=False),