mirror of
https://github.com/rails/rails.git
synced 2022-11-09 12:12:34 -05:00
We aren't using UploadedStringIO and UploadedTempfile anymore
This commit is contained in:
parent
4839fe2e82
commit
11d4bfb18c
4 changed files with 28 additions and 51 deletions
|
@ -73,9 +73,6 @@ module ActionController
|
|||
autoload :UrlRewriter, 'action_controller/routing/generation/url_rewriter'
|
||||
autoload :UrlWriter, 'action_controller/routing/generation/url_rewriter'
|
||||
autoload :Verification, 'action_controller/base/verification'
|
||||
autoload :UploadedFile, 'action_dispatch/utils/uploaded_file'
|
||||
autoload :UploadedStringIO, 'action_dispatch/utils/uploaded_file'
|
||||
autoload :UploadedTempfile, 'action_dispatch/utils/uploaded_file'
|
||||
|
||||
module Assertions
|
||||
autoload :DomAssertions, 'action_controller/testing/assertions/dom'
|
||||
|
|
|
@ -49,10 +49,6 @@ module ActionDispatch
|
|||
autoload :RewindableInput, 'action_dispatch/middleware/rewindable_input'
|
||||
|
||||
autoload :MiddlewareStack, 'action_dispatch/utils/middleware_stack'
|
||||
autoload :UploadedFile, 'action_dispatch/utils/uploaded_file'
|
||||
autoload :UploadedStringIO, 'action_dispatch/utils/uploaded_file'
|
||||
autoload :UploadedTempfile, 'action_dispatch/utils/uploaded_file'
|
||||
autoload :UrlEncodedPairParser, 'action_dispatch/utils/url_encoded_pair_parser'
|
||||
|
||||
module Http
|
||||
autoload :Headers, 'action_dispatch/http/headers'
|
||||
|
|
|
@ -477,6 +477,34 @@ EOM
|
|||
!(host.nil? || /\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/.match(host))
|
||||
end
|
||||
|
||||
module UploadedFile
|
||||
def self.extended(object)
|
||||
object.class_eval do
|
||||
attr_accessor :original_path, :content_type
|
||||
alias_method :local_path, :path
|
||||
end
|
||||
end
|
||||
|
||||
# Take the basename of the upload's original filename.
|
||||
# This handles the full Windows paths given by Internet Explorer
|
||||
# (and perhaps other broken user agents) without affecting
|
||||
# those which give the lone filename.
|
||||
# The Windows regexp is adapted from Perl's File::Basename.
|
||||
def original_filename
|
||||
unless defined? @original_filename
|
||||
@original_filename =
|
||||
unless original_path.blank?
|
||||
if original_path =~ /^(?:.*[:\\\/])?(.*)/m
|
||||
$1
|
||||
else
|
||||
File.basename original_path
|
||||
end
|
||||
end
|
||||
end
|
||||
@original_filename
|
||||
end
|
||||
end
|
||||
|
||||
# Convert nested Hashs to HashWithIndifferentAccess and replace
|
||||
# file upload hashs with UploadedFile objects
|
||||
def normalize_parameters(value)
|
||||
|
|
|
@ -1,44 +0,0 @@
|
|||
module ActionDispatch
|
||||
module UploadedFile
|
||||
def self.included(base)
|
||||
base.class_eval do
|
||||
attr_accessor :original_path, :content_type
|
||||
alias_method :local_path, :path
|
||||
end
|
||||
end
|
||||
|
||||
def self.extended(object)
|
||||
object.class_eval do
|
||||
attr_accessor :original_path, :content_type
|
||||
alias_method :local_path, :path
|
||||
end
|
||||
end
|
||||
|
||||
# Take the basename of the upload's original filename.
|
||||
# This handles the full Windows paths given by Internet Explorer
|
||||
# (and perhaps other broken user agents) without affecting
|
||||
# those which give the lone filename.
|
||||
# The Windows regexp is adapted from Perl's File::Basename.
|
||||
def original_filename
|
||||
unless defined? @original_filename
|
||||
@original_filename =
|
||||
unless original_path.blank?
|
||||
if original_path =~ /^(?:.*[:\\\/])?(.*)/m
|
||||
$1
|
||||
else
|
||||
File.basename original_path
|
||||
end
|
||||
end
|
||||
end
|
||||
@original_filename
|
||||
end
|
||||
end
|
||||
|
||||
class UploadedStringIO < StringIO
|
||||
include UploadedFile
|
||||
end
|
||||
|
||||
class UploadedTempfile < Tempfile
|
||||
include UploadedFile
|
||||
end
|
||||
end
|
Loading…
Reference in a new issue