Sha256: f094e10fb87105501ab336494a67ccb4565644bbcebea2a37f191131ee8dc778
Contents?: true
Size: 1.81 KB
Versions: 1
Compression:
Stored size: 1.81 KB
Contents
class Zendesk2::Client::Ticket < Cistern::Model include Zendesk2::Errors identity :id, type: :id attribute :external_id attribute :via attribute :created_at, type: :time attribute :updated_at, type: :time attribute :type attribute :subject attribute :description attribute :priority attribute :status attribute :recipient attribute :requester_id, type: :integer attribute :submitter_id, type: :integer attribute :assignee_id, type: :integer attribute :organization_id, type: :integer attribute :group_id, type: :integer attribute :collaborator_ids, type: :array attribute :forum_topic_id, type: :integer attribute :problem_id, type: :integer attribute :has_incidents, type: :boolean attribute :due_at, type: :time attribute :tags, type: :array attribute :fields, type: :array def save if new_record? requires :subject, :description data = connection.create_ticket(params).body["ticket"] merge_attributes(data) else requires :identity data = connection.update_ticket(params.merge("id" => self.identity)).body["ticket"] merge_attributes(data) end end def destroy requires :identity connection.destroy_ticket("id" => self.identity) end def destroyed? self.reload rescue not_found true end def params Cistern::Hash.slice(Zendesk2.stringify_keys(attributes), "external_id", "via", "requester_id", "submitter_id", "assignee_id", "organization_id", "subject", "description", "fields", "recipient", "status") end def submitter self.connection.users.get(submitter_id) end def requester=(requester) self.requester_id= requester.id end def requester self.connection.users.get(self.requester_id) end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
zendesk2-0.0.5 | lib/zendesk2/models/ticket.rb |