instante-social/app/controllers/public_timelines_controller.rb

32 lines
799 B
Ruby
Raw Normal View History

2019-03-12 16:34:00 +00:00
# frozen_string_literal: true
class PublicTimelinesController < ApplicationController
layout 'public'
2019-07-30 09:10:46 +00:00
before_action :authenticate_user!, if: :whitelist_mode?
before_action :require_enabled!
2019-03-12 16:34:00 +00:00
before_action :set_body_classes
before_action :set_instance_presenter
def show
@initial_state_json = ActiveModelSerializers::SerializableResource.new(
InitialStatePresenter.new(settings: { known_fediverse: Setting.show_known_fediverse_at_about_page }, token: current_session&.token),
serializer: InitialStateSerializer
).to_json
2019-03-12 16:34:00 +00:00
end
private
2019-07-30 09:10:46 +00:00
def require_enabled!
not_found unless Setting.timeline_preview
2019-03-12 16:34:00 +00:00
end
def set_body_classes
@body_classes = 'with-modals'
end
def set_instance_presenter
@instance_presenter = InstancePresenter.new
end
end