aboutsummaryrefslogtreecommitdiff
path: root/util.go
diff options
context:
space:
mode:
authorJordan <me@jordan.im>2022-01-01 19:43:19 -0700
committerJordan <me@jordan.im>2022-01-01 19:43:19 -0700
commit4f1178fc2a3e5865c2fb1c16c83fc1abb15484f9 (patch)
treeecec1f79a373cb2331de9b8011177ae2db9d039b /util.go
parent8401a6bdeec321920550f813a1c7843ed6e66a44 (diff)
downloadcrane-4f1178fc2a3e5865c2fb1c16c83fc1abb15484f9.tar.gz
crane-4f1178fc2a3e5865c2fb1c16c83fc1abb15484f9.zip
crane, http, util: housekeeping, performance improvements, styling
Diffstat (limited to 'util.go')
-rw-r--r--util.go84
1 files changed, 42 insertions, 42 deletions
diff --git a/util.go b/util.go
index cc2af29..ae9ed98 100644
--- a/util.go
+++ b/util.go
@@ -99,51 +99,51 @@ func getMetaFromCitation(resp *http.Response) (*Meta, error) {
}
}
switch name {
- case "citation_title":
- meta.Title = cont
- case "citation_author":
- var c Contributor
- // Doe, Jain
- if strings.Contains(cont, ",") {
- v := strings.Split(cont, ", ")
- c.FirstName = strings.Join(v[1:], " ")
- c.LastName = v[0]
+ case "citation_title":
+ meta.Title = cont
+ case "citation_author":
+ var c Contributor
+ // Doe, Jain
+ if strings.Contains(cont, ",") {
+ v := strings.Split(cont, ", ")
+ c.FirstName = strings.Join(v[1:], " ")
+ c.LastName = v[0]
// Jain Doe
- } else {
- v := strings.Split(cont, " ")
- c.FirstName = strings.Join(v[:len(v)-1], " ")
- c.LastName = strings.Join(v[len(v)-1:], " ")
- }
- c.Role = "author"
- if len(meta.Contributors) > 0 {
- c.Sequence = "additional"
- } else {
- c.Sequence = "first"
- }
- meta.Contributors = append(meta.Contributors, c)
- case "citation_date", "citation_publication_date":
- var formats = []string{"2006-01-02", "2006/01/02", "2006"}
- for _, format := range formats {
- t, err := time.Parse(format, cont)
- if err == nil {
- meta.PubMonth = t.Month().String()
- meta.PubYear = strconv.Itoa(t.Year())
- break
- }
+ } else {
+ v := strings.Split(cont, " ")
+ c.FirstName = strings.Join(v[:len(v)-1], " ")
+ c.LastName = strings.Join(v[len(v)-1:], " ")
+ }
+ c.Role = "author"
+ if len(meta.Contributors) > 0 {
+ c.Sequence = "additional"
+ } else {
+ c.Sequence = "first"
+ }
+ meta.Contributors = append(meta.Contributors, c)
+ case "citation_date", "citation_publication_date":
+ var formats = []string{"2006-01-02", "2006/01/02", "2006"}
+ for _, format := range formats {
+ t, err := time.Parse(format, cont)
+ if err == nil {
+ meta.PubMonth = t.Month().String()
+ meta.PubYear = strconv.Itoa(t.Year())
+ break
}
- case "citation_journal_title", "og:site_name", "DC.Publisher":
- meta.Journal = cont
- case "citation_firstpage":
- meta.FirstPage = cont
- case "citation_lastpage":
- meta.LastPage = cont
- case "citation_doi":
- meta.DOI = cont
- case "citation_arxiv_id":
- meta.ArxivID = cont
- case "citation_pdf_url":
- meta.Resource = cont
}
+ case "citation_journal_title", "og:site_name", "DC.Publisher":
+ meta.Journal = cont
+ case "citation_firstpage":
+ meta.FirstPage = cont
+ case "citation_lastpage":
+ meta.LastPage = cont
+ case "citation_doi":
+ meta.DOI = cont
+ case "citation_arxiv_id":
+ meta.ArxivID = cont
+ case "citation_pdf_url":
+ meta.Resource = cont
+ }
}
for c := n.FirstChild; c != nil; c = c.NextSibling {
f(c)