Dirette: nasconde partite programmate nel passato.

La pagina /live mostrava tutte le partite da inizio giornata; ora solo con orario futuro.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-06-02 19:10:07 +02:00
parent 964e3f472c
commit 2b8f842752
2 changed files with 18 additions and 2 deletions

View File

@@ -7,9 +7,9 @@ class Match < ApplicationRecord
validates :opponent_name, presence: true validates :opponent_name, presence: true
validates :sets_to_win, numericality: { greater_than: 0, less_than: 6 } validates :sets_to_win, numericality: { greater_than: 0, less_than: 6 }
# Partite con data/ora: da inizio giornata (Europe/Rome) in poi — allineato alla pagina Partite. # Partite ancora da giocare in diretta (orario nel futuro).
scope :scheduled_for_live, -> { scope :scheduled_for_live, -> {
where.not(scheduled_at: nil).where("scheduled_at >= ?", Time.zone.now.beginning_of_day) where.not(scheduled_at: nil).where("scheduled_at >= ?", Time.zone.now)
} }
scope :scheduled_upcoming, -> { scheduled_for_live } scope :scheduled_upcoming, -> { scheduled_for_live }

View File

@@ -0,0 +1,16 @@
require "rails_helper"
RSpec.describe Match, "scheduling scopes" do
let!(:club) do
Club.create!(name: "Sched Club", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff")
end
let!(:team) { club.teams.create!(name: "U16", sport: "volleyball") }
it "scheduled_for_live esclude partite già passate oggi" do
past = team.matches.create!(opponent_name: "Past", scheduled_at: 2.hours.ago, sets_to_win: 3)
future = team.matches.create!(opponent_name: "Future", scheduled_at: 2.hours.from_now, sets_to_win: 3)
expect(described_class.scheduled_for_live).to include(future)
expect(described_class.scheduled_for_live).not_to include(past)
end
end