def add_disclaimer(new, entry): if there('disclaimer', entry): new['disclaimer'] = entry['disclaimer'] elif there('status', entry) and entry['status'] in [ 'proposed', 'in preparation', 'forthcoming' ]: new['disclaimer'] = '*Draft only. Do not cite without permission.*'
def article(e): o = str() o += prefix(e) info = e['published'] if there('journal', info): o += '*' + info['journal'] + '*' o += ' ' if there('year', info): o += '(' + str(info['year']) + ')' o += ' ' if there('volume', info): o += str(info['volume']) o += ': ' if there('pages', info): o += info['pages'] o = o.rstrip() return o
def incollection(e): o = str() o += prefix(e) info = e['published'] if there('editor', info): o += concat_useinitials(info['editor'], ', ', ' & ') o += ' ' if len(info['editor']) > 1: o += '(Eds.)' else: o += '(Ed.)' o += ' ' if there('booktitle', info): o += '*' + info['booktitle'] + '*' if there('year', info) and type(info['year']) is int: o += ' ' o += '(' + str(info['year']) + ')' if there('address', info): o += ', ' o += info['address'] o += ': ' if there('publisher', info): o += info['publisher'] if there('pages', info): o += ', ' o += 'pp. ' + info['pages'] elif there('chapter', info): o += 'chapter ' + info['chapter'] o = o.rstrip() o = o.rstrip(',') return o
def add_publication(new, entry): def add_published(new, entry): import formatter f = getattr(formatter, entry['published']['type'], formatter.default) new['published'] = f(entry) def add_doi(new, entry): if there('doi', entry['published']): new['doi'] = entry['published']['doi'] if there('published', entry): add_disclaimer(new, entry) add_published(new, entry) add_doi(new, entry)
def add_date_updated(new, entry): if there('date_updated', entry): new['date'] = uk_date(entry['date_updated'])
def add_title(new, entry): if there('title', entry): new['title'] = entry['title']
def add_note(new, entry): if there('note', entry): new['note'] = entry['note']
def add_author(new, entry): if there('author', entry): new['author'] = entry['author'] for a in new['author']: a['name'] = a.get('name_first', '') + ' ' + a.get('name_last', '')
def add_review(new, entry): if there('review', entry): new['review'] = entry['review']
def add_keywords(new, entry): if there('keywords', entry): new['keywords'] = entry['keywords']
def add_abstract(new, entry): if there('abstract', entry): new['abstract'] = entry['abstract']
def add_doi(new, entry): if there('doi', entry['published']): new['doi'] = entry['published']['doi']
def add_disclaimer(new, entry): if there('disclaimer', entry): new['disclaimer'] = entry['disclaimer'] elif there('status', entry) and entry['status'] in ['proposed', 'in preparation', 'forthcoming']: new['disclaimer'] = '*Draft only. Do not quote without permission.*'