class Admin::Communication::Smtp::ConfigsController < Admin::Communication::Controller
  def show
    render_success :ok, json: config_props
  end

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

  private
    def config
      current_school.communication_smtp_config || current_school.build_communication_smtp_config
    end

    def config_params
      params.permit(
        :username,
        :password,
        :server_address,
        :status,
        :accepted,
        :service,
        :port,
        :security_certificate,
        :email
      )
    end

    def config_props
      {
        service: config.service,
        server_address: config.server_address,
        port: config.port,
        security_certificate: config.security_certificate,
        username: config.username,
        status: config.status,
        accepted: config.accepted,
        email: config.email
      }
    end
end
