diff --git a/app/controllers/events_controller.rb b/app/controllers/events_controller.rb new file mode 100644 index 000000000..30c5b00ba --- /dev/null +++ b/app/controllers/events_controller.rb @@ -0,0 +1,7 @@ +class EventsController < ApplicationController + respond_to :json + + def show + render json: Event.all + end +end diff --git a/app/models/event.rb b/app/models/event.rb index 30d57d85e..e5dde9abf 100644 --- a/app/models/event.rb +++ b/app/models/event.rb @@ -9,4 +9,25 @@ def finish_before_start errors.add(:finish, 'time must be after start time') end end + + def description=(value) + if value.blank? + value = nil + end + super value + end + + def location=(value) + if value.blank? + value = nil + end + super value + end + + def category=(value) + if value.blank? + value = nil + end + super value + end end diff --git a/config/routes.rb b/config/routes.rb index 66b01e931..d249407b0 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -40,6 +40,8 @@ patch :boarded_bus, on: :collection end + resource :events, only: :show, constraints: ->(req) { req.format == :json } + namespace :manage do authenticate :user, ->(u) { u.director? } do root to: "dashboard#index" diff --git a/test/controllers/events_controller_test.rb b/test/controllers/events_controller_test.rb new file mode 100644 index 000000000..6b003df20 --- /dev/null +++ b/test/controllers/events_controller_test.rb @@ -0,0 +1,7 @@ +require 'test_helper' + +class EventsControllerTest < ActionDispatch::IntegrationTest + # test "the truth" do + # assert true + # end +end