From 98ef2085643559047b33ef9c39f258cda89896c0 Mon Sep 17 00:00:00 2001 From: echarp Date: Fri, 5 Sep 2014 22:15:38 +0200 Subject: [PATCH] Nettoyage --- app/controllers/events_controller.rb | 2 +- app/models/event.rb | 10 ++++------ app/views/events/index.html.haml | 4 ++-- config/locales/fr.yml | 8 -------- test/models/event_test.rb | 9 +++++---- 5 files changed, 12 insertions(+), 21 deletions(-) diff --git a/app/controllers/events_controller.rb b/app/controllers/events_controller.rb index 9b96eeba..1da1f671 100644 --- a/app/controllers/events_controller.rb +++ b/app/controllers/events_controller.rb @@ -11,7 +11,7 @@ class EventsController < ApplicationController def index respond_to do |format| format.html { render layout: 'iframe' if params[:iframe] } - format.rss { @events = @events.future_in params[:daylimit] } + format.rss { @events = @events.future.in params[:daylimit] } format.ics { @events = @events.last_year.order :id } format.xml { @events = @events.includes(:related_region).order :id } end diff --git a/app/models/event.rb b/app/models/event.rb index b7c91a45..b24ad50c 100644 --- a/app/models/event.rb +++ b/app/models/event.rb @@ -22,21 +22,19 @@ class Event < ActiveRecord::Base scope :moderated, -> { where moderated: true } scope :unmoderated, -> { where moderated: false } - scope :last_year, -> { where '? <= end_time', 360.days.ago } + scope :last_year, -> { where '? <= end_time', 1.year.ago } scope :past, -> { where 'start_time <= ?', DateTime.now } scope :future, -> { where '? <= end_time', DateTime.now } - scope :future_in, (lambda do |days = 30| - future.where('end_time <= ?', days.to_i.days.from_now).order :start_time - end) + scope :in, -> days { where 'end_time <= ?', (days || 30).to_i.days.from_now } scope :year, (lambda do |year| where '? <= end_time and start_time <= ?', Date.new(year, 1, 1).beginning_of_week, Date.new(year, 12, 31).end_of_week end) scope :month, (lambda do |start_date| - start_date ||= Date.today.beginning_of_month + start_date ||= Date.today where '? <= end_time and start_time <= ?', - start_date.beginning_of_week, + start_date.beginning_of_month.beginning_of_week, start_date.end_of_month.end_of_week end) scope :region, -> region { where 'region = ? or locality', region } diff --git a/app/views/events/index.html.haml b/app/views/events/index.html.haml index 270f1019..2cbb542b 100644 --- a/app/views/events/index.html.haml +++ b/app/views/events/index.html.haml @@ -12,7 +12,7 @@ - (1..12).each do |i| - params[:start_date] = "#{params[:year]}-#{i}-01" - = month_calendar events: @events, + = month_calendar day_names: 'date.day_names', events: @events, previous_link: nil, next_link: nil, title: ->(start_date) { raw link_to l(start_date, format: :month), root_url(start_date: start_date), class: 'month_selector' } do |date, events| @@ -28,7 +28,7 @@ - else -# One month calendar - @events = @events.month params[:start_date].try :to_date - = month_calendar events: @events, + = month_calendar day_names: 'date.day_names', events: @events, title: ->(start_date) { raw "#{I18n.t('date.month_names')[start_date.month]} #{link_to start_date.year, root_url(year: start_date.year)}" }, previous_link: ->(param, date_range) { link_to '<<', diff --git a/config/locales/fr.yml b/config/locales/fr.yml index a2defcb8..9911fd56 100644 --- a/config/locales/fr.yml +++ b/config/locales/fr.yml @@ -1,13 +1,5 @@ fr: date: - abbr_day_names: - - Dimanche - - Lundi - - Mardi - - Mercredi - - Jeudi - - Vendredi - - Samedi formats: long: "%A %d %B %Y" month: "%B %Y" diff --git a/test/models/event_test.rb b/test/models/event_test.rb index f5df7e8c..41e85d20 100644 --- a/test/models/event_test.rb +++ b/test/models/event_test.rb @@ -86,10 +86,11 @@ class EventTest < ActiveSupport::TestCase assert @event.moderated?, @event.errors.messages end - test 'named scope future_in' do - assert Event.respond_to? :future_in - assert_match(/<= end_time/, Event.future_in.where_values[0]) - assert_match(/end_time <=/, Event.future_in.where_values[1]) + test 'named scope future.in' do + assert Event.respond_to? :future + assert Event.respond_to? :in + assert_match(/<= end_time/, Event.future.in(nil).where_values[0]) + assert_match(/end_time <=/, Event.future.in(nil).where_values[1]) end test 'named scope year' do