diff --git a/app/assets/stylesheets/events.css b/app/assets/stylesheets/events.css index 34a180b3e..a4f212033 100644 --- a/app/assets/stylesheets/events.css +++ b/app/assets/stylesheets/events.css @@ -10,6 +10,10 @@ .event { margin: var(--inline-space); + + &.out-of-range { + display: none; + } } .events--none { diff --git a/app/controllers/events_controller.rb b/app/controllers/events_controller.rb index 7eaa09243..5ebc0243c 100644 --- a/app/controllers/events_controller.rb +++ b/app/controllers/events_controller.rb @@ -4,7 +4,7 @@ class EventsController < ApplicationController def index @events = Event. where(bubble: user_bubbles). - where(created_at: @activity_day.all_day) + where(created_at: @activity_day.yesterday.beginning_of_day..@activity_day.tomorrow.end_of_day) @next_day = @activity_day.yesterday.strftime("%Y-%m-%d") end diff --git a/app/javascript/controllers/timeline_controller.js b/app/javascript/controllers/timeline_controller.js index 370239176..a9eb906b5 100644 --- a/app/javascript/controllers/timeline_controller.js +++ b/app/javascript/controllers/timeline_controller.js @@ -4,6 +4,7 @@ const MAX_ROWS = 25 export default class extends Controller { static targets = [ "cell", "item" ] + static values = { date: String } cellTargetConnected(target) { const dt = new Date(target.dataset.datetime) @@ -12,6 +13,14 @@ export default class extends Controller { itemTargetConnected(target) { const dt = new Date(target.dataset.datetime) + target.classList.toggle("out-of-range", !this.#dateIsToday(dt)) target.style.gridRowStart = MAX_ROWS - dt.getHours() } + + #dateIsToday(dt) { + const date = new Date(this.dateValue) + return dt.getYear() == date.getYear() && + dt.getMonth() == date.getMonth() && + dt.getDay() == date.getDay() + } } diff --git a/app/views/events/_day.html.erb b/app/views/events/_day.html.erb index 0eb310096..fa289203e 100644 --- a/app/views/events/_day.html.erb +++ b/app/views/events/_day.html.erb @@ -1,4 +1,4 @@ -