$def with (work) $# Render the subject input field $jsdef render_subject_field(name, data):
$code: subjects = [] for s in data: subjects.append('"' + s + '"' if ',' in s else s) subject_str = ', '.join(subjects) rows = len(subject_str) // 95 + 1
$jsdef render_subject_autocomplete_item(item):
$item.name
$_("There's no wrong answer here.")
$_("Please separate with commas.") $:_('For example: cheese, Roman Empire, psychology')
$ config = {'name': 'subjects', 'facet': 'subject', 'data': work.get_subjects() if len(work.get_subjects()) else []}
$:render_subject_field(config['name'], config['data'])
$:_('For example: Theodore Roosevelt, Julian of Norwich, Tintin')
$ config = {'name': 'subject_people', 'facet': 'person', 'data': work.subject_people if len(work.subject_people) else []}
$:render_subject_field(config['name'], config['data'])
$:_('For example: London, Atlantis, Omaha')
$ config = {'name': 'subject_places', 'facet': 'place', 'data': work.subject_places if len(work.subject_places) else []}
$:render_subject_field(config['name'], config['data'])
$:_('For example: 1984, The Middle Ages, 1810-1890')
$ config = {'name': 'subject_times', 'facet': 'time', 'data': work.subject_times if len(work.subject_times) else []}
$:render_subject_field(config['name'], config['data'])