espn_nba_fantasy 0.0.4.1 → 0.0.5

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: 625920e5a357e3f2eda3567e8241d14572c870da13407e3ab92a4c10d2478ca1
4
- data.tar.gz: d2cd2b8c2bbca0c7ce7bf1af48c9f5e7d2c15191c4d4aac73eef2c280cfbcd67
3
+ metadata.gz: 16fb774021db8dfb88cbb618a2eba2a1ea8b72bd9b233e013557a36cfbb07b8f
4
+ data.tar.gz: 418d47edb6aa4569dc52e1b96dfcfb87fd0e3d9a0990465d455766b785dc171b
5
5
  SHA512:
6
- metadata.gz: 6e7e2f7d59c0a87244665acc1b5a4dc2caffb0198f12eb02a86ee4d666a0dd84d7860fedc6e319c731921f1f1118785de56ad72f7dfef49eb2db5e27248c8425
7
- data.tar.gz: e7eb379f3712c83520146fef0f7c5b15669954d6068c66d07de0dfbb6b551da9aff543edabb4fb8cf36665ec17afc2ffc0112cf0c0793fd610f0dc3b2e9c321f
6
+ metadata.gz: 0a9cd198d656352685ba648193a3d1d7286ace3842cba6a65beac6c504281546722257e92a6f70f8814c4d10a4cf1578884109f7bb8d58a8732f84157e222309
7
+ data.tar.gz: d32621f9f42263337d3ce84db10a1399b035680c185a2f968525d7a30b949fa4379c3823456a42cd686845f18bc0ff8832f486c5eb84fe1a61c5d44b21a8cc39
@@ -9,18 +9,20 @@ module ESPNNBAFantasy
9
9
 
10
10
  include PlayerFinder
11
11
 
12
- attr_accessor :teams, :stat_data
12
+ attr_accessor :teams, :stat_data, :league_id, :name, :current_start_year, :current_end_year
13
13
 
14
14
  #initializes the league
15
15
 
16
16
  def initialize(league_id, year, s2, sw)
17
- @league_id = league_id
18
-
19
17
  @uri = "https://lm-api-reads.fantasy.espn.com/apis/v3/games/fba/seasons/#{year}/segments/0/leagues/#{league_id}?view=mRoster&view=mSettings&view=mTeam&view=modular&view=mNav"
20
18
  @cookies = {'espn_s2': "#{s2}", 'SWID': "#{sw}"}
21
19
  @data = JSON.parse(RestClient.get(@uri, {cookies: @cookies}))
22
20
  @teams = make_team_objects
23
21
  @stat_data = make_stat_data
22
+ @league_id = @data['id']
23
+ @name = @data['name']
24
+ @current_start_year = @data['seasonId']
25
+ @current_end_year = @current_start_year + 1
24
26
  end
25
27
 
26
28
  def to_s
@@ -36,7 +38,7 @@ module ESPNNBAFantasy
36
38
  #pull up a Player object based on their name and their team
37
39
 
38
40
  def findplayer(team_name, str)
39
- team = teams.select{|t| t.name == team_name}.first
41
+ team = @teams.select{|t| t.name == team_name}.first
40
42
  return "No team named #{team_name}" unless team
41
43
 
42
44
  find_players(team.players, str) || "#{str} cannot be found in #{team_name}'s roster"
@@ -45,7 +47,7 @@ module ESPNNBAFantasy
45
47
  private
46
48
 
47
49
  def make_team_objects
48
- @data['teams'].map{|team| Team.new(team, self)}
50
+ @data['teams'].map{|team| ESPNNBAFantasy::Team.new(team, self)}
49
51
  end
50
52
 
51
53
  def make_stat_data
@@ -69,7 +71,7 @@ module ESPNNBAFantasy
69
71
  end
70
72
 
71
73
  def std_dev(mean, values)
72
- sum = values.inject(0){|accum, i| accum +(i-mean)**2 }
74
+ sum = values.inject(0){|accum, i| accum + (i-mean)**2 }
73
75
  variance = sum/(values.length - 1).to_f
74
76
  Math.sqrt(variance)
75
77
  end
@@ -6,16 +6,21 @@ module ESPNNBAFantasy
6
6
 
7
7
  include CalculateStats
8
8
 
9
- attr_reader :name, :player_id, :position, :stats, :team
9
+ attr_reader :first_name, :last_name, :full_name,
10
+ :player_id, :position, :stats, :team,
11
+ :slug
10
12
 
11
13
  #basic initialization with attributes
12
14
 
13
15
  def initialize(player, team)
14
- @name = player['fullName']
16
+ @first_name = player['firstName']
17
+ @last_name = player['lastName']
18
+ @full_name = player['fullName']
15
19
  @player_id = player['id']
16
- @position = POSITION_MAP[player['defaultPositionId']-1]
20
+ @position = ESPNNBAFantasy::POSITION_MAP[player['defaultPositionId']-1]
17
21
  @stats = stat_card_maker(player)
18
22
  @team = team
23
+ @slug = @full_name.scan(/\w+|\s/).join.downcase.split(' ').join('-')
19
24
  end
20
25
 
21
26
  def to_s
@@ -26,7 +31,7 @@ module ESPNNBAFantasy
26
31
 
27
32
  def stat_card_maker(player)
28
33
  avgstats = player['stats'].first['averageStats']
29
- statcard = avgstats ? avgstats.transform_keys!{ |k| STATS_MAP[k] }.slice(*STATS) : EMPTY_STATS
34
+ statcard = avgstats ? avgstats.transform_keys!{ |k| ESPNNBAFantasy::STATS_MAP[k] }.slice(*ESPNNBAFantasy::STATS) : ESPNNBAFantasy::EMPTY_STATS
30
35
  calculate_stats(statcard)
31
36
  end
32
37
 
@@ -3,7 +3,7 @@
3
3
  module PlayerFinder
4
4
 
5
5
  def find_players(arr, matcher)
6
- arr.select{|p| p.name.downcase == matcher.downcase}.first
6
+ arr.select{|p| p.full_name.downcase == matcher.downcase}.first
7
7
  end
8
8
 
9
9
  end
@@ -38,15 +38,15 @@ module ESPNNBAFantasy
38
38
  own_players = to_trade.map{|player| find_players(players, player)}
39
39
  other_players = to_receive.map{|player| find_players(other_team.players, player)}
40
40
  return "This trade included players not one of the specified teams" if (own_players.include?(nil)|| other_players.include?(nil))
41
- {'Trading:' => own_players.map{|p| p.name},
42
- 'Receiving:' => other_players.map{|p| p.name}}.merge(new_team_stats(own_players, other_players))
41
+ {'Trading:' => own_players.map{|p| p.full_name},
42
+ 'Receiving:' => other_players.map{|p| p.full_name}}.merge(new_team_stats(own_players, other_players))
43
43
 
44
44
  end
45
45
 
46
46
  private
47
47
 
48
48
  def roster_names
49
- players.map(&:name)
49
+ players.map(&:full_name)
50
50
  end
51
51
 
52
52
  def stat_differences(old, new)
@@ -62,7 +62,7 @@ module ESPNNBAFantasy
62
62
  end
63
63
 
64
64
  def roster_maker(obj)
65
- obj['roster']['entries'].map {|e| Player.new(e['playerPoolEntry']['player'], self)}
65
+ obj['roster']['entries'].map {|e| ESPNNBAFantasy::Player.new(e['playerPoolEntry']['player'], self)}
66
66
  end
67
67
 
68
68
  def make_team_stats(ros)
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: espn_nba_fantasy
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4.1
4
+ version: 0.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Usborn Ocampo
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-06-26 00:00:00.000000000 Z
11
+ date: 2024-07-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rspec