porkchopclub/porkchop

View on GitHub
app/views/shared/_leaderboard.html.haml

Summary

Maintainability
Test Coverage
%table.leaderboard-list.alternating-rows
  %thead
    %tr
      %th
      %th Player
      %th Rating
      %th Today
      %th This Week
      %th L10
      %th Streak
  %tbody
    - Stats::Leaderboard.new.rows.each do |row|
      - player = row.player
      %tr.leaderboard-list-player
        %td(data-th-label="Rank")= row.rank
        %td(data-th-label="Name")= link_to player.name, player
        %td(data-th-label="Elo")= row.elo
        %td(data-th-label="Today")
          - change = row.elo_change_day
          - unless change == 0
            %span(class="elo-change-#{change < 0 ? 'negative' : 'positive'}")= change
        %td(data-th-label="This Week")
          - change = row.elo_change_week
          - unless change == 0
            %span(class="elo-change-#{change < 0 ? 'negative' : 'positive'}")= change
        %td(data-th-label="L10")= "#{row.last_10_wins}-#{row.last_10_losses}"
        %td(data-th-label="Streak")= "#{row.streak_type}#{row.streak_length}"