This repository has been archived on 2024-06-09. You can view files and clone it, but cannot push or open issues/pull-requests.
2021-10-14 20:44:59 +02:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
|
|
|
class Api::V1::Admin::RetentionController < Api::BaseController
|
2022-07-05 02:41:40 +02:00
|
|
|
include Authorization
|
|
|
|
|
2022-01-17 09:41:33 +01:00
|
|
|
before_action -> { authorize_if_got_token! :'admin:read' }
|
2021-10-14 20:44:59 +02:00
|
|
|
before_action :set_cohorts
|
|
|
|
|
2022-07-05 02:41:40 +02:00
|
|
|
after_action :verify_authorized
|
|
|
|
|
2021-10-14 20:44:59 +02:00
|
|
|
def create
|
2022-07-05 02:41:40 +02:00
|
|
|
authorize :dashboard, :index?
|
2021-10-14 20:44:59 +02:00
|
|
|
render json: @cohorts, each_serializer: REST::Admin::CohortSerializer
|
|
|
|
end
|
|
|
|
|
|
|
|
private
|
|
|
|
|
|
|
|
def set_cohorts
|
|
|
|
@cohorts = Admin::Metrics::Retention.new(
|
|
|
|
params[:start_at],
|
|
|
|
params[:end_at],
|
|
|
|
params[:frequency]
|
|
|
|
).cohorts
|
|
|
|
end
|
|
|
|
end
|