class Admin::Legacy::Discipline::ConfigsController < Admin::Legacy::Discipline::Controller
  def show
    render_success :ok, json: config_props
  end

  def update
    if config.update(config_params)
      render_success :ok, json: config_props
    else
      render_error :unprocessable_entity, errors: config
    end
  end

  private
    def config
      @config ||= current_school.find_or_build_discipline_config
    end

    def config_params
      params.permit(
        :view_logs,
        :notify_hr_teacher,
        :pending_detentions,
        :points_to_trigger,
        :reset_points_new_term,
        :notify_manager
      )
    end

    def config_props
      {
        view_logs: config.view_logs,
        notify_hr_teacher: config.notify_hr_teacher,
        pending_detentions: config.pending_detentions,
        points_to_trigger: config.points_to_trigger,
        reset_points_new_term: config.nothing? ? nil : config.reset_points_new_term,
        notify_manager: config.notify_manager
      }
    end
end
