Class: FiftyFifty
Defined Under Namespace
Classes: BadRequest
Instance Method Summary collapse
-
#campaigner_details(campaigner_id) ⇒ Object
Show details for a specific campaigner.
-
#campaigners ⇒ Object
List all campaigners currently running projects on 50/50.
- #get(url) ⇒ Object
-
#initialize(api_key) ⇒ FiftyFifty
constructor
A new instance of FiftyFifty.
-
#project_details(project_id) ⇒ Object
Show details for specific project.
-
#project_donations(project_id) ⇒ Object
List donations for a specific project.
-
#project_pledges(project_id) ⇒ Object
List of users who have pledged to take part in a specific project.
-
#projects ⇒ Object
Lists all current 50/50 projects.
-
#register_project_donation(project_id, amount) ⇒ Object
Notify us of a new donation, i.e.
- #statistics ⇒ Object
Constructor Details
#initialize(api_key) ⇒ FiftyFifty
Returns a new instance of FiftyFifty.
11 12 13 14 |
# File 'lib/fiftyfifty.rb', line 11 def initialize(api_key) @api_key = api_key self.class.base_uri "5050.gd/api/#{@api_key}" end |
Instance Method Details
#campaigner_details(campaigner_id) ⇒ Object
Show details for a specific campaigner.
54 55 56 |
# File 'lib/fiftyfifty.rb', line 54 def campaigner_details(campaigner_id) return get("/campaigners/#{campaigner_id}") end |
#campaigners ⇒ Object
List all campaigners currently running projects on 50/50.
49 50 51 |
# File 'lib/fiftyfifty.rb', line 49 def campaigners return get("/campaigners/list") end |
#get(url) ⇒ Object
57 58 59 60 61 62 63 64 65 |
# File 'lib/fiftyfifty.rb', line 57 def get(url) response = Hashie::Mash.new(self.class.get(url)) if response.status == 400 raise BadRequest else return response.data end end |
#project_details(project_id) ⇒ Object
Show details for specific project.
26 27 28 |
# File 'lib/fiftyfifty.rb', line 26 def project_details(project_id) return get("/projects/#{project_id}") end |
#project_donations(project_id) ⇒ Object
List donations for a specific project.
31 32 33 |
# File 'lib/fiftyfifty.rb', line 31 def project_donations(project_id) return get("/projects/#{project_id}/donations") end |
#project_pledges(project_id) ⇒ Object
List of users who have pledged to take part in a specific project.
43 44 45 |
# File 'lib/fiftyfifty.rb', line 43 def project_pledges(project_id) return get("/projects/#{project_id}/pledges") end |
#projects ⇒ Object
Lists all current 50/50 projects.
21 22 23 |
# File 'lib/fiftyfifty.rb', line 21 def projects return get("/projects/list") end |
#register_project_donation(project_id, amount) ⇒ Object
Notify us of a new donation, i.e. one that you may have received in person, or from another online payment mechanism. Your API key must be associated with the requested project for this to be successful.
38 39 40 |
# File 'lib/fiftyfifty.rb', line 38 def register_project_donation(project_id, amount) return get("/projects/#{project_id}/donations/notify/#{amount}") end |
#statistics ⇒ Object
16 17 18 |
# File 'lib/fiftyfifty.rb', line 16 def statistics return get("/statistics") end |