6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
# File 'lib/foursquare_document.rb', line 6
def foursquare_id(symbol,index=false)
field symbol, :type => Moped::BSON::ObjectId
if index
index({symbol => 1})
end
attr_accessible symbol, :foursquare_cache
accepts_nested_attributes_for :foursquare_cache
class_eval " define_callbacks :add_foursquare_info\n\n set_callback(:save,:after) do |doc|\n if doc.\#{symbol}_changed? &&\n (doc.foursquare_cache.blank? || !doc.foursquare_cache.changed?)\n doc.add_foursquare_info\n end\n end\n\n\n def add_foursquare_info\n run_callbacks :add_foursquare_info do\n client = FoursquareDocument::Config::get_client\n venue_info = client.venue(self.\#{symbol})\n self.foursquare_cache = FoursquareCache.new(venue_info)\n self.foursquare_cache.save! \n end\n end\n RUBY\nend\n", __FILE__, __LINE__+1
|