s3_direct_upload 0.1.0 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: d19e2b36016e3829e3f284c860489d83aaacee7e
4
+ data.tar.gz: b30b925f450271bc8e6980df7c780056a26f40fc
5
+ SHA512:
6
+ metadata.gz: ed39347ebba94448f41ca01a13fc92bcd4c2bfd4bc572b33ffd5e1838a83cda3bba8cc5a819f4727e298db9fcaa298404c80ca0f2e7492403519097b47e08ee0
7
+ data.tar.gz: c4c4a4c93ed56e2a97725c453f67c40465f3962dcf86b75f36d4c9990b5f4729a03ecdde0faa0c6fe311164dcf7ba3c40aaad111be338ae89314dda06fe2a34c
data/README.md CHANGED
@@ -124,6 +124,7 @@ Use the javascript in `s3_direct_upload` as a guide.
124
124
  * `remove_failed_progress_bar:` By default, the progress bar will not be removed when uploads fail. You can set this to `true` if you want to remove the progress bar.
125
125
  * `before_add:` Callback function that executes before a file is added to the queue. It is passed file object and expects `true` or `false` to be returned. This could be useful if you would like to validate the filenames of files to be uploaded for example. If true is returned file will be uploaded as normal, false will cancel the upload.
126
126
  * `progress_bar_target:` The jQuery selector for the element where you want the progress bars to be appended to. Default is the form element.
127
+ * `click_submit_target:` The jQuery selector for the element you wish to add a click handler to do the submitting instead of submiting on file open.
127
128
 
128
129
  ### Example with all options.
129
130
  ```coffeescript
@@ -134,6 +135,7 @@ jQuery ->
134
135
  remove_completed_progress_bar: false
135
136
  before_add: myCallBackFunction() # must return true or false if set
136
137
  progress_bar_target: $('.js-progress-bars')
138
+ click_submit_target: $('.submit-target')
137
139
  ```
138
140
 
139
141
  ### Public methods
@@ -21,10 +21,16 @@ $.fn.S3Uploader = (options) ->
21
21
  remove_completed_progress_bar: true
22
22
  remove_failed_progress_bar: false
23
23
  progress_bar_target: null
24
+ click_submit_target: null
24
25
 
25
26
  $.extend settings, options
26
27
 
27
28
  current_files = []
29
+ forms_for_submit = []
30
+ if settings.click_submit_target
31
+ settings.click_submit_target.click ->
32
+ form.submit() for form in forms_for_submit
33
+ false
28
34
 
29
35
  setUploadForm = ->
30
36
  $uploadForm.fileupload
@@ -35,9 +41,12 @@ $.fn.S3Uploader = (options) ->
35
41
  file.unique_id = Math.random().toString(36).substr(2,16)
36
42
 
37
43
  unless settings.before_add and not settings.before_add(file)
38
- data.context = $(tmpl("template-upload", file)) if $('#template-upload').length > 0
44
+ data.context = $(tmpl("template-upload", file).trim()) if $('#template-upload').length > 0
39
45
  $(data.context).appendTo(settings.progress_bar_target || $uploadForm)
40
- data.submit()
46
+ if settings.click_submit_target
47
+ forms_for_submit.push data
48
+ else
49
+ data.submit()
41
50
 
42
51
  start: (e) ->
43
52
  $uploadForm.trigger("s3_uploads_start", [e])
@@ -16,6 +16,7 @@ module S3DirectUpload
16
16
  aws_secret_access_key: S3DirectUpload.config.secret_access_key,
17
17
  bucket: S3DirectUpload.config.bucket,
18
18
  region: S3DirectUpload.config.region || "s3",
19
+ ssl: true,
19
20
  acl: "public-read",
20
21
  expiration: 10.hours.from_now.utc.iso8601,
21
22
  max_file_size: 500.megabytes,
@@ -56,7 +57,7 @@ module S3DirectUpload
56
57
  end
57
58
 
58
59
  def url
59
- "https://#{@options[:region]}.amazonaws.com/#{@options[:bucket]}/"
60
+ "http#{@options[:ssl] ? 's' : ''}://#{@options[:region]}.amazonaws.com/#{@options[:bucket]}/"
60
61
  end
61
62
 
62
63
  def policy
@@ -75,7 +76,7 @@ module S3DirectUpload
75
76
  {bucket: @options[:bucket]},
76
77
  {acl: @options[:acl]},
77
78
  {success_action_status: "201"}
78
- ]
79
+ ] + (@options[:conditions] || [])
79
80
  }
80
81
  end
81
82
 
@@ -1,3 +1,3 @@
1
1
  module S3DirectUpload
2
- VERSION = "0.1.0"
2
+ VERSION = "0.1.1"
3
3
  end
metadata CHANGED
@@ -1,80 +1,71 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: s3_direct_upload
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
5
- prerelease:
4
+ version: 0.1.1
6
5
  platform: ruby
7
6
  authors:
8
7
  - Wayne Hoover
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-02-15 00:00:00.000000000 Z
11
+ date: 2013-02-27 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: rails
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ~>
17
+ - - '>='
20
18
  - !ruby/object:Gem::Version
21
19
  version: '3.2'
22
20
  type: :runtime
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
- - - ~>
24
+ - - '>='
28
25
  - !ruby/object:Gem::Version
29
26
  version: '3.2'
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: coffee-rails
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
- - - ~>
31
+ - - '>='
36
32
  - !ruby/object:Gem::Version
37
33
  version: 3.2.1
38
34
  type: :runtime
39
35
  prerelease: false
40
36
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
37
  requirements:
43
- - - ~>
38
+ - - '>='
44
39
  - !ruby/object:Gem::Version
45
40
  version: 3.2.1
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: sass-rails
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
- - - ~>
45
+ - - '>='
52
46
  - !ruby/object:Gem::Version
53
47
  version: 3.2.5
54
48
  type: :runtime
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
51
  requirements:
59
- - - ~>
52
+ - - '>='
60
53
  - !ruby/object:Gem::Version
61
54
  version: 3.2.5
62
55
  - !ruby/object:Gem::Dependency
63
56
  name: jquery-fileupload-rails
64
57
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
58
  requirements:
67
59
  - - ~>
68
60
  - !ruby/object:Gem::Version
69
- version: 0.4.0
61
+ version: 0.4.1
70
62
  type: :runtime
71
63
  prerelease: false
72
64
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
65
  requirements:
75
66
  - - ~>
76
67
  - !ruby/object:Gem::Version
77
- version: 0.4.0
68
+ version: 0.4.1
78
69
  description: Direct Upload to Amazon S3 With CORS and jquery-file-upload
79
70
  email:
80
71
  - w@waynehoover.com
@@ -95,27 +86,26 @@ files:
95
86
  - README.md
96
87
  homepage: ''
97
88
  licenses: []
89
+ metadata: {}
98
90
  post_install_message:
99
91
  rdoc_options: []
100
92
  require_paths:
101
93
  - lib
102
94
  required_ruby_version: !ruby/object:Gem::Requirement
103
- none: false
104
95
  requirements:
105
- - - ! '>='
96
+ - - '>='
106
97
  - !ruby/object:Gem::Version
107
98
  version: '0'
108
99
  required_rubygems_version: !ruby/object:Gem::Requirement
109
- none: false
110
100
  requirements:
111
- - - ! '>='
101
+ - - '>='
112
102
  - !ruby/object:Gem::Version
113
103
  version: '0'
114
104
  requirements: []
115
105
  rubyforge_project:
116
- rubygems_version: 1.8.23
106
+ rubygems_version: 2.0.0
117
107
  signing_key:
118
- specification_version: 3
108
+ specification_version: 4
119
109
  summary: Gives a form helper for Rails which allows direct uploads to s3. Based on
120
110
  RailsCast#383
121
111
  test_files: []