docbrown/app/controllers/api/v0/podcast_episodes_controller.rb
2018-02-28 16:11:08 -05:00

33 lines
966 B
Ruby

module Api
module V0
class PodcastEpisodesController < ApiController
# before_action :set_cache_control_headers, only: [:index, :show]
caches_action :index,
:cache_path => Proc.new { |c| c.params.permit! },
:expires_in => 10.minutes
respond_to :json
caches_action :show,
:cache_path => Proc.new { |c| c.params.permit! },
:expires_in => 10.minutes
respond_to :json
before_action :cors_preflight_check
after_action :cors_set_access_control_headers
def index
@page = params[:page]
if params[:username]
@podcast = Podcast.find_by_slug(params[:username]) || not_found
@podcast_episodes = @podcast.
podcast_episodes.order("published_at desc").
page(@page).
per(30)
else
@podcast_episodes = PodcastEpisode.order("published_at desc").page(@page).per(30)
end
end
end
end
end