Sha256: 4faf93d1523457294faa1e7089b19b33c155e3655f7fe5159f3d34af8562f1d3

Contents?: true

Size: 835 Bytes

Versions: 4

Compression:

Stored size: 835 Bytes

Contents

module Droom
  class DropboxDocument < ActiveRecord::Base
    attr_accessible :person_id

    belongs_to :person
    belongs_to :document

    validates_uniqueness_of :person_id, :scope => :document_id

    after_save  :get_file

    after_destroy :remove_dropbox_document

    def get_file
      bucket = Droom.aws_bucket
      file = bucket.files.get(document.file.path)
      dropbox_client.put_file(document.full_path, file)
    end

    def update
      get_file
    end

    def dropbox_client
      person.user.dropbox_client
    end

    def deleted=(boolean)
      deleted = boolean
    end

    def remove_dropbox_document
      dropbox_client.file_delete(document.full_path)
    end

    def changed?
      modified?# || dropbox_client.get_file_and_metadata(document.full_path)#dropbox file has revisions
    end

  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
droom-0.4.3 app/models/droom/dropbox_document.rb
droom-0.4.2 app/models/droom/dropbox_document.rb
droom-0.4.1 app/models/droom/dropbox_document.rb
droom-0.2.1 app/models/droom/dropbox_document.rb