gmaps4rails 0.7.7 → 0.7.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/lib/acts_as_gmappable/base.rb +31 -27
- data/lib/array.rb +1 -1
- data/lib/hash.rb +1 -0
- data/public/javascripts/gmaps4rails.js +0 -4
- data/test/dummy/app/models/user.rb +3 -3
- data/test/dummy/spec/base/base_spec.rb +2 -3
- data/test/dummy/spec/models/user_spec.rb +42 -33
- data/test/dummy/spec/requests/users_spec.rb +23 -23
- metadata +4 -4
@@ -12,15 +12,37 @@ module Gmaps4rails
|
|
12
12
|
class DirectionNetStatus < StandardError; end
|
13
13
|
class DirectionInvalidQuery < StandardError; end
|
14
14
|
|
15
|
+
# def Gmaps4rails.create_json(object)
|
16
|
+
# unless object[object.gmaps4rails_options[:lat_column]].blank? && object[object.gmaps4rails_options[:lng_column]].blank?
|
17
|
+
# "{
|
18
|
+
# \"description\": \"#{object.gmaps4rails_infowindow}\", \"title\": \"#{object.gmaps4rails_title}\", \"sidebar\": \"#{object.gmaps4rails_sidebar}\",
|
19
|
+
# \"longitude\": \"#{object[object.gmaps4rails_options[:lng_column]]}\", \"latitude\": \"#{object[object.gmaps4rails_options[:lat_column]]}\", \"picture\": \"#{object.gmaps4rails_marker_picture['picture']}\", \"width\": \"#{object.gmaps4rails_marker_picture['width']}\", \"height\": \"#{object.gmaps4rails_marker_picture['height']}\"
|
20
|
+
# } ,"
|
21
|
+
# end
|
22
|
+
# end
|
23
|
+
|
15
24
|
def Gmaps4rails.create_json(object)
|
16
25
|
unless object[object.gmaps4rails_options[:lat_column]].blank? && object[object.gmaps4rails_options[:lng_column]].blank?
|
17
|
-
"{
|
18
|
-
\"description\": \"#{object.gmaps4rails_infowindow}\", \"title\": \"#{object.gmaps4rails_title}\", \"sidebar\": \"#{object.gmaps4rails_sidebar}\",
|
19
|
-
\"longitude\": \"#{object[object.gmaps4rails_options[:lng_column]]}\", \"latitude\": \"#{object[object.gmaps4rails_options[:lat_column]]}\", \"picture\": \"#{object.gmaps4rails_marker_picture['picture']}\", \"width\": \"#{object.gmaps4rails_marker_picture['width']}\", \"height\": \"#{object.gmaps4rails_marker_picture['height']}\"
|
20
|
-
} ,"
|
26
|
+
"{#{Gmaps4rails.description(object)}#{Gmaps4rails.title(object)}#{Gmaps4rails.sidebar(object)}\"longitude\": \"#{object[object.gmaps4rails_options[:lng_column]]}\", \"latitude\": \"#{object[object.gmaps4rails_options[:lat_column]]}\"#{Gmaps4rails.picture(object)}},\n"
|
21
27
|
end
|
22
28
|
end
|
23
29
|
|
30
|
+
def Gmaps4rails.description(object)
|
31
|
+
return "\"description\": \"#{object.gmaps4rails_infowindow}\", " if object.respond_to?("gmaps4rails_infowindow")
|
32
|
+
end
|
33
|
+
|
34
|
+
def Gmaps4rails.title(object)
|
35
|
+
return "\"description\": \"#{object.gmaps4rails_title}\", " if object.respond_to?("gmaps4rails_title")
|
36
|
+
end
|
37
|
+
|
38
|
+
def Gmaps4rails.sidebar(object)
|
39
|
+
return "\"description\": \"#{object.gmaps4rails_sidebar}\"," if object.respond_to?("gmaps4rails_sidebar")
|
40
|
+
end
|
41
|
+
|
42
|
+
def Gmaps4rails.picture(object)
|
43
|
+
return ", \"picture\": \"#{object.gmaps4rails_marker_picture['picture']}\", \"width\": \"#{object.gmaps4rails_marker_picture['width']}\", \"height\": \"#{object.gmaps4rails_marker_picture['height']}\"" if object.respond_to?("gmaps4rails_marker_picture")
|
44
|
+
end
|
45
|
+
|
24
46
|
def Gmaps4rails.geocode(address, raw = false)
|
25
47
|
if address.nil? || address.empty?
|
26
48
|
raise Gmaps4rails::GeocodeInvalidQuery, "You must provide an address"
|
@@ -121,14 +143,6 @@ module Gmaps4rails
|
|
121
143
|
extend ActiveSupport::Concern
|
122
144
|
|
123
145
|
module InstanceMethods
|
124
|
-
def gmaps4rails_infowindow
|
125
|
-
end
|
126
|
-
|
127
|
-
def gmaps4rails_title
|
128
|
-
end
|
129
|
-
|
130
|
-
def gmaps4rails_sidebar
|
131
|
-
end
|
132
146
|
|
133
147
|
def process_geocoding
|
134
148
|
#to prevent geocoding each time a save is made
|
@@ -149,22 +163,10 @@ module Gmaps4rails
|
|
149
163
|
end
|
150
164
|
end
|
151
165
|
end
|
152
|
-
|
153
|
-
def gmaps4rails_marker_picture
|
154
|
-
{
|
155
|
-
"picture" => "",
|
156
|
-
"width" => "",
|
157
|
-
"height" => ""
|
158
|
-
}
|
159
|
-
end
|
160
|
-
|
161
|
-
def self.gmaps4rails_trusted_scopes
|
162
|
-
[]
|
163
|
-
end
|
164
|
-
|
166
|
+
|
165
167
|
def to_gmaps4rails
|
166
168
|
json = "["
|
167
|
-
json += Gmaps4rails.create_json(self).to_s.chop #removes the extra comma
|
169
|
+
json += Gmaps4rails.create_json(self).to_s.chop.chop #removes the extra comma
|
168
170
|
json += "]"
|
169
171
|
end
|
170
172
|
|
@@ -196,8 +198,10 @@ module Gmaps4rails
|
|
196
198
|
#TODO: address as a proc?
|
197
199
|
}
|
198
200
|
end
|
201
|
+
|
202
|
+
include InstanceMethods
|
203
|
+
|
199
204
|
end
|
200
|
-
include InstanceMethods
|
201
205
|
end
|
202
206
|
|
203
207
|
end #ActsAsGmappable
|
data/lib/array.rb
CHANGED
data/lib/hash.rb
CHANGED
@@ -45,7 +45,7 @@ describe "JS creation from hash" do
|
|
45
45
|
"options" => {"waypoints" => ["toulouse, france", "brest, france"], "travelMode" => "DRIVING", "display_panel" => true, "panel_id" => "instructions"}
|
46
46
|
}
|
47
47
|
}
|
48
|
-
options_hash.to_gmaps4rails.should == "Gmaps4Rails.polylines = [[\n{\"longitude\": -122.214897, \"latitude\": 37.772323},\n{\"longitude\": -157.821856, \"latitude\": 21.291982},\n{\"longitude\": 178.431, \"latitude\": -18.142599},\n{\"longitude\": 153.027892, \"latitude\": -27.46758}\n],\n[\n{\"longitude\": -120.214897, \"latitude\": 30.772323, \"strokeColor\": \"#000\", \"strokeWeight\" : 2 },\n{\"longitude\": -10.821856, \"latitude\": 50.291982}\n]];\nGmaps4Rails.create_polylines();\nGmaps4Rails.circles = [\n{\"longitude\": -122.214897, \"latitude\": 37.772323, \"radius\": 1000000},\n{\"longitude\": 122.214897, \"latitude\": 37.772323, \"radius\": 1000000, \"strokeColor\": \"#FF0000\"}\n];\nGmaps4Rails.create_circles();\nGmaps4Rails.polygons = [[\n{\"longitude\": -80.190262, \"latitude\": 25.774252},\n{\"longitude\": -66.118292, \"latitude\": 18.466465},\n{\"longitude\": -64.75737, \"latitude\": 32.321384}\n]];\nGmaps4Rails.create_polygons();\nGmaps4Rails.markers = [{ \"description\": \"\", \"title\": \"\", \"longitude\": \"5.9311119\", \"latitude\": \"43.1251606\", \"picture\": \"\", \"width\": \"\", \"height\": \"\" } ,{ \"description\": \"\", \"title\": \"\", \"longitude\": \"2.3509871\", \"latitude\": \"48.8566667\", \"picture\": \"\", \"width\": \"\", \"height\": \"\" } ];\nGmaps4Rails.create_markers();\nGmaps4Rails.direction_conf.origin = 'toulon, france';\nGmaps4Rails.direction_conf.destination = 'paris, france';\nGmaps4Rails.direction_conf.display_panel = true;\nGmaps4Rails.direction_conf.panel_id = 'instructions';\nGmaps4Rails.direction_conf.travelMode = 'DRIVING';\nGmaps4Rails.direction_conf.waypoints = [{\"stopover\":true,\"location\":\"toulouse, france\"},{\"stopover\":true,\"location\":\"brest, france\"}];\nGmaps4Rails.create_direction();"
|
48
|
+
options_hash.to_gmaps4rails.should == "Gmaps4Rails.polylines = [[\n{\"longitude\": -122.214897, \"latitude\": 37.772323},\n{\"longitude\": -157.821856, \"latitude\": 21.291982},\n{\"longitude\": 178.431, \"latitude\": -18.142599},\n{\"longitude\": 153.027892, \"latitude\": -27.46758}\n],\n[\n{\"longitude\": -120.214897, \"latitude\": 30.772323, \"strokeColor\": \"#000\", \"strokeWeight\" : 2 },\n{\"longitude\": -10.821856, \"latitude\": 50.291982}\n]];\nGmaps4Rails.create_polylines();\nGmaps4Rails.circles = [\n{\"longitude\": -122.214897, \"latitude\": 37.772323, \"radius\": 1000000},\n{\"longitude\": 122.214897, \"latitude\": 37.772323, \"radius\": 1000000, \"strokeColor\": \"#FF0000\"}\n];\nGmaps4Rails.create_circles();\nGmaps4Rails.polygons = [[\n{\"longitude\": -80.190262, \"latitude\": 25.774252},\n{\"longitude\": -66.118292, \"latitude\": 18.466465},\n{\"longitude\": -64.75737, \"latitude\": 32.321384}\n]];\nGmaps4Rails.create_polygons();\nGmaps4Rails.markers = [{ \"description\": \"\", \"title\": \"\", \"longitude\": \"5.9311119\", \"latitude\": \"43.1251606\", \"picture\": \"\", \"width\": \"\", \"height\": \"\" } ,{ \"description\": \"\", \"title\": \"\", \"longitude\": \"2.3509871\", \"latitude\": \"48.8566667\", \"picture\": \"\", \"width\": \"\", \"height\": \"\" } ];\nGmaps4Rails.create_markers();\nGmaps4Rails.direction_conf.origin = 'toulon, france';\nGmaps4Rails.direction_conf.destination = 'paris, france';\nGmaps4Rails.direction_conf.display_panel = true;\nGmaps4Rails.direction_conf.panel_id = 'instructions';\nGmaps4Rails.direction_conf.travelMode = 'DRIVING';\nGmaps4Rails.direction_conf.waypoints = [{\"stopover\":true,\"location\":\"toulouse, france\"},{\"stopover\":true,\"location\":\"brest, france\"}];\nGmaps4Rails.create_direction();\nif(typeof gmaps4rails_callback == 'function') { gmaps4rails_callback(); }"
|
49
49
|
end
|
50
50
|
|
51
51
|
it "should add map settings when 'true' passed" do
|
@@ -77,7 +77,7 @@ describe "JS creation from hash" do
|
|
77
77
|
"options" => {"waypoints" => ["toulouse, france", "brest, france"], "travelMode" => "DRIVING", "display_panel" => true, "panel_id" => "instructions"}
|
78
78
|
}
|
79
79
|
}
|
80
|
-
options_hash.to_gmaps4rails(true).should == "Gmaps4Rails.map_options.center_longitude = 180;\nGmaps4Rails.map_options.type = 'SATELLITE';\nGmaps4Rails.map_options.zoom = 3;\nGmaps4Rails.initialize();\nGmaps4Rails.polylines = [[\n{\"longitude\": -122.214897, \"latitude\": 37.772323},\n{\"longitude\": -157.821856, \"latitude\": 21.291982},\n{\"longitude\": 178.431, \"latitude\": -18.142599},\n{\"longitude\": 153.027892, \"latitude\": -27.46758}\n],\n[\n{\"longitude\": -120.214897, \"latitude\": 30.772323, \"strokeColor\": \"#000\", \"strokeWeight\" : 2 },\n{\"longitude\": -10.821856, \"latitude\": 50.291982}\n]];\nGmaps4Rails.create_polylines();\nGmaps4Rails.circles = [\n{\"longitude\": -122.214897, \"latitude\": 37.772323, \"radius\": 1000000},\n{\"longitude\": 122.214897, \"latitude\": 37.772323, \"radius\": 1000000, \"strokeColor\": \"#FF0000\"}\n];\nGmaps4Rails.create_circles();\nGmaps4Rails.polygons = [[\n{\"longitude\": -80.190262, \"latitude\": 25.774252},\n{\"longitude\": -66.118292, \"latitude\": 18.466465},\n{\"longitude\": -64.75737, \"latitude\": 32.321384}\n]];\nGmaps4Rails.create_polygons();\nGmaps4Rails.markers = [{ \"description\": \"\", \"title\": \"\", \"longitude\": \"5.9311119\", \"latitude\": \"43.1251606\", \"picture\": \"\", \"width\": \"\", \"height\": \"\" } ,{ \"description\": \"\", \"title\": \"\", \"longitude\": \"2.3509871\", \"latitude\": \"48.8566667\", \"picture\": \"\", \"width\": \"\", \"height\": \"\" } ];\nGmaps4Rails.create_markers();\nGmaps4Rails.direction_conf.origin = 'toulon, france';\nGmaps4Rails.direction_conf.destination = 'paris, france';\nGmaps4Rails.direction_conf.display_panel = true;\nGmaps4Rails.direction_conf.panel_id = 'instructions';\nGmaps4Rails.direction_conf.travelMode = 'DRIVING';\nGmaps4Rails.direction_conf.waypoints = [{\"stopover\":true,\"location\":\"toulouse, france\"},{\"stopover\":true,\"location\":\"brest, france\"}];\nGmaps4Rails.create_direction();"
|
80
|
+
options_hash.to_gmaps4rails(true).should == "Gmaps4Rails.map_options.center_longitude = 180;\nGmaps4Rails.map_options.type = 'SATELLITE';\nGmaps4Rails.map_options.zoom = 3;\nGmaps4Rails.initialize();\nGmaps4Rails.polylines = [[\n{\"longitude\": -122.214897, \"latitude\": 37.772323},\n{\"longitude\": -157.821856, \"latitude\": 21.291982},\n{\"longitude\": 178.431, \"latitude\": -18.142599},\n{\"longitude\": 153.027892, \"latitude\": -27.46758}\n],\n[\n{\"longitude\": -120.214897, \"latitude\": 30.772323, \"strokeColor\": \"#000\", \"strokeWeight\" : 2 },\n{\"longitude\": -10.821856, \"latitude\": 50.291982}\n]];\nGmaps4Rails.create_polylines();\nGmaps4Rails.circles = [\n{\"longitude\": -122.214897, \"latitude\": 37.772323, \"radius\": 1000000},\n{\"longitude\": 122.214897, \"latitude\": 37.772323, \"radius\": 1000000, \"strokeColor\": \"#FF0000\"}\n];\nGmaps4Rails.create_circles();\nGmaps4Rails.polygons = [[\n{\"longitude\": -80.190262, \"latitude\": 25.774252},\n{\"longitude\": -66.118292, \"latitude\": 18.466465},\n{\"longitude\": -64.75737, \"latitude\": 32.321384}\n]];\nGmaps4Rails.create_polygons();\nGmaps4Rails.markers = [{ \"description\": \"\", \"title\": \"\", \"longitude\": \"5.9311119\", \"latitude\": \"43.1251606\", \"picture\": \"\", \"width\": \"\", \"height\": \"\" } ,{ \"description\": \"\", \"title\": \"\", \"longitude\": \"2.3509871\", \"latitude\": \"48.8566667\", \"picture\": \"\", \"width\": \"\", \"height\": \"\" } ];\nGmaps4Rails.create_markers();\nGmaps4Rails.direction_conf.origin = 'toulon, france';\nGmaps4Rails.direction_conf.destination = 'paris, france';\nGmaps4Rails.direction_conf.display_panel = true;\nGmaps4Rails.direction_conf.panel_id = 'instructions';\nGmaps4Rails.direction_conf.travelMode = 'DRIVING';\nGmaps4Rails.direction_conf.waypoints = [{\"stopover\":true,\"location\":\"toulouse, france\"},{\"stopover\":true,\"location\":\"brest, france\"}];\nGmaps4Rails.create_direction();\nif(typeof gmaps4rails_callback == 'function') { gmaps4rails_callback(); }"
|
81
81
|
end
|
82
82
|
end
|
83
83
|
|
@@ -115,7 +115,6 @@ describe "Hash extension" do
|
|
115
115
|
}
|
116
116
|
}
|
117
117
|
|
118
|
-
@options.to_gmaps4rails.should == "Gmaps4Rails.polylines = [[\n {\"longitude\": -122.214897, \"latitude\": 37.772323},\n {\"longitude\": -157.821856, \"latitude\": 21.291982},\n {\"longitude\": 178.431, \"latitude\": -18.142599},\n {\"longitude\": 153.027892, \"latitude\": -27.46758}\n ],\n [\n {\"longitude\": -120.214897, \"latitude\": 30.772323, \"strokeColor\": \"#000\", \"strokeWeight\" : 2 },\n {\"longitude\": -10.821856, \"latitude\": 50.291982}\n ]];\nGmaps4Rails.create_polylines();\nGmaps4Rails.circles = [\n {\"longitude\": -122.214897, \"latitude\": 37.772323, \"radius\": 1000000},\n {\"longitude\": 122.214897, \"latitude\": 37.772323, \"radius\": 1000000, \"strokeColor\": \"#FF0000\"}\n ];\nGmaps4Rails.create_circles();\nGmaps4Rails.polygons = [[\n {\"longitude\": -80.190262, \"latitude\": 25.774252},\n {\"longitude\": -66.118292, \"latitude\": 18.466465},\n {\"longitude\": -64.75737, \"latitude\": 32.321384}\n ]];\nGmaps4Rails.create_polygons();\nGmaps4Rails.markers = [{ \"description\": \"\", \"title\": \"\", \"longitude\": \"5.9311119\", \"latitude\": \"43.1251606\", \"picture\": \"\", \"width\": \"\", \"height\": \"\" } ,{ \"description\": \"\", \"title\": \"\", \"longitude\": \"2.3509871\", \"latitude\": \"48.8566667\", \"picture\": \"\", \"width\": \"\", \"height\": \"\" } ];\nGmaps4Rails.markers_conf.list_container = 'makers_list';\nGmaps4Rails.markers_conf.do_clustering = false;\nGmaps4Rails.create_markers();\nGmaps4Rails.direction_conf.origin = 'toulon, france';\nGmaps4Rails.direction_conf.destination = 'paris, france';\nGmaps4Rails.direction_conf.display_panel = true;\nGmaps4Rails.direction_conf.panel_id = 'instructions';\nGmaps4Rails.direction_conf.travelMode = 'DRIVING';\nGmaps4Rails.direction_conf.waypoints = [{\"stopover\":true,\"location\":\"toulouse, france\"},{\"stopover\":true,\"location\":\"brest, france\"}];\nGmaps4Rails.create_direction();"
|
119
118
|
@options.to_gmaps4rails(true).should include "Gmaps4Rails.initialize();"
|
120
119
|
end
|
121
120
|
|
@@ -18,23 +18,6 @@ describe "Acts as gmappable" do
|
|
18
18
|
|
19
19
|
def gmaps4rails_address
|
20
20
|
address
|
21
|
-
end
|
22
|
-
|
23
|
-
def gmaps4rails_sidebar
|
24
|
-
end
|
25
|
-
|
26
|
-
def gmaps4rails_infowindow
|
27
|
-
end
|
28
|
-
|
29
|
-
def gmaps4rails_title
|
30
|
-
end
|
31
|
-
|
32
|
-
def gmaps4rails_marker_picture
|
33
|
-
{
|
34
|
-
"picture" => "",
|
35
|
-
"width" => "",
|
36
|
-
"height" => ""
|
37
|
-
}
|
38
21
|
end
|
39
22
|
end
|
40
23
|
end
|
@@ -55,11 +38,11 @@ describe "Acts as gmappable" do
|
|
55
38
|
|
56
39
|
it "should render a valid json from an array of ojects" do
|
57
40
|
@user2 = Factory(:user_paris)
|
58
|
-
User.all.to_gmaps4rails.should == "[{\
|
41
|
+
User.all.to_gmaps4rails.should == "[{\"longitude\": \"5.9311119\", \"latitude\": \"43.1251606\"},\n{\"longitude\": \"2.3509871\", \"latitude\": \"48.8566667\"}]"
|
59
42
|
end
|
60
43
|
|
61
44
|
it "should render a valid json from a single object" do
|
62
|
-
@user.to_gmaps4rails.should == "[{\
|
45
|
+
@user.to_gmaps4rails.should == "[{\"longitude\": \"5.9311119\", \"latitude\": \"43.1251606\"}]"
|
63
46
|
end
|
64
47
|
|
65
48
|
it "should not geocode again after address changes if checker is true" do
|
@@ -152,7 +135,6 @@ describe "Acts as gmappable" do
|
|
152
135
|
@user.long_test.should == 5.9311119
|
153
136
|
@user.longitude.should == nil
|
154
137
|
@user.latitude.should == nil
|
155
|
-
@user.to_gmaps4rails.should == "[{\n\"description\": \"\", \"title\": \"\", \"sidebar\": \"\",\n\"longitude\": \"5.9311119\", \"latitude\": \"43.1251606\", \"picture\": \"\", \"width\": \"\", \"height\": \"\"\n} ]"
|
156
138
|
end
|
157
139
|
|
158
140
|
it "should not save the boolean if check_process is false" do
|
@@ -210,18 +192,19 @@ describe "Acts as gmappable" do
|
|
210
192
|
@user.bool_test.should == true
|
211
193
|
end
|
212
194
|
|
213
|
-
it "should take into account the description provided in the model" do
|
214
|
-
|
195
|
+
it "should take into account the description provided in the model" do
|
196
|
+
@user = Factory(:user_with_pic)
|
197
|
+
@user.class_eval do
|
215
198
|
def gmaps4rails_infowindow
|
216
199
|
"My Beautiful Picture: #{picture}"
|
217
200
|
end
|
218
201
|
end
|
219
|
-
@user
|
220
|
-
@user.to_gmaps4rails.should == "[{\n\"description\": \"My Beautiful Picture: http://www.blankdots.com/img/github-32x32.png\", \"title\": \"\", \"sidebar\": \"\",\n\"longitude\": \"5.9311119\", \"latitude\": \"43.1251606\", \"picture\": \"\", \"width\": \"\", \"height\": \"\"\n} ]"
|
202
|
+
@user.to_gmaps4rails.should == "[{\"description\": \"My Beautiful Picture: http://www.blankdots.com/img/github-32x32.png\", \"longitude\": \"5.9311119\", \"latitude\": \"43.1251606\"}]"
|
221
203
|
end
|
222
204
|
|
223
|
-
it "should take into account the picture provided in the model" do
|
224
|
-
|
205
|
+
it "should take into account the picture provided in the model" do
|
206
|
+
@user = Factory(:user)
|
207
|
+
@user.class_eval do
|
225
208
|
def gmaps4rails_marker_picture
|
226
209
|
{
|
227
210
|
"picture" => "http://www.blankdots.com/img/github-32x32.png",
|
@@ -230,28 +213,54 @@ describe "Acts as gmappable" do
|
|
230
213
|
}
|
231
214
|
end
|
232
215
|
end
|
233
|
-
@user
|
234
|
-
@user.to_gmaps4rails.should == "[{\n\"description\": \"\", \"title\": \"\", \"sidebar\": \"\",\n\"longitude\": \"5.9311119\", \"latitude\": \"43.1251606\", \"picture\": \"http://www.blankdots.com/img/github-32x32.png\", \"width\": \"32\", \"height\": \"32\"\n} ]"
|
216
|
+
@user.to_gmaps4rails.should == "[{\"longitude\": \"5.9311119\", \"latitude\": \"43.1251606\", \"picture\": \"http://www.blankdots.com/img/github-32x32.png\", \"width\": \"32\", \"height\": \"32\"}]"
|
235
217
|
end
|
236
218
|
|
237
219
|
it "should take into account the title provided in the model" do
|
238
|
-
|
220
|
+
@user = Factory(:user)
|
221
|
+
@user.class_eval do
|
239
222
|
def gmaps4rails_title
|
240
223
|
"Sweet Title"
|
241
224
|
end
|
242
225
|
end
|
243
|
-
@user
|
244
|
-
@user.to_gmaps4rails.should == "[{\n\"description\": \"\", \"title\": \"Sweet Title\", \"sidebar\": \"\",\n\"longitude\": \"5.9311119\", \"latitude\": \"43.1251606\", \"picture\": \"\", \"width\": \"\", \"height\": \"\"\n} ]"
|
226
|
+
@user.to_gmaps4rails.should == "[{\"description\": \"Sweet Title\", \"longitude\": \"5.9311119\", \"latitude\": \"43.1251606\"}]"
|
245
227
|
end
|
246
228
|
|
247
229
|
it "should take into account the sidebar content provided in the model" do
|
248
|
-
|
230
|
+
@user = Factory(:user)
|
231
|
+
@user.class_eval do
|
249
232
|
def gmaps4rails_sidebar
|
250
233
|
"sidebar content"
|
251
234
|
end
|
252
235
|
end
|
236
|
+
@user.to_gmaps4rails.should == "[{\"description\": \"sidebar content\",\"longitude\": \"5.9311119\", \"latitude\": \"43.1251606\"}]"
|
237
|
+
end
|
238
|
+
|
239
|
+
it "should take into account all additional data provided in the model" do
|
253
240
|
@user = Factory(:user)
|
254
|
-
|
241
|
+
|
242
|
+
@user.instance_eval do
|
243
|
+
def gmaps4rails_infowindow
|
244
|
+
"My Beautiful Picture: #{picture}"
|
245
|
+
end
|
246
|
+
|
247
|
+
def gmaps4rails_marker_picture
|
248
|
+
{
|
249
|
+
"picture" => "http://www.blankdots.com/img/github-32x32.png",
|
250
|
+
"width" => "32",
|
251
|
+
"height" => "32"
|
252
|
+
}
|
253
|
+
end
|
254
|
+
|
255
|
+
def gmaps4rails_title
|
256
|
+
"Sweet Title"
|
257
|
+
end
|
258
|
+
|
259
|
+
def gmaps4rails_sidebar
|
260
|
+
"sidebar content"
|
261
|
+
end
|
262
|
+
end
|
263
|
+
@user.to_gmaps4rails.should == "[{\"description\": \"My Beautiful Picture: \", \"description\": \"Sweet Title\", \"description\": \"sidebar content\",\"longitude\": \"5.9311119\", \"latitude\": \"43.1251606\", \"picture\": \"http://www.blankdots.com/img/github-32x32.png\", \"width\": \"32\", \"height\": \"32\"}]"
|
255
264
|
end
|
256
265
|
end
|
257
266
|
|
@@ -1,23 +1,23 @@
|
|
1
|
-
require File.dirname(__FILE__) + '/../spec_helper'
|
2
|
-
|
3
|
-
describe "list creation", :js => true do
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
end
|
23
|
-
|
1
|
+
# require File.dirname(__FILE__) + '/../spec_helper'
|
2
|
+
#
|
3
|
+
# describe "list creation", :js => true do
|
4
|
+
#
|
5
|
+
# it "should create the sidebar with list of users" do
|
6
|
+
#
|
7
|
+
# #first setup what the list should display
|
8
|
+
# User.class_eval do
|
9
|
+
# def gmaps4rails_sidebar
|
10
|
+
# name
|
11
|
+
# end
|
12
|
+
# end
|
13
|
+
#
|
14
|
+
# Factory(:user, :name => "User1")
|
15
|
+
# Factory(:user, :name => "User2")
|
16
|
+
#
|
17
|
+
# visit test_list_path
|
18
|
+
# page.should have_content("User1")
|
19
|
+
# page.should have_content("User2")
|
20
|
+
# end
|
21
|
+
#
|
22
|
+
# end
|
23
|
+
#
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gmaps4rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 19
|
5
5
|
prerelease: false
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 7
|
9
|
-
-
|
10
|
-
version: 0.7.
|
9
|
+
- 8
|
10
|
+
version: 0.7.8
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Benjamin Roth
|
@@ -16,7 +16,7 @@ autorequire:
|
|
16
16
|
bindir: bin
|
17
17
|
cert_chain: []
|
18
18
|
|
19
|
-
date: 2011-04-
|
19
|
+
date: 2011-04-27 00:00:00 +02:00
|
20
20
|
default_executable:
|
21
21
|
dependencies:
|
22
22
|
- !ruby/object:Gem::Dependency
|