Sha256: e51ed41547a3e35be7e7387384705cc7edf2ee35edee5ea6992e84b3275521f7
Contents?: true
Size: 1.72 KB
Versions: 4
Compression:
Stored size: 1.72 KB
Contents
module Progstr module Filer class Attachment attr_accessor :id, :attribute, :file, :pre_validated @@id_generator = ::UUID.new class EmptyAttachment < Attachment def blank? true end def size 0 end def path "" end def extension "" end end def self.empty EmptyAttachment.new end def self.from_file(attribute, file) result = Attachment.new result.id = generate_id result.attribute = attribute result.file = file result.pre_validated = false result end def self.generate_id uuid = @@id_generator.generate uuid.gsub("-", "") end def size file.size end def path (file.original_filename if file.respond_to?(:original_filename)) || (file_path = file.path if file.respond_to?(:path)) end def extension from_file = File.extname(path) || "" from_file.sub(".", "") end def self.from_id(attribute, id) result = Attachment.new result.id = id result.attribute = attribute result.pre_validated = true result end def blank? false end def url if !blank? token = Progstr::Filer.generate_file_auth_token(id) "#{Progstr::Filer.url_prefix}files/data/#{Progstr::Filer.access_key}/#{id}?auth=#{token}" else "" end end def public_url if !blank? "#{Progstr::Filer.url_prefix}files/data/#{Progstr::Filer.access_key}/#{id}" else "" end end end end end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
progstr-filer-0.8.7 | lib/filer/attachment.rb |
progstr-filer-0.8.6 | lib/filer/attachment.rb |
progstr-filer-0.8.5 | lib/filer/attachment.rb |
progstr-filer-0.8.4 | lib/filer/attachment.rb |