Sha256: 0f71e8f8547e734b5142ea57d68b8251c6bc3928e61a6b7331a4fcb9cd8b5f69

Contents?: true

Size: 859 Bytes

Versions: 1

Compression:

Stored size: 859 Bytes

Contents

module Highrise
  class Subject < Base
    def notes(options={})
      options.merge!(:from => "/#{self.class.collection_name}/#{id}/notes.xml")
      Note.find_all_across_pages(options)
    end

    def add_note(attrs={})
      attrs[:subject_id] = self.id
      attrs[:subject_type] = self.label
      Note.create attrs
    end
    
    def add_task(attrs={})
      attrs[:subject_id] = self.id
      attrs[:subject_type] = self.label
      Task.create attrs
    end

    def emails(options={})
      options.merge!(:from => "/#{self.class.collection_name}/#{id}/emails.xml")
      Email.find_all_across_pages(options)
    end

    def upcoming_tasks(options={})
      options.merge!(:from => "/#{self.class.collection_name}/#{id}/tasks.xml")
      Task.find(:all, options)
    end
    
    def label
      self.class.name.split('::').last
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
highrise-3.2.3 lib/highrise/subject.rb