2021-01-14 15:05:22 +00:00
|
|
|
class Platform::Api::V1::AccountsController < PlatformController
|
|
|
|
def create
|
|
|
|
@resource = Account.new(account_params)
|
|
|
|
@resource.save!
|
|
|
|
@platform_app.platform_app_permissibles.find_or_create_by(permissible: @resource)
|
|
|
|
end
|
|
|
|
|
2022-10-20 04:16:36 +00:00
|
|
|
def show; end
|
2021-01-14 15:05:22 +00:00
|
|
|
|
|
|
|
def update
|
|
|
|
@resource.update!(account_params)
|
|
|
|
end
|
|
|
|
|
|
|
|
def destroy
|
2021-09-02 12:59:45 +00:00
|
|
|
DeleteObjectJob.perform_later(@resource)
|
2021-01-14 15:05:22 +00:00
|
|
|
head :ok
|
|
|
|
end
|
|
|
|
|
|
|
|
private
|
|
|
|
|
|
|
|
def set_resource
|
|
|
|
@resource = Account.find(params[:id])
|
|
|
|
end
|
|
|
|
|
|
|
|
def account_params
|
2022-10-20 04:16:36 +00:00
|
|
|
if permitted_params[:enabled_features]
|
|
|
|
return permitted_params.except(:enabled_features).merge(selected_feature_flags: permitted_params[:enabled_features].map(&:to_sym))
|
|
|
|
end
|
|
|
|
|
|
|
|
permitted_params
|
|
|
|
end
|
|
|
|
|
|
|
|
def permitted_params
|
|
|
|
params.permit(:name, :locale, enabled_features: [], limits: {})
|
2021-01-14 15:05:22 +00:00
|
|
|
end
|
|
|
|
end
|