glebtv-rails-uploader 0.4.1 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +48 -146
- data/Rakefile +2 -2
- data/app/assets/javascripts/uploader/application.js +5 -6
- data/app/assets/javascripts/uploader/rails_admin.js +6 -25
- data/app/assets/stylesheets/uploader/application.css.sass +2 -0
- data/app/assets/stylesheets/uploader/{application.css → application.css.scss} +0 -0
- data/app/controllers/uploader/attachments_controller.rb +28 -50
- data/app/views/rails_admin/main/_form_rails_uploader.haml +1 -10
- data/app/views/uploader/default/_container.html.erb +49 -64
- data/app/views/uploader/default/_download.html.erb +16 -12
- data/app/views/uploader/default/_upload.html.erb +2 -2
- data/config/routes.rb +1 -5
- data/lib/glebtv-rails-uploader.rb +0 -1
- data/lib/uploader.rb +5 -5
- data/lib/uploader/asset.rb +84 -41
- data/lib/uploader/engine.rb +10 -6
- data/lib/uploader/fileuploads.rb +53 -31
- data/lib/uploader/helpers/field_tag.rb +24 -35
- data/lib/uploader/helpers/form_builder.rb +1 -1
- data/lib/uploader/helpers/form_tag_helper.rb +2 -3
- data/lib/uploader/hooks/formtastic.rb +10 -4
- data/lib/uploader/hooks/simple_form.rb +1 -3
- data/lib/uploader/version.rb +1 -1
- data/spec/dummy/app/models/article.rb +3 -7
- data/spec/dummy/app/models/asset.rb +26 -19
- data/spec/dummy/app/models/picture.rb +4 -4
- data/spec/dummy/config/application.rb +5 -7
- data/spec/dummy/config/environments/development.rb +1 -5
- data/spec/dummy/config/environments/production.rb +0 -4
- data/spec/dummy/config/environments/test.rb +2 -6
- data/spec/dummy/db/migrate/20120508093416_create_assets.rb +3 -1
- data/spec/factories/articles.rb +1 -0
- data/spec/factories/assets.rb +1 -0
- data/spec/fileuploads_spec.rb +2 -2
- data/spec/mongoid_spec.rb +4 -6
- data/spec/requests/attachments_controller_spec.rb +10 -2
- data/spec/spec_helper.rb +7 -3
- data/spec/uploader_spec.rb +1 -1
- data/{app → vendor}/assets/images/uploader/but_del_tag2.png +0 -0
- data/{app → vendor}/assets/images/uploader/ico_attach.png +0 -0
- data/{app → vendor}/assets/images/uploader/preloader.gif +0 -0
- data/{app → vendor}/assets/images/uploader/progressBarFillBg.png +0 -0
- data/vendor/assets/javascripts/uploader/jquery.fileupload-fp.js +8 -4
- data/{app → vendor}/assets/javascripts/uploader/jquery.fileupload-ui.js +219 -44
- data/{app → vendor}/assets/javascripts/uploader/jquery.fileupload.js +16 -74
- data/{app → vendor}/assets/javascripts/uploader/jquery.iframe-transport.js +3 -9
- data/vendor/assets/javascripts/uploader/load-image.min.js +1 -0
- data/{app → vendor}/assets/javascripts/uploader/locales/en.js +0 -0
- data/{app → vendor}/assets/javascripts/uploader/locales/ru.js +0 -0
- data/{app → vendor}/assets/javascripts/uploader/locales/uk.js +0 -0
- data/vendor/assets/javascripts/uploader/tmpl.min.js +1 -0
- data/{app/assets/stylesheets/uploader/default.css → vendor/assets/stylesheets/uploader/default.css.scss} +3 -11
- data/{app/assets/stylesheets/uploader/jquery.fileupload-ui.css → vendor/assets/stylesheets/uploader/jquery.fileupload-ui.css.scss} +0 -0
- metadata +78 -146
- data/app/assets/javascripts/uploader/canvas-to-blob.js +0 -95
- data/app/assets/javascripts/uploader/jquery.fileupload-angular.js +0 -348
- data/app/assets/javascripts/uploader/jquery.fileupload-process.js +0 -158
- data/app/assets/javascripts/uploader/jquery.fileupload-resize.js +0 -212
- data/app/assets/javascripts/uploader/jquery.fileupload-validate.js +0 -116
- data/app/assets/javascripts/uploader/jquery.ui.widget.js +0 -530
- data/app/assets/javascripts/uploader/load-image.js +0 -381
- data/app/assets/javascripts/uploader/tmpl.js +0 -86
- data/lib/file_size_validator.rb +0 -68
- data/spec/dummy/config/mongoid.yml +0 -12
data/lib/file_size_validator.rb
DELETED
@@ -1,68 +0,0 @@
|
|
1
|
-
# file_size_validator.rb
|
2
|
-
# Based on: https://gist.github.com/795665
|
3
|
-
|
4
|
-
require 'singleton'
|
5
|
-
|
6
|
-
class FileSizeValidator < ActiveModel::EachValidator
|
7
|
-
MESSAGES = { :is => :wrong_size, :minimum => :size_too_small, :maximum => :size_too_big }.freeze
|
8
|
-
CHECKS = { :is => :==, :minimum => :>=, :maximum => :<= }.freeze
|
9
|
-
|
10
|
-
DEFAULT_TOKENIZER = lambda { |value| value.split(//) }
|
11
|
-
RESERVED_OPTIONS = [:minimum, :maximum, :within, :is, :tokenizer, :too_short, :too_long]
|
12
|
-
|
13
|
-
def initialize(options)
|
14
|
-
if range = (options.delete(:in) || options.delete(:within))
|
15
|
-
raise ArgumentError, ":in and :within must be a Range" unless range.is_a?(Range)
|
16
|
-
options[:minimum], options[:maximum] = range.begin, range.end
|
17
|
-
options[:maximum] -= 1 if range.exclude_end?
|
18
|
-
end
|
19
|
-
|
20
|
-
super
|
21
|
-
end
|
22
|
-
|
23
|
-
def check_validity!
|
24
|
-
keys = CHECKS.keys & options.keys
|
25
|
-
|
26
|
-
if keys.empty?
|
27
|
-
raise ArgumentError, 'Range unspecified. Specify the :within, :maximum, :minimum, or :is option.'
|
28
|
-
end
|
29
|
-
|
30
|
-
keys.each do |key|
|
31
|
-
value = options[key]
|
32
|
-
|
33
|
-
unless value.is_a?(Integer) && value >= 0
|
34
|
-
raise ArgumentError, ":#{key} must be a nonnegative Integer"
|
35
|
-
end
|
36
|
-
end
|
37
|
-
end
|
38
|
-
|
39
|
-
def validate_each(record, attribute, value)
|
40
|
-
raise(ArgumentError, "A CarrierWave::Uploader::Base object was expected") unless value.kind_of? CarrierWave::Uploader::Base
|
41
|
-
value = (options[:tokenizer] || DEFAULT_TOKENIZER).call(value) if value.kind_of?(String)
|
42
|
-
|
43
|
-
CHECKS.each do |key, validity_check|
|
44
|
-
next unless check_value = options[key]
|
45
|
-
|
46
|
-
value ||= [] if key == :maximum
|
47
|
-
|
48
|
-
value_size = value.size
|
49
|
-
next if value_size.send(validity_check, check_value)
|
50
|
-
|
51
|
-
errors_options = options.except(*RESERVED_OPTIONS)
|
52
|
-
errors_options[:file_size] = help.number_to_human_size check_value
|
53
|
-
|
54
|
-
default_message = options[MESSAGES[key]]
|
55
|
-
errors_options[:message] ||= default_message if default_message
|
56
|
-
|
57
|
-
record.errors.add(attribute, MESSAGES[key], errors_options)
|
58
|
-
end
|
59
|
-
end
|
60
|
-
def help
|
61
|
-
Helper.instance
|
62
|
-
end
|
63
|
-
|
64
|
-
class Helper
|
65
|
-
include Singleton
|
66
|
-
include ActionView::Helpers::NumberHelper
|
67
|
-
end
|
68
|
-
end
|
@@ -1,12 +0,0 @@
|
|
1
|
-
test:
|
2
|
-
sessions:
|
3
|
-
default:
|
4
|
-
database: rails-upload-test
|
5
|
-
hosts:
|
6
|
-
- localhost:27017
|
7
|
-
options:
|
8
|
-
consistency: :strong
|
9
|
-
# In the test environment we lower the retries and retry interval to
|
10
|
-
# low amounts for fast failures.
|
11
|
-
max_retries: 1
|
12
|
-
retry_interval: 0
|