Sha256: 67f9c3c7783ef0a7a1ed0c985edcd335ce87d5f22e4845269f4e8386d05f06db

Contents?: true

Size: 1.84 KB

Versions: 9

Compression:

Stored size: 1.84 KB

Contents

# frozen_string_literal: true

module AhlScraper
  module Games
    class PenaltyShot < Resource
      def number
        @number ||= @opts[:number]
      end

      def shooter
        @shooter ||= {
          id: @raw_data[:shooter][:id],
          first_name: @raw_data[:shooter][:firstName],
          last_name: @raw_data[:shooter][:lastName],
          jersey_number: @raw_data[:shooter][:jerseyNumber],
          position: @raw_data[:shooter][:position],
        }
      end

      def goalie
        @goalie ||= {
          id: @raw_data[:goalie][:id],
          first_name: @raw_data[:goalie][:firstName],
          last_name: @raw_data[:goalie][:lastName],
          jersey_number: @raw_data[:goalie][:jerseyNumber],
          position: @raw_data[:goalie][:position],
        }
      end

      def shooting_team
        @shooting_team ||= {
          id: @raw_data[:shooter_team][:id],
          full_name: @raw_data[:shooter_team][:name],
          city: @raw_data[:shooter_team][:city],
          name: @raw_data[:shooter_team][:nickname],
          abbreviation: @raw_data[:shooter_team][:abbreviation],
          logo_url: @raw_data[:shooter_team][:logo],
        }
      end

      def period
        @period ||= @raw_data[:period][:id].to_i
      end

      def time
        @time ||= @raw_data[:time]
      end

      def period_time_in_seconds
        @period_time_in_seconds ||= period_time.to_sec
      end

      def game_time_elapsed
        @game_time_elapsed ||= period_time.to_elapsed
      end

      def scored?
        @scored ||= @raw_data[:isGoal] == true
      end

      def scored_in_words
        @scored_in_words ||=
          if scored?
            "Scored"
          else
            "Missed"
          end
      end

      private

      def period_time
        @period_time ||= PeriodTimeHelper.new(time, period)
      end
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
ahl_scraper-0.4.1 lib/ahl_scraper/resources/games/penalty_shot.rb
ahl_scraper-0.4.0 lib/ahl_scraper/resources/games/penalty_shot.rb
ahl_scraper-0.3.8 lib/ahl_scraper/resources/games/penalty_shot.rb
ahl_scraper-0.3.7 lib/ahl_scraper/resources/games/penalty_shot.rb
ahl_scraper-0.3.6 lib/ahl_scraper/resources/games/penalty_shot.rb
ahl_scraper-0.3.5 lib/ahl_scraper/resources/games/penalty_shot.rb
ahl_scraper-0.3.4 lib/ahl_scraper/resources/games/penalty_shot.rb
ahl_scraper-0.3.3 lib/ahl_scraper/resources/games/penalty_shot.rb
ahl_scraper-0.3.2 lib/ahl_scraper/resources/games/penalty_shot.rb