gmaps4rails 0.7.7 → 0.7.8
Sign up to get free protection for your applications and to get access to all the features.
- 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
|