$def with (work) $# Render the subject input field $jsdef render_subject_field(name, data):
$code: subjects = [] for s in data: s = s.replace('"', '""') 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'])