Class: GTranslator

Inherits:
Object
  • Object
show all
Defined in:
lib/gtranslate-two.rb

Constant Summary collapse

@@key =
nil

Class Method Summary collapse

Class Method Details

.detect_language(query) ⇒ Object



14
# File 'lib/gtranslate-two.rb', line 14

def self.detect_language(query); translate(query, 'en').source; end

.keyObject



11
# File 'lib/gtranslate-two.rb', line 11

def self.key; @@key; end

.key=(key) ⇒ Object



12
# File 'lib/gtranslate-two.rb', line 12

def self.key=(key); @@key = key; end

.translate(query, target, source = nil) ⇒ Object



16
17
18
19
20
21
22
23
24
25
# File 'lib/gtranslate-two.rb', line 16

def self.translate(query, target, source=nil)
  options = { :q => query, :target => target, :key => @@key } 
  options[:source] = source if source
  params = URI.escape(options.collect{|k,v| "#{k}=#{v}"}.join('&'))
  url = "https://www.googleapis.com/language/translate/v2?#{params}"
  result = JSON.parse(open(url).read)['data']['translations'].collect do |params|
    GTranslatorResult.new(query, target, params, source)
  end
  return result.size == 1 ? result.first : result
end