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 +7 -0
- data/README.md +2 -0
- data/app/assets/javascripts/s3_direct_upload.js.coffee +11 -2
- data/lib/s3_direct_upload/form_helper.rb +3 -2
- data/lib/s3_direct_upload/version.rb +1 -1
- metadata +15 -25
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
|
-
|
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
|
-
"
|
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
|
|
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.
|
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-
|
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.
|
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.
|
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:
|
106
|
+
rubygems_version: 2.0.0
|
117
107
|
signing_key:
|
118
|
-
specification_version:
|
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: []
|