Josh Sharpe
2008-Dec-10 04:15 UTC
[Facebooker-talk] events.members & attendence.user methods
I had some thoughts about creating a Events#members method. It would be
pretty straight forward if a session attribute existed on the event, but
thats'' not the case. I''m not sure that this is the best way
to hack this
out, but here goes:
So the diff on Session is to merge the session object onto the new event in
Session#events
def events(options = {})
@events ||= post(''facebook.events.get'', options) do
|response|
response.map do |hash|
Event.from_hash(hash.merge(:session => self))
end
end
end
Then the Events#members method is pretty straight forward:
def members
@members ||= @session.event_members(@eid)
end
This works...can do stuff like:
facebooker_user.events.first.members
The only problem is that it slams that session instance on every Event. Is
that necessarily a bad thing?
Anyways, Attendence#user works basically the same way:
class Session
def event_members(eid)
@members ||= post(''facebook.events.getMembers'', :eid
=> eid) do
|response|
response.map do |attendee_hash|
Event::Attendance.from_hash(attendee_hash.merge(:session => self))
end
end
end
end
class Attendence
def user
@user ||= User.new(uid, @session)
end
end
Is anyone doing this similarly, differently?
Thanks.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
<http://rubyforge.org/pipermail/facebooker-talk/attachments/20081209/cceceaac/attachment.html>