Sha256: 3b148fc6ef1151ba5ebc4c14eb98a91e1d5f564e1372eca80e7b0333bb86c275

Contents?: true

Size: 746 Bytes

Versions: 13

Compression:

Stored size: 746 Bytes

Contents

module Lingohub
  module Models
    require 'lingohub/models/project'

    class Projects

      PROJECT_URL = '/projects'

      def initialize(client)
        @client   = client
      end

      def create(title)
        @client.post(PROJECT_URL, :project => {:title => title})
      end

      def all
        return @projects if defined? @projects
        @projects = {}
        response = JSON.parse @client.get(PROJECT_URL).to_s
        response["members"].each do |member|
          project = Lingohub::Models::Project.new(@client, member["links"][0]["href"])
          @projects[member["title"]] = project
        end
        @projects
      end

      def [](project_title)
        return all[project_title]
      end

    end
  end
end

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
lingohub-0.3.1 lib/lingohub/models/projects.rb
lingohub-0.3.0 lib/lingohub/models/projects.rb
lingohub-0.2.1 lib/lingohub/models/projects.rb
lingohub-0.2.0 lib/lingohub/models/projects.rb
lingohub-0.1.1 lib/lingohub/models/projects.rb
lingohub-0.1.0 lib/lingohub/models/projects.rb
lingohub-0.0.10 lib/lingohub/models/projects.rb
lingohub-0.0.9 lib/lingohub/models/projects.rb
lingohub-0.0.8 lib/lingohub/models/projects.rb
lingohub-0.0.7 lib/lingohub/models/projects.rb
lingohub-0.0.6 lib/lingohub/models/projects.rb
lingohub-0.0.5 lib/lingohub/models/projects.rb
lingohub-0.0.4 lib/lingohub/models/projects.rb