class Api::CoursesController < Api::ApiController
  # Method to get subject and its courses based on query params.
  def index
    query = params[:q]
    if params[:subject_id]
      subject = Subject.find(params[:subject_id])
      if params[:course_query].present?
        courses = Course.search(query: params[:course_query], without_tutor_existence: true, subject_id: params[:subject_id]).page(params[:page]).per(subject.courses.count).records
      else
        courses = subject.courses
      end
    else
      courses = Course.all
    end
    courses = courses.where("courses.name like ?", "%#{query}%")

    respond_to do |format|
      format.json do
        render :json => courses.to_json(only: [:id, :name, :description])
      end
    end
  end

end
