Class: Ckeditor::Http::QqFile

Inherits:
Tempfile
  • Object
show all
Defined in:
lib/ckeditor/http.rb

Overview

Usage (paperclip example)

Instance Method Summary collapse

Constructor Details

#initialize(filename, request, tmpdir = Dir::tmpdir) ⇒ QqFile

Returns a new instance of QqFile.



44
45
46
47
48
49
50
51
# File 'lib/ckeditor/http.rb', line 44

def initialize(filename, request, tmpdir = Dir::tmpdir)
  @original_filename  = filename
  @request = request

  super Digest::SHA1.hexdigest(filename), tmpdir
  binmode
  fetch
end

Instance Method Details

#bodyObject



68
69
70
71
72
73
74
# File 'lib/ckeditor/http.rb', line 68

def body
  if @request.raw_post.respond_to?(:force_encoding)
    @request.raw_post.force_encoding("UTF-8")
  else
    @request.raw_post
  end
end

#content_typeObject



63
64
65
66
# File 'lib/ckeditor/http.rb', line 63

def content_type
  types = MIME::Types.type_for(original_filename)
  types.empty? ? @request.content_type : types.first.to_s
end

#fetchObject



53
54
55
56
57
# File 'lib/ckeditor/http.rb', line 53

def fetch
  self.write(body)
  self.rewind
  self
end

#original_filenameObject



59
60
61
# File 'lib/ckeditor/http.rb', line 59

def original_filename
  @original_filename
end