Sha256: 3a7ce63edd5becb3ad727a8a75ff9caf2ea1f0518572ce212e2c004a9d0d7c24

Contents?: true

Size: 977 Bytes

Versions: 8

Compression:

Stored size: 977 Bytes

Contents

module MoodleRb
  class Client
    include HTTParty
    include Utility

    attr_reader :token, :url, :query_options

    def initialize(token, url, query_options)
      @token = token
      @url = url
      @query_options = query_options
      self.class.base_uri url
    end

    def site_info
      response = self.class.get(
        '/webservice/rest/server.php',
        {
          :query => query_hash('core_webservice_get_site_info', token)
        }.merge(query_options)
      )
      check_for_errors(response)
      response.parsed_response
    end

    def courses
      MoodleRb::Courses.new(token, url, query_options)
    end

    def categories
      MoodleRb::Categories.new(token, url, query_options)
    end

    def users
      MoodleRb::Users.new(token, url, query_options)
    end

    def enrolments
      MoodleRb::Enrolments.new(token, url, query_options)
    end

    def grades
      MoodleRb::Grades.new(token, url, query_options)
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
moodle_rb-2.2.0 lib/moodle_rb/client.rb
moodle_rb-2.1.5 lib/moodle_rb/client.rb
moodle_rb-2.1.0 lib/moodle_rb/client.rb
moodle_rb-2.0.0 lib/moodle_rb/client.rb
moodle_rb-1.2.0 lib/moodle_rb/client.rb
moodle_rb-1.1.3 lib/moodle_rb/client.rb
moodle_rb-1.0.5 lib/moodle_rb/client.rb
moodle_rb-1.0.4 lib/moodle_rb/client.rb