module KayakoClient::CommentObject
Constants
- CREATOR_STAFF
- CREATOR_USER
- STATUS_APPROVED
- STATUS_PENDING
- STATUS_SPAM
Public Class Methods
included(base)
click to toggle source
# File lib/kayako_client/mixins/comment_object.rb, line 30 def self.included(base) base.extend(ClassMethods) base.class_eval do supports :all, :get, :post, :delete property :id, :integer, :readonly => true property :creator_type, :integer, :required => :post, :range => 1..2 property :creator_id, :integer property :full_name, :string property :email, :string property :ip_address, :string, :readonly => true property :date_line, :date, :readonly => true property :parent_comment_id, :integer property :comment_status, :integer, :range => 1..3 property :user_agent, :string, :readonly => true property :referrer, :string, :readonly => true property :parent_url, :string, :readonly => true property :contents, :string, :required => :post associate :parent_comment, :parent_comment_id, base end end
Public Instance Methods
creator=(creator)
click to toggle source
# File lib/kayako_client/mixins/comment_object.rb, line 55 def creator=(creator) if creator.is_a?(Staff) self.creator_type = self.class::CREATOR_STAFF self.creator_id = creator.id self.full_name = creator.full_name self.email = creator.email elsif creator.is_a?(User) self.creator_type = self.class::CREATOR_USER self.creator_id = creator.id self.full_name = creator.full_name self.email = creator.emails.first else raise ArgumentError, "creator must be a User or Staff" end end
has_parent_comment?()
click to toggle source
# File lib/kayako_client/mixins/comment_object.rb, line 71 def has_parent_comment? !parent_comment_id.nil? && parent_comment_id > 0 end
Also aliased as: is_reply?
Private Instance Methods
validate(method, params)
click to toggle source
# File lib/kayako_client/mixins/comment_object.rb, line 91 def validate(method, params) if method == :post if params[:creator_type] == self.class::CREATOR_STAFF raise ArgumentError, ":creator_id is required for staff" unless params[:creator_id] elsif params[:creator_type] == self.class::CREATOR_USER raise ArgumentError, ":full_name is required for user" unless params[:full_name] end end end