# frozen_string_literal: true

module ::DiscourseRewind
  class RewindsController < ::ApplicationController
    requires_plugin PLUGIN_NAME

    requires_login

    def show
      DiscourseRewind::Rewind::Fetch.call(service_params) do
        on_model_not_found(:year) { raise Discourse::NotFound }
        on_model_not_found(:user) { raise Discourse::NotFound }
        on_success do |reports:|
          @reports = reports
          render json: MultiJson.dump(reports), status: 200
        end
      end
    end
  end
end
