class Podio::Task
Public Class Methods
@see developers.podio.com/doc/tasks/complete-task-22432
# File lib/podio/models/task.rb, line 185 def complete(id) Podio.connection.post("/task/#{id}/complete").body end
@see developers.podio.com/doc/tasks/get-task-count-38316458
# File lib/podio/models/task.rb, line 261 def count_by_ref(ref_type, ref_id) Podio.connection.get("/task/#{ref_type}/#{ref_id}/count").body['count'] end
@see developers.podio.com/doc/tasks/create-task-22419
# File lib/podio/models/task.rb, line 106 def create(attributes, options = {}) response = Podio.connection.post do |req| req.url("/task/", options) req.body = attributes end list [response.body].flatten end
@see developers.podio.com/doc/tasks/create-task-with-reference-22420
# File lib/podio/models/task.rb, line 116 def create_with_ref(ref_type, ref_id, attributes, options = {}) response = Podio.connection.post do |req| req.url("/task/#{ref_type}/#{ref_id}/", options) req.body = attributes end list [response.body].flatten end
@see developers.podio.com/doc/tasks/delete-task-77179
# File lib/podio/models/task.rb, line 180 def delete(id) Podio.connection.delete("/task/#{id}").status end
@see developers.podio.com/doc/tasks/remove-task-reference-6146114
# File lib/podio/models/task.rb, line 170 def delete_reference(task_id) Podio.connection.delete("/task/#{task_id}/ref").status end
@see developers.podio.com/doc/tasks/get-task-22413
# File lib/podio/models/task.rb, line 200 def find(id, options = {}) member Podio.connection.get("/task/#{id}", options).body end
@see developers.podio.com/doc/tasks/get-tasks-77949
# File lib/podio/models/task.rb, line 210 def find_all(options={}) list Podio.connection.get { |req| req.url('/task/', options) }.body end
@see developers.podio.com/doc/tasks/get-tasks-with-reference-22426
# File lib/podio/models/task.rb, line 205 def find_for_reference(ref_type, ref_id) list Podio.connection.get("/task/#{ref_type}/#{ref_id}/").body end
@see developers.podio.com/doc/tasks/get-task-summary-for-personal-1657217
# File lib/podio/models/task.rb, line 250 def find_personal_summary(options={}) response = Podio.connection.get { |req| req.url("/task/personal/summary", options) }.body response['overdue']['tasks'] = list(response['overdue']['tasks']) response['today']['tasks'] = list(response['today']['tasks']) response['other']['tasks'] = list(response['other']['tasks']) response end
@see developers.podio.com/doc/tasks/get-task-summary-1612017
# File lib/podio/models/task.rb, line 217 def find_summary(options={}) response = Podio.connection.get { |req| req.url("/task/summary", options) }.body response['overdue']['tasks'] = list(response['overdue']['tasks']) response['today']['tasks'] = list(response['today']['tasks']) response['other']['tasks'] = list(response['other']['tasks']) response end
@see developers.podio.com/doc/tasks/get-task-summary-for-organization-1612063
# File lib/podio/models/task.rb, line 228 def find_summary_for_org(org_id, options={}) response = Podio.connection.get { |req| req.url("/task/org/#{org_id}/summary", options) }.body response['overdue']['tasks'] = list(response['overdue']['tasks']) response['today']['tasks'] = list(response['today']['tasks']) response['other']['tasks'] = list(response['other']['tasks']) response end
@see developers.podio.com/doc/tasks/get-task-summary-for-reference-1657980
# File lib/podio/models/task.rb, line 239 def find_summary_for_reference(ref_type, ref_id, options={}) response = Podio.connection.get { |req| req.url("/task/#{ref_type}/#{ref_id}/summary", options) }.body response['overdue']['tasks'] = list(response['overdue']['tasks']) response['today']['tasks'] = list(response['today']['tasks']) response['other']['tasks'] = list(response['other']['tasks']) response end
@see developers.podio.com/doc/tasks/incomplete-task-22433
# File lib/podio/models/task.rb, line 190 def incomplete(id) Podio.connection.post("/task/#{id}/incomplete").body end
@see developers.podio.com/doc/tasks/rank-task-81015
# File lib/podio/models/task.rb, line 195 def rank(id, before_task_id, after_task_id) Podio.connection.post("/task/#{id}/rank", {:before => before_task_id, :after => after_task_id}).body end
@see developers.podio.com/doc/tasks/update-task-10583674
# File lib/podio/models/task.rb, line 126 def update(id, attributes, options = {}) response = Podio.connection.put do |req| req.url("/task/#{id}", options) req.body = attributes end member response.body end
@see developers.podio.com/doc/tasks/assign-task-22412
# File lib/podio/models/task.rb, line 160 def update_assignee(id, user_id) Podio.connection.post("/task/#{id}/assign", {:responsible => user_id}).status end
@see developers.podio.com/doc/tasks/update-task-description-76982
# File lib/podio/models/task.rb, line 136 def update_description(id, description) Podio.connection.put("/task/#{id}/description", {:description => description}).status end
# File lib/podio/models/task.rb, line 150 def update_due_date(id, due_date) Podio.connection.put("/task/#{id}/due_date", {:due_date => due_date}).status end
@see developers.podio.com/doc/tasks/update-task-due-on-3442633
# File lib/podio/models/task.rb, line 155 def update_due_on(id, options) Podio.connection.put("/task/#{id}/due_on", options).status end
@see developers.podio.com/doc/tasks/update-task-labels-151769
# File lib/podio/models/task.rb, line 175 def update_labels(id, label_ids) Podio.connection.put("/task/#{id}/label/", label_ids).status end
@see developers.podio.com/doc/tasks/update-task-private-22434
# File lib/podio/models/task.rb, line 146 def update_private(id, private_flag) Podio.connection.put("/task/#{id}/private", {:private => private_flag}).status end
@see developers.podio.com/doc/tasks/update-task-reference-170733
# File lib/podio/models/task.rb, line 165 def update_reference(id, ref_type, ref_id) Podio.connection.put("/task/#{id}/ref", {:ref_type => ref_type, :ref_id => ref_id}).status end
@see developers.podio.com/doc/tasks/update-task-text-22428
# File lib/podio/models/task.rb, line 141 def update_text(id, text) Podio.connection.put("/task/#{id}/text", {:text => text}).status end
Public Instance Methods
@see developers.podio.com/doc/tasks/complete-task-22432
# File lib/podio/models/task.rb, line 90 def complete self.class.complete(self.id) end
@see developers.podio.com/doc/tasks/create-task-22419
# File lib/podio/models/task.rb, line 54 def create result = self.create_multiple # Could return false if API call failed self.task_id = result.first.id if result result end
# File lib/podio/models/task.rb, line 60 def create_multiple compacted_attributes = remove_nil_values(self.attributes) if(self.ref_type.present? && self.ref_id.present?) self.class.create_with_ref(self.ref_type, self.ref_id, compacted_attributes) else self.class.create(compacted_attributes) end end
@see developers.podio.com/doc/tasks/remove-task-reference-6146114
# File lib/podio/models/task.rb, line 80 def delete_reference self.class.delete_reference(self.id) end
@see developers.podio.com/doc/tasks/delete-task-77179
# File lib/podio/models/task.rb, line 70 def destroy self.class.delete(self.id) end
@see developers.podio.com/doc/tasks/rank-task-81015
# File lib/podio/models/task.rb, line 100 def rank(previous_task, next_task) self.class.rank(self.id, previous_task && previous_task.to_i, next_task && next_task.to_i) end
@see developers.podio.com/doc/tasks/incomplete-task-22433
# File lib/podio/models/task.rb, line 95 def uncomplete self.class.incomplete(self.id) end
@see developers.podio.com/doc/tasks/update-task-labels-151769
# File lib/podio/models/task.rb, line 85 def update_labels(label_ids) self.class.update_labels(self.id, label_ids) end
@see developers.podio.com/doc/tasks/update-task-reference-170733
# File lib/podio/models/task.rb, line 75 def update_reference(ref_type, ref_id) self.class.update_reference(self.id, ref_type, ref_id) end