commonmeta-ruby 3.3.12 → 3.3.14

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 2bfcb1fb66e77840779aaf699aa2483340295353f0a08d62ccd8268f53c402e4
4
- data.tar.gz: f65b97d93b2f4bea83e37ab2a4232e99b45c104f7b408d2523d039a6038cb62e
3
+ metadata.gz: 5ee69e57863623e144f88a33b390d82e7091e164251e18126dc91506aa1dbb46
4
+ data.tar.gz: 18a2dbf7ca68ab099441811fae3535164f9ecd32257a75b06327c2978adb2d86
5
5
  SHA512:
6
- metadata.gz: 859fa418ae88eac189d0fd4b637571617dd73e14e7a1de05ec5721abcd97461db0ca75d21da1924566f771994677a6a77eab2c6d950cd0ca66fcc7f797cea61c
7
- data.tar.gz: 11a2b643c976b1c41f59399c4713b8aae854601657a9d717905f724f1a64b5f6224276fcd1bcf70b695f0825ed0771d2bad911f4b0a2dce243a147842152ecc3
6
+ metadata.gz: ece7f1c165c734f8654329f809b2163013d6e837fc29a4b50e17f449e0754b6fa0ef3a6afd22c1601c0cd27c7659f068d1d59a9f166a7bc44b67e6d227a75366
7
+ data.tar.gz: 3eada0a28b0ccc7ea570b7ca45ee07c2a614725b0d55ca8fd6964c67579d27e9c538a51bc1e76e30c6faccff871e93959063702062df9f8a1cc25d9ae4468ba4
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- commonmeta-ruby (3.3.12)
4
+ commonmeta-ruby (3.3.14)
5
5
  activesupport (>= 4.2.5, < 8.0)
6
6
  addressable (~> 2.8.1, < 2.8.2)
7
7
  base32-url (>= 0.7.0, < 1)
@@ -161,8 +161,8 @@ module Commonmeta
161
161
  xml.author(ref["author"]) if ref["author"].present?
162
162
  xml.volume(ref["volume"]) if ref["volume"].present?
163
163
  xml.first_page(ref["first_page"]) if ref["first_page"].present?
164
- xml.cYear(ref["cYear"]) if ref["cYear"].present?
165
- xml.article_title(ref["article_title"]) if ref["article_title"].present?
164
+ xml.cYear(ref["publicationYear"]) if ref["publicationYear"].present?
165
+ xml.article_title(ref["title"]) if ref["title"].present?
166
166
  xml.doi(doi_from_url(ref["doi"])) if ref["doi"].present?
167
167
  xml.unstructured_citation(ref["url"]) if ref["url"].present?
168
168
  end
@@ -86,7 +86,11 @@ module Commonmeta
86
86
  Array.wrap(meta["references"]).reduce([]) do |sum, reference|
87
87
  begin
88
88
  if reference["doi"] && validate_doi(reference["doi"])
89
- sum << reference if [200, 301, 302].include? HTTP.head(reference["doi"]).status
89
+ response = HTTP.follow
90
+ .headers(:accept => "application/vnd.citationstyles.csl+json")
91
+ .get(reference["doi"])
92
+ csl = JSON.parse(response.body.to_s)
93
+ sum << reference.merge("title" => csl['title'], "publicationYear" => csl.dig("issued", "date-parts", 0, 0).to_s) if [200, 301, 302].include? response.status
90
94
  elsif reference["url"] && validate_url(reference["url"]) == "URL"
91
95
  sum << reference if [200, 301, 302].include? HTTP.head(reference["url"]).status
92
96
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Commonmeta
4
- VERSION = '3.3.12'
4
+ VERSION = '3.3.14'
5
5
  end