lib/flapjack/gateways/api/contact_methods.rb in flapjack-0.8.11 vs lib/flapjack/gateways/api/contact_methods.rb in flapjack-0.8.12

- old
+ new

@@ -92,48 +92,48 @@ end errors.empty? ? 204 : err(403, *errors) end # Returns all the contacts - # https://github.com/flpjck/flapjack/wiki/API#wiki-get_contacts + # https://github.com/flapjack/flapjack/wiki/API#wiki-get_contacts app.get '/contacts' do content_type :json "[" + Flapjack::Data::Contact.all(:redis => redis).map do |contact| contact.to_json end.join(',') + "]" end # Returns the core information about the specified contact - # https://github.com/flpjck/flapjack/wiki/API#wiki-get_contacts_id + # https://github.com/flapjack/flapjack/wiki/API#wiki-get_contacts_id app.get '/contacts/:contact_id' do content_type :json contact = find_contact(params[:contact_id]) contact.to_json end # Lists this contact's notification rules - # https://github.com/flpjck/flapjack/wiki/API#wiki-get_contacts_id_notification_rules + # https://github.com/flapjack/flapjack/wiki/API#wiki-get_contacts_id_notification_rules app.get '/contacts/:contact_id/notification_rules' do content_type :json "[" + find_contact(params[:contact_id]).notification_rules.map {|r| r.to_json }.join(',') + "]" end # Get the specified notification rule for this user - # https://github.com/flpjck/flapjack/wiki/API#wiki-get_contacts_id_notification_rules_id + # https://github.com/flapjack/flapjack/wiki/API#wiki-get_contacts_id_notification_rules_id app.get '/notification_rules/:id' do content_type :json rule = find_rule(params[:id]) rule.to_json end # Creates a notification rule for a contact - # https://github.com/flpjck/flapjack/wiki/API#wiki-post_contacts_id_notification_rules + # https://github.com/flapjack/flapjack/wiki/API#wiki-post_contacts_id_notification_rules app.post '/notification_rules' do content_type :json if params[:id] halt err(403, "post cannot be used for update, do a put instead") @@ -155,11 +155,11 @@ end rule_or_errors.to_json end # Updates a notification rule - # https://github.com/flpjck/flapjack/wiki/API#wiki-put_notification_rules_id + # https://github.com/flapjack/flapjack/wiki/API#wiki-put_notification_rules_id app.put('/notification_rules/:id') do content_type :json logger.debug("put /notification_rules/#{params[:id]} data: ") logger.debug(params.inspect) @@ -178,22 +178,22 @@ end rule.to_json end # Deletes a notification rule - # https://github.com/flpjck/flapjack/wiki/API#wiki-put_notification_rules_id + # https://github.com/flapjack/flapjack/wiki/API#wiki-put_notification_rules_id app.delete('/notification_rules/:id') do logger.debug("delete /notification_rules/#{params[:id]}") rule = find_rule(params[:id]) logger.debug("rule to delete: #{rule.inspect}, contact_id: #{rule.contact_id}") contact = find_contact(rule.contact_id) contact.delete_notification_rule(rule) status 204 end # Returns the media of a contact - # https://github.com/flpjck/flapjack/wiki/API#wiki-get_contacts_id_media + # https://github.com/flapjack/flapjack/wiki/API#wiki-get_contacts_id_media app.get '/contacts/:contact_id/media' do content_type :json contact = find_contact(params[:contact_id]) @@ -207,11 +207,11 @@ } media_addr_int.to_json end # Returns the specified media of a contact - # https://github.com/flpjck/flapjack/wiki/API#wiki-get_contacts_id_media_media + # https://github.com/flapjack/flapjack/wiki/API#wiki-get_contacts_id_media_media app.get('/contacts/:contact_id/media/:id') do content_type :json contact = find_contact(params[:contact_id]) media = contact.media[params[:id]] @@ -227,11 +227,11 @@ 'interval' => interval, 'rollup_threshold' => rollup_threshold }.to_json end # Creates or updates a media of a contact - # https://github.com/flpjck/flapjack/wiki/API#wiki-put_contacts_id_media_media + # https://github.com/flapjack/flapjack/wiki/API#wiki-put_contacts_id_media_media app.put('/contacts/:contact_id/media/:id') do content_type :json contact = find_contact(params[:contact_id]) errors = [] @@ -273,29 +273,29 @@ contact.remove_media(params[:id]) status 204 end # Returns the timezone of a contact - # https://github.com/flpjck/flapjack/wiki/API#wiki-get_contacts_id_timezone + # https://github.com/flapjack/flapjack/wiki/API#wiki-get_contacts_id_timezone app.get('/contacts/:contact_id/timezone') do content_type :json contact = find_contact(params[:contact_id]) contact.timezone.name.to_json end # Sets the timezone of a contact - # https://github.com/flpjck/flapjack/wiki/API#wiki-put_contacts_id_timezone + # https://github.com/flapjack/flapjack/wiki/API#wiki-put_contacts_id_timezone app.put('/contacts/:contact_id/timezone') do content_type :json contact = find_contact(params[:contact_id]) contact.timezone = params[:timezone] contact.timezone.name.to_json end # Removes the timezone of a contact - # https://github.com/flpjck/flapjack/wiki/API#wiki-put_contacts_id_timezone + # https://github.com/flapjack/flapjack/wiki/API#wiki-put_contacts_id_timezone app.delete('/contacts/:contact_id/timezone') do contact = find_contact(params[:contact_id]) contact.timezone = nil status 204 end