lita-espn-fantasy-football 0.1.4 → 0.1.6

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,15 +1,7 @@
1
1
  ---
2
- !binary "U0hBMQ==":
3
- metadata.gz: !binary |-
4
- MThkYTI4MzBiN2EzYjcyN2Y4MTNmMDVmMmQxM2UyZDM5MTg1MjIzMw==
5
- data.tar.gz: !binary |-
6
- MjY3ODM2MzllMjdkMmI1ZDk5MGM0OGE1YjBiNzUzMzdmNTliNjAxMg==
2
+ SHA1:
3
+ metadata.gz: e11320d2270ba33658bfa06c121957589c0816f3
4
+ data.tar.gz: dede879b738aea9f818af11bb6630121722db2ca
7
5
  SHA512:
8
- metadata.gz: !binary |-
9
- YjExZjI2NjVjMTNhMmM1ZDJjZmY5MWU3NzVjNjNjZGNjOWYwOTdhZmNhNDMy
10
- ZDExMDM0ZjFjMDcxMjI4M2I2ZDQ5YWFmODYwMjlmOWNkMjUzMGM2MDJkNjFm
11
- NzE5NTY4NjQwNTEwNzViMDI4OTFlMDM5OWZmZmFlNTQ5NzVmZDU=
12
- data.tar.gz: !binary |-
13
- YmJiNjlmOGYwYmMzNDU4NWY3ZGY5OTE5NzE1ZWEyMWFiZGRjYzc4OWYwNjE1
14
- MTM3ODdmY2VhZjE2ZGYwNTU1ZTkyODc1NjY5YWRhZGIzZTlhNWFkNDU2OGMw
15
- MDE0YTgxNmQ2OTMxYmEwZjU0NTM5NWUwZGZlM2M2NjY3MjZjZDM=
6
+ metadata.gz: cdcf49d83be1dd3ffc28eb52a1fe29cb1b47a2c8949ca0e110c143f3b8a5b6ad4bff9b5d0ead59bf4b6162e519d0bed1c0032bc41ed833da0b1276830bac272f
7
+ data.tar.gz: fe80214b651ec1d0bc8b9b2282f273ff91d14b6c9809f8d2d1a1af0e57a1156f969d72bcad61eeffb50f59122b20f861fe045ee22ac07c4fcaf26e3c5c4f4ca5
@@ -1,6 +1,6 @@
1
1
  language: ruby
2
2
  rvm:
3
- - 2.0.0
3
+ - 2.4.0
4
4
  script: bundle exec rake
5
5
  before_install:
6
6
  - gem update --system
@@ -1,5 +1,6 @@
1
1
  require "nokogiri"
2
2
  require "terminal-table"
3
+ require "open-uri"
3
4
 
4
5
  module Lita
5
6
  module Handlers
@@ -17,6 +18,11 @@ module Lita
17
18
  "score WEEK" => "Replies with the scoreboard for the specified week. If WEEK is empty, the current scoreboard is returned"
18
19
  })
19
20
 
21
+ route(/^sup/, :command_sup, command: true)
22
+ def command_sup(response)
23
+ response.reply(espn_activity_scrape)
24
+ end
25
+
20
26
  # chat controllers
21
27
  def command_player(response)
22
28
  player = response.matches.first.first
@@ -181,6 +187,45 @@ module Lita
181
187
  resp
182
188
  end
183
189
 
190
+ def espn_activity_scrape
191
+ resp = []
192
+ params = {
193
+ "leagueId" => config.league_id,
194
+ "seasonId" => config.season_id
195
+ }
196
+
197
+ param_string = params.map { |key, val| "#{key}=#{val}" }.join("&")
198
+ url = "http://games.espn.go.com/ffl/recentactivity?#{param_string}"
199
+ Lita.logger.debug("Searching for league activity at #{ url }")
200
+ page = Nokogiri::HTML(open(url))
201
+
202
+ # get activity and remove header rows
203
+ activity = page.xpath('//*[@class="games-fullcol games-fullcol-extramargin"]/table/tr').drop(2)
204
+
205
+ activity.each do |a|
206
+ # TODO: check time stamps
207
+ # TODO: timer instead of command
208
+ line = a.css("td")[2].inner_html
209
+
210
+ # remove asterisks, as they'll conflict with markdown
211
+ line.gsub!(/\*/, "")
212
+
213
+ # convert bold formatting
214
+ line.gsub!(/<(\/)?b>/, "*")
215
+
216
+ # convert breaks to newlines
217
+ line.gsub!(/<br>/, "\n")
218
+
219
+ # add emoji
220
+ line.gsub!(/(\S+\sadded)/, ":green_heart: \\1")
221
+ line.gsub!(/(\S+\sdropped)/, ":broken_heart: \\1")
222
+
223
+ resp << line
224
+ end
225
+
226
+ resp
227
+ end
228
+
184
229
  def format_results(raw)
185
230
  rows = raw["rows"].map{|r| r.map{ |k,v| v}}
186
231
  table = Terminal::Table.new(:headings => raw["headers"], :rows => rows)
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |spec|
2
2
  spec.name = "lita-espn-fantasy-football"
3
- spec.version = "0.1.4"
3
+ spec.version = "0.1.6"
4
4
  spec.authors = ["Kevin Reedy", "Miles Evenson"]
5
5
  spec.email = ["kevinreedy@gmail.com", "miles.evenson@gmail.com"]
6
6
  spec.description = "Lita handler for ESPN Fantasy Football"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lita-espn-fantasy-football
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4
4
+ version: 0.1.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kevin Reedy
@@ -9,160 +9,160 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2015-10-29 00:00:00.000000000 Z
12
+ date: 2017-09-05 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: lita
16
16
  requirement: !ruby/object:Gem::Requirement
17
17
  requirements:
18
- - - ! '>='
18
+ - - ">="
19
19
  - !ruby/object:Gem::Version
20
20
  version: '4.6'
21
21
  type: :runtime
22
22
  prerelease: false
23
23
  version_requirements: !ruby/object:Gem::Requirement
24
24
  requirements:
25
- - - ! '>='
25
+ - - ">="
26
26
  - !ruby/object:Gem::Version
27
27
  version: '4.6'
28
28
  - !ruby/object:Gem::Dependency
29
29
  name: nokogiri
30
30
  requirement: !ruby/object:Gem::Requirement
31
31
  requirements:
32
- - - ! '>='
32
+ - - ">="
33
33
  - !ruby/object:Gem::Version
34
34
  version: '1.6'
35
35
  type: :runtime
36
36
  prerelease: false
37
37
  version_requirements: !ruby/object:Gem::Requirement
38
38
  requirements:
39
- - - ! '>='
39
+ - - ">="
40
40
  - !ruby/object:Gem::Version
41
41
  version: '1.6'
42
42
  - !ruby/object:Gem::Dependency
43
43
  name: terminal-table
44
44
  requirement: !ruby/object:Gem::Requirement
45
45
  requirements:
46
- - - ! '>='
46
+ - - ">="
47
47
  - !ruby/object:Gem::Version
48
48
  version: '1.5'
49
49
  type: :runtime
50
50
  prerelease: false
51
51
  version_requirements: !ruby/object:Gem::Requirement
52
52
  requirements:
53
- - - ! '>='
53
+ - - ">="
54
54
  - !ruby/object:Gem::Version
55
55
  version: '1.5'
56
56
  - !ruby/object:Gem::Dependency
57
57
  name: bundler
58
58
  requirement: !ruby/object:Gem::Requirement
59
59
  requirements:
60
- - - ~>
60
+ - - "~>"
61
61
  - !ruby/object:Gem::Version
62
62
  version: '1.3'
63
63
  type: :development
64
64
  prerelease: false
65
65
  version_requirements: !ruby/object:Gem::Requirement
66
66
  requirements:
67
- - - ~>
67
+ - - "~>"
68
68
  - !ruby/object:Gem::Version
69
69
  version: '1.3'
70
70
  - !ruby/object:Gem::Dependency
71
71
  name: pry-byebug
72
72
  requirement: !ruby/object:Gem::Requirement
73
73
  requirements:
74
- - - ! '>='
74
+ - - ">="
75
75
  - !ruby/object:Gem::Version
76
76
  version: '0'
77
77
  type: :development
78
78
  prerelease: false
79
79
  version_requirements: !ruby/object:Gem::Requirement
80
80
  requirements:
81
- - - ! '>='
81
+ - - ">="
82
82
  - !ruby/object:Gem::Version
83
83
  version: '0'
84
84
  - !ruby/object:Gem::Dependency
85
85
  name: rake
86
86
  requirement: !ruby/object:Gem::Requirement
87
87
  requirements:
88
- - - ! '>='
88
+ - - ">="
89
89
  - !ruby/object:Gem::Version
90
90
  version: '0'
91
91
  type: :development
92
92
  prerelease: false
93
93
  version_requirements: !ruby/object:Gem::Requirement
94
94
  requirements:
95
- - - ! '>='
95
+ - - ">="
96
96
  - !ruby/object:Gem::Version
97
97
  version: '0'
98
98
  - !ruby/object:Gem::Dependency
99
99
  name: rack-test
100
100
  requirement: !ruby/object:Gem::Requirement
101
101
  requirements:
102
- - - ! '>='
102
+ - - ">="
103
103
  - !ruby/object:Gem::Version
104
104
  version: '0'
105
105
  type: :development
106
106
  prerelease: false
107
107
  version_requirements: !ruby/object:Gem::Requirement
108
108
  requirements:
109
- - - ! '>='
109
+ - - ">="
110
110
  - !ruby/object:Gem::Version
111
111
  version: '0'
112
112
  - !ruby/object:Gem::Dependency
113
113
  name: rspec
114
114
  requirement: !ruby/object:Gem::Requirement
115
115
  requirements:
116
- - - ! '>='
116
+ - - ">="
117
117
  - !ruby/object:Gem::Version
118
118
  version: 3.0.0
119
119
  type: :development
120
120
  prerelease: false
121
121
  version_requirements: !ruby/object:Gem::Requirement
122
122
  requirements:
123
- - - ! '>='
123
+ - - ">="
124
124
  - !ruby/object:Gem::Version
125
125
  version: 3.0.0
126
126
  - !ruby/object:Gem::Dependency
127
127
  name: simplecov
128
128
  requirement: !ruby/object:Gem::Requirement
129
129
  requirements:
130
- - - ! '>='
130
+ - - ">="
131
131
  - !ruby/object:Gem::Version
132
132
  version: '0'
133
133
  type: :development
134
134
  prerelease: false
135
135
  version_requirements: !ruby/object:Gem::Requirement
136
136
  requirements:
137
- - - ! '>='
137
+ - - ">="
138
138
  - !ruby/object:Gem::Version
139
139
  version: '0'
140
140
  - !ruby/object:Gem::Dependency
141
141
  name: coveralls
142
142
  requirement: !ruby/object:Gem::Requirement
143
143
  requirements:
144
- - - ! '>='
144
+ - - ">="
145
145
  - !ruby/object:Gem::Version
146
146
  version: '0'
147
147
  type: :development
148
148
  prerelease: false
149
149
  version_requirements: !ruby/object:Gem::Requirement
150
150
  requirements:
151
- - - ! '>='
151
+ - - ">="
152
152
  - !ruby/object:Gem::Version
153
153
  version: '0'
154
154
  - !ruby/object:Gem::Dependency
155
155
  name: lita-console
156
156
  requirement: !ruby/object:Gem::Requirement
157
157
  requirements:
158
- - - ! '>='
158
+ - - ">="
159
159
  - !ruby/object:Gem::Version
160
160
  version: '0'
161
161
  type: :development
162
162
  prerelease: false
163
163
  version_requirements: !ruby/object:Gem::Requirement
164
164
  requirements:
165
- - - ! '>='
165
+ - - ">="
166
166
  - !ruby/object:Gem::Version
167
167
  version: '0'
168
168
  description: Lita handler for ESPN Fantasy Football
@@ -173,8 +173,8 @@ executables: []
173
173
  extensions: []
174
174
  extra_rdoc_files: []
175
175
  files:
176
- - .gitignore
177
- - .travis.yml
176
+ - ".gitignore"
177
+ - ".travis.yml"
178
178
  - Gemfile
179
179
  - LICENSE
180
180
  - README.md
@@ -197,17 +197,17 @@ require_paths:
197
197
  - lib
198
198
  required_ruby_version: !ruby/object:Gem::Requirement
199
199
  requirements:
200
- - - ! '>='
200
+ - - ">="
201
201
  - !ruby/object:Gem::Version
202
202
  version: '0'
203
203
  required_rubygems_version: !ruby/object:Gem::Requirement
204
204
  requirements:
205
- - - ! '>='
205
+ - - ">="
206
206
  - !ruby/object:Gem::Version
207
207
  version: '0'
208
208
  requirements: []
209
209
  rubyforge_project:
210
- rubygems_version: 2.4.5
210
+ rubygems_version: 2.6.13
211
211
  signing_key:
212
212
  specification_version: 4
213
213
  summary: Lita handler for ESPN Fantasy Football