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.
Files changed (65) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +48 -146
  3. data/Rakefile +2 -2
  4. data/app/assets/javascripts/uploader/application.js +5 -6
  5. data/app/assets/javascripts/uploader/rails_admin.js +6 -25
  6. data/app/assets/stylesheets/uploader/application.css.sass +2 -0
  7. data/app/assets/stylesheets/uploader/{application.css → application.css.scss} +0 -0
  8. data/app/controllers/uploader/attachments_controller.rb +28 -50
  9. data/app/views/rails_admin/main/_form_rails_uploader.haml +1 -10
  10. data/app/views/uploader/default/_container.html.erb +49 -64
  11. data/app/views/uploader/default/_download.html.erb +16 -12
  12. data/app/views/uploader/default/_upload.html.erb +2 -2
  13. data/config/routes.rb +1 -5
  14. data/lib/glebtv-rails-uploader.rb +0 -1
  15. data/lib/uploader.rb +5 -5
  16. data/lib/uploader/asset.rb +84 -41
  17. data/lib/uploader/engine.rb +10 -6
  18. data/lib/uploader/fileuploads.rb +53 -31
  19. data/lib/uploader/helpers/field_tag.rb +24 -35
  20. data/lib/uploader/helpers/form_builder.rb +1 -1
  21. data/lib/uploader/helpers/form_tag_helper.rb +2 -3
  22. data/lib/uploader/hooks/formtastic.rb +10 -4
  23. data/lib/uploader/hooks/simple_form.rb +1 -3
  24. data/lib/uploader/version.rb +1 -1
  25. data/spec/dummy/app/models/article.rb +3 -7
  26. data/spec/dummy/app/models/asset.rb +26 -19
  27. data/spec/dummy/app/models/picture.rb +4 -4
  28. data/spec/dummy/config/application.rb +5 -7
  29. data/spec/dummy/config/environments/development.rb +1 -5
  30. data/spec/dummy/config/environments/production.rb +0 -4
  31. data/spec/dummy/config/environments/test.rb +2 -6
  32. data/spec/dummy/db/migrate/20120508093416_create_assets.rb +3 -1
  33. data/spec/factories/articles.rb +1 -0
  34. data/spec/factories/assets.rb +1 -0
  35. data/spec/fileuploads_spec.rb +2 -2
  36. data/spec/mongoid_spec.rb +4 -6
  37. data/spec/requests/attachments_controller_spec.rb +10 -2
  38. data/spec/spec_helper.rb +7 -3
  39. data/spec/uploader_spec.rb +1 -1
  40. data/{app → vendor}/assets/images/uploader/but_del_tag2.png +0 -0
  41. data/{app → vendor}/assets/images/uploader/ico_attach.png +0 -0
  42. data/{app → vendor}/assets/images/uploader/preloader.gif +0 -0
  43. data/{app → vendor}/assets/images/uploader/progressBarFillBg.png +0 -0
  44. data/vendor/assets/javascripts/uploader/jquery.fileupload-fp.js +8 -4
  45. data/{app → vendor}/assets/javascripts/uploader/jquery.fileupload-ui.js +219 -44
  46. data/{app → vendor}/assets/javascripts/uploader/jquery.fileupload.js +16 -74
  47. data/{app → vendor}/assets/javascripts/uploader/jquery.iframe-transport.js +3 -9
  48. data/vendor/assets/javascripts/uploader/load-image.min.js +1 -0
  49. data/{app → vendor}/assets/javascripts/uploader/locales/en.js +0 -0
  50. data/{app → vendor}/assets/javascripts/uploader/locales/ru.js +0 -0
  51. data/{app → vendor}/assets/javascripts/uploader/locales/uk.js +0 -0
  52. data/vendor/assets/javascripts/uploader/tmpl.min.js +1 -0
  53. data/{app/assets/stylesheets/uploader/default.css → vendor/assets/stylesheets/uploader/default.css.scss} +3 -11
  54. data/{app/assets/stylesheets/uploader/jquery.fileupload-ui.css → vendor/assets/stylesheets/uploader/jquery.fileupload-ui.css.scss} +0 -0
  55. metadata +78 -146
  56. data/app/assets/javascripts/uploader/canvas-to-blob.js +0 -95
  57. data/app/assets/javascripts/uploader/jquery.fileupload-angular.js +0 -348
  58. data/app/assets/javascripts/uploader/jquery.fileupload-process.js +0 -158
  59. data/app/assets/javascripts/uploader/jquery.fileupload-resize.js +0 -212
  60. data/app/assets/javascripts/uploader/jquery.fileupload-validate.js +0 -116
  61. data/app/assets/javascripts/uploader/jquery.ui.widget.js +0 -530
  62. data/app/assets/javascripts/uploader/load-image.js +0 -381
  63. data/app/assets/javascripts/uploader/tmpl.js +0 -86
  64. data/lib/file_size_validator.rb +0 -68
  65. data/spec/dummy/config/mongoid.yml +0 -12
@@ -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