From 935f48222661e5ce6ab5c137ee8da4e295995eda Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Albert=20Fern=C3=A1ndez?= Date: Wed, 29 Apr 2015 15:19:44 +0200 Subject: [PATCH] Move promotion_group_member to its own model --- lib/podio.rb | 1 + lib/podio/models/promotion_group.rb | 1 - lib/podio/models/promotion_group_member.rb | 32 ++++++++++++++++++++++ 3 files changed, 33 insertions(+), 1 deletion(-) create mode 100644 lib/podio/models/promotion_group_member.rb diff --git a/lib/podio.rb b/lib/podio.rb index 035010dc..453f6e4a 100644 --- a/lib/podio.rb +++ b/lib/podio.rb @@ -137,6 +137,7 @@ def initialize(params = {}) autoload :Profile, 'podio/models/profile' autoload :Promotion, 'podio/models/promotion' autoload :PromotionGroup, 'podio/models/promotion_group' + autoload :PromotionGroupMember, 'podio/models/promotion_group_member' autoload :Question, 'podio/models/question' autoload :QuestionAnswer, 'podio/models/question_answer' autoload :QuestionOption, 'podio/models/question_option' diff --git a/lib/podio/models/promotion_group.rb b/lib/podio/models/promotion_group.rb index 2c156ef5..e19b9106 100644 --- a/lib/podio/models/promotion_group.rb +++ b/lib/podio/models/promotion_group.rb @@ -4,7 +4,6 @@ class Podio::PromotionGroup < ActivePodio::Base property :name, :string property :description, :string property :status, :string - property :member_ids, :array alias_method :id, :promotion_group_id diff --git a/lib/podio/models/promotion_group_member.rb b/lib/podio/models/promotion_group_member.rb new file mode 100644 index 00000000..2513f902 --- /dev/null +++ b/lib/podio/models/promotion_group_member.rb @@ -0,0 +1,32 @@ +class Podio::PromotionGroupMember < ActivePodio::Base + + property :promotion_group_id, :integer + property :member_id, :integer + + alias_method :id, :promotion_group_id + + class << self + + def create(attributes) + member Podio.connection.post { |req| + req.url("/promotion_group/#{attributes[:promotion_group_id]}/add") + req.body = attributes + }.body + end + + def find_all(promotion_group_id, options = {}) + Podio.connection.get { |req| + req.url("/promotion_group/#{promotion_group_id}/members", options) + }.body + end + + def add_members(promotion_group_id, attributes) + Podio.connection.post { |req| + req.url "/promotion_group/#{promotion_group_id}/members/add" + req.body = attributes + }.status + end + + end + +end \ No newline at end of file