gemish 0.0.1 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. data/lib/gemish.rb +38 -5
  2. metadata +12 -2
  3. data/lib/gemish/coder.rb +0 -15
@@ -1,8 +1,41 @@
1
- class Gemlike
2
- def self.wazzup(language = :ruby)
3
- author = Coder.new(language)
4
- author.wazzup
1
+ require 'rubygems'
2
+ require 'json'
3
+ require 'net/http'
4
+
5
+ module Gemish
6
+ def geocoder_parse_results(url)
7
+ base_url = "http://maps.googleapis.com/maps/api/geocode/json"
8
+ response = Net::HTTP.get_response(URI.parse(base_url+url))
9
+ json_result = JSON.parse(response.body)
10
+ json_result.fetch("results")[0]
11
+ end
12
+
13
+ def geocode(place, sensor = false)
14
+ results = geocoder_parse_results("?address=#{URI.encode(place)}&sensor=#{sensor}")
15
+
16
+ location = results.fetch("geometry").fetch("location")
17
+ lat = location.fetch("lat") # print lang sa ta
18
+ lng = location.fetch("lng") # print lang sa ta
19
+ coordinate = [lat, lng]
20
+ rescue
21
+ nil
22
+ end
23
+
24
+ def reverse_geocode(coordinates, sensor = false)
25
+ lat, lng = coordinates
26
+
27
+ results = geocoder_parse_results("?latlng=#{lat},#{lng}&sensor=#{sensor}")
28
+ address = results.fetch("formatted_address") # print lang sa ta
29
+ rescue
30
+ nil
5
31
  end
6
32
  end
7
33
 
8
- require 'gemish/coder'
34
+
35
+ class ActiveRecord::Base
36
+
37
+ def self.geocodable
38
+ self.send(:include, Gemish)
39
+ end
40
+
41
+ end
metadata CHANGED
@@ -1,8 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gemish
3
3
  version: !ruby/object:Gem::Version
4
+ hash: 25
4
5
  prerelease:
5
- version: 0.0.1
6
+ segments:
7
+ - 0
8
+ - 0
9
+ - 3
10
+ version: 0.0.3
6
11
  platform: ruby
7
12
  authors:
8
13
  - stefany
@@ -24,7 +29,6 @@ extra_rdoc_files: []
24
29
 
25
30
  files:
26
31
  - lib/gemish.rb
27
- - lib/gemish/coder.rb
28
32
  has_rdoc: true
29
33
  homepage: http://rubygems.org/gems/gemish
30
34
  licenses: []
@@ -39,12 +43,18 @@ required_ruby_version: !ruby/object:Gem::Requirement
39
43
  requirements:
40
44
  - - ">="
41
45
  - !ruby/object:Gem::Version
46
+ hash: 3
47
+ segments:
48
+ - 0
42
49
  version: "0"
43
50
  required_rubygems_version: !ruby/object:Gem::Requirement
44
51
  none: false
45
52
  requirements:
46
53
  - - ">="
47
54
  - !ruby/object:Gem::Version
55
+ hash: 3
56
+ segments:
57
+ - 0
48
58
  version: "0"
49
59
  requirements: []
50
60
 
@@ -1,15 +0,0 @@
1
- class Gemlike::Coder
2
- def initialize(language)
3
- @language = language
4
- end
5
-
6
- def wazzup
7
- case @language
8
- when :java
9
- "hola Java guys!"
10
- else
11
- "hello Ruby devs!"
12
- end
13
- end
14
- end
15
-