kcrw_api 0.0.1.pre → 0.0.2.pre

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 474fb9983129f7c5b5c885ed87b5f3900ac141f3
4
- data.tar.gz: 72be4df83c9b2ac54c2af7e2d7f5556a27892da4
3
+ metadata.gz: 0ca86f6d0770bd48fe43bda9b1ca8bbfb7c7b12a
4
+ data.tar.gz: 844cc223b399238ac8a9d33f53dec8e7f9c8a62d
5
5
  SHA512:
6
- metadata.gz: 6f2dee0d9ad521cb5cee0c37bd999ecc00115866d53f0a067e920cfda68c3f6ff386a619e28d457129075633c86fba14de3730ae895046b88995d1f51d6ad3c1
7
- data.tar.gz: 26eb8c3c7da349727a705314784911e8213d55e0058783ae12485e98b2bcff35c1823b8e8b80c5117a98e8b57dfab1e486485dcf9b15de796ef3ec2a98e7fd1c
6
+ metadata.gz: 08e35d6f6352ed83c4eb7a6e7166f9f28b314fd6a4d0bb0a5a168c462eaba541692a90cf809eeae7f715b1facb370c038ddc15b0d7768355df783b61179cf8df
7
+ data.tar.gz: 6d1c29f8ab58ab604fef205f25821d5198f76e1b17ed2fa5156afcfa21c7f19c96c6969cbfa4cc0d52cd3aed616819f8ef375e406d80ac120423f4daa3e43366
@@ -0,0 +1,21 @@
1
+ class KcrwApi
2
+ class Track
3
+ attr_reader :album_image
4
+ attr_reader :album_image_large
5
+ attr_reader :album
6
+ attr_reader :artist
7
+ attr_reader :label
8
+ attr_reader :title
9
+ attr_reader :year
10
+
11
+ def initialize(track_hash)
12
+ @album_image = track_hash['albumImage']
13
+ @album_image_large = track_hash['albumImageLarge']
14
+ @album = track_hash['album']
15
+ @artist = track_hash['artist']
16
+ @label = track_hash['label']
17
+ @title = track_hash['title']
18
+ @year = track_hash['year']
19
+ end
20
+ end
21
+ end
data/lib/kcrw_api.rb ADDED
@@ -0,0 +1,54 @@
1
+ require 'date'
2
+ require 'open-uri'
3
+ require 'json'
4
+
5
+ class KcrwApi
6
+ BASE = 'https://tracklist-api.kcrw.com/Music/date'.freeze
7
+
8
+ def initialize(date_time)
9
+ @date_time = date_time
10
+ end
11
+
12
+ def endpoint
13
+ "#{BASE}/#{date}?time=#{time}"
14
+ end
15
+
16
+ def tracks
17
+ @contents ||= URI.parse(endpoint).read
18
+ JSON.parse(@contents).each do |track|
19
+ Track.new(track)
20
+ end
21
+ end
22
+
23
+ private
24
+
25
+ def date
26
+ "#{year}/#{month}/#{day}"
27
+ end
28
+
29
+ def day
30
+ @date_time.day < 10 ? "0#{@date_time.day}" : @date_time.day
31
+ end
32
+
33
+ def hour
34
+ @date_time.hour < 10 ? "0#{@date_time.hour}" : @date_time.hour
35
+ end
36
+
37
+ def minute
38
+ @date_time.minute < 10 ? "0#{@date_time.minute}" : @date_time.minute
39
+ end
40
+
41
+ def month
42
+ @date_time.month < 10 ? "0#{@date_time.month}" : @date_time.month
43
+ end
44
+
45
+ def time
46
+ "#{hour}%3A#{minute}"
47
+ end
48
+
49
+ def year
50
+ @date_time.year
51
+ end
52
+ end
53
+
54
+ require 'kcrw_api/track'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kcrw_api
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1.pre
4
+ version: 0.0.2.pre
5
5
  platform: ruby
6
6
  authors:
7
7
  - Teo Dell'Amico
@@ -16,7 +16,8 @@ executables: []
16
16
  extensions: []
17
17
  extra_rdoc_files: []
18
18
  files:
19
- - lib/k_c_r_w_api.rb
19
+ - lib/kcrw_api.rb
20
+ - lib/kcrw_api/track.rb
20
21
  homepage: http://rubygems.org/gems/kcrw_api
21
22
  licenses:
22
23
  - MIT
data/lib/k_c_r_w_api.rb DELETED
@@ -1,5 +0,0 @@
1
- class KCRWApi
2
- def self.hi
3
- puts 'hi'
4
- end
5
- end