diff options
author | Bryan Newbold <bnewbold@robocracy.org> | 2021-04-12 17:30:01 -0700 |
---|---|---|
committer | Bryan Newbold <bnewbold@robocracy.org> | 2021-04-12 17:35:53 -0700 |
commit | 09caaed60efbf525d7eadb73887b50843bd2d9bd (patch) | |
tree | 5df3a24e1acc900d20d24a73321441c429e3c0dd | |
parent | 4abb99c545c3d4af91f98715708fc58310f70f03 (diff) | |
download | fatcat-09caaed60efbf525d7eadb73887b50843bd2d9bd.tar.gz fatcat-09caaed60efbf525d7eadb73887b50843bd2d9bd.zip |
prefer contrib.creator.display_name over contrib.raw_name
These will be getting updates from ORCID and are usually more complete
and more correct for display, attribution, and search purposes.
Might need to tweak fuzzycat code to handle multiple names at the
verification stage.
-rw-r--r-- | python/fatcat_tools/transforms/csl.py | 6 | ||||
-rw-r--r-- | python/fatcat_tools/transforms/elasticsearch.py | 5 | ||||
-rw-r--r-- | python/fatcat_web/templates/entity_base.html | 4 | ||||
-rw-r--r-- | python/fatcat_web/templates/release_view_contribs.html | 11 |
4 files changed, 17 insertions, 9 deletions
diff --git a/python/fatcat_tools/transforms/csl.py b/python/fatcat_tools/transforms/csl.py index ba199efb..15bb369f 100644 --- a/python/fatcat_tools/transforms/csl.py +++ b/python/fatcat_tools/transforms/csl.py @@ -33,19 +33,19 @@ def release_to_csl(entity): if contrib.creator: # Default to "local" (publication-specific) metadata; fall back to # creator-level - family = contrib.surname or contrib.creator.surname or (contrib.raw_name and contrib.raw_name.split()[-1]) + family = contrib.creator.surname or contrib.surname or (contrib.raw_name and contrib.raw_name.split()[-1]) if not family: # CSL requires some surname (family name) continue c = dict( family=family, - given=contrib.given_name or contrib.creator.given_name, + given=contrib.creator.given_name or contrib.given_name, #dropping-particle #non-dropping-particle #suffix #comma-suffix #static-ordering - literal=contrib.raw_name or contrib.creator.display_name, + literal=contrib.creator.display_name or contrib.raw_name, #parse-names, # role must be defined; default to author role=contrib.role or 'author', diff --git a/python/fatcat_tools/transforms/elasticsearch.py b/python/fatcat_tools/transforms/elasticsearch.py index 4bf9091a..331ca4e7 100644 --- a/python/fatcat_tools/transforms/elasticsearch.py +++ b/python/fatcat_tools/transforms/elasticsearch.py @@ -113,10 +113,13 @@ def release_to_elasticsearch(entity: ReleaseEntity, force_bool: bool = True) -> contrib_affiliations = [] creator_ids = [] for c in (release.contribs or []): - if c.raw_name: + if c.creator and c.creator.display_ame: + contrib_names.append(c.creator.display_ame) + elif c.raw_name: contrib_names.append(c.raw_name) elif c.surname: contrib_names.append(c.surname) + if c.creator_id: creator_ids.append(c.creator_id) if c.raw_affiliation: diff --git a/python/fatcat_web/templates/entity_base.html b/python/fatcat_web/templates/entity_base.html index f30df0da..36280f5d 100644 --- a/python/fatcat_web/templates/entity_base.html +++ b/python/fatcat_web/templates/entity_base.html @@ -65,8 +65,8 @@ <p style="font-size: larger;"> {% if entity._authors and entity._authors != [] %} by {% for contrib in entity._authors[:12] %} - {% if contrib.creator_id %} - <b><a href="/creator/{{contrib.creator_id}}">{{ contrib.raw_name }}</a></b>{% if not loop.last %}, {% endif %} + {% if contrib.creator_id and contrib.creator and contrib.creator.display_name %} + <b><a href="/creator/{{contrib.creator_id}}">{{ contrib.creator.display_name }}</a></b>{% if not loop.last %}, {% endif %} {% else %} {% if contrib.raw_name != None %}{{ contrib.raw_name }}{% else %}<i>Unknown</i>{% endif %}{% if not loop.last %}, {% endif %} {% endif %} diff --git a/python/fatcat_web/templates/release_view_contribs.html b/python/fatcat_web/templates/release_view_contribs.html index 55cdf133..f4969e32 100644 --- a/python/fatcat_web/templates/release_view_contribs.html +++ b/python/fatcat_web/templates/release_view_contribs.html @@ -12,12 +12,17 @@ {% for contrib in release.contribs %} <tr><td class="collapsing">{% if contrib.index or contrib.index == 0 %} {{ contrib.index + 1 }}{% endif %} <td><span itemprop="author"> - {% if contrib.creator_id %} - <a href="/creator/{{contrib.creator_id}}">{{ contrib.raw_name or 'unknown' }}</a> + {% if contrib.creator_id and contrib.creator and contrib.creator.display_name %} + <a href="/creator/{{contrib.creator_id}}">{{ contrib.creator.display_name }}</a> {% else %} {{ contrib.raw_name or '' }} {% endif %} - {% if contrib.surname %} + + {% if contrib.creator and contrib.creator.surname %} + <code> + ({{ contrib.creator.surname }}{% if contrib.creator.given_name %}, {{ contrib.creator.given_name }}{% endif %}) + </code> + {% elif contrib.surname %} <code> ({{ contrib.surname }}{% if contrib.given_name %}, {{ contrib.given_name }}{% endif %}) </code> |