anaconda 0.12.0 → 0.12.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 48af1f9503f065b652298a02de0fe6f0f22ead90
4
- data.tar.gz: 91ba09bdb12f881ccd3b8612d482fe7681f41b82
3
+ metadata.gz: b215602192966e3b701912a7388182b37487bb93
4
+ data.tar.gz: c74e123f394996b4c3fddf73779c34cb02ad156c
5
5
  SHA512:
6
- metadata.gz: 96ba09c1ba5ec0d753ebdeeecdad087ce928219729d1f8b568b40eee54714474ae1d82161dbe2d5a03e7113a4d0a96574f1fef542573c837f2145c9bb0597ec4
7
- data.tar.gz: 3a14cc1ba75147fb24a87315e6f13a69596106afb0bc8c9d4d19d0b341a3be6deda93f915c5ade422a8ae3600442c317d763ca873742f6319e2c4602aa833b2d
6
+ metadata.gz: a314d5936a6c90df4cc3bdc69baa42d2a80a27472bc384a19a0c8425790e9e327495bbbe0de9889bc1611994e7d46e6f8517be0d2fbf7d810d2bbac6765e1feb
7
+ data.tar.gz: d43e7f37a75056d1fc11e7c0e153337924d8faacabdb68b74b88c696d4ff616d465c22fbacf0d5ed6b06c6f0e7ddb0a73fc04da089650ee5399097a50a3cce27
data/README.markdown CHANGED
@@ -179,6 +179,12 @@ We highly recommend the `figaro` gem [https://github.com/laserlemon/figaro](http
179
179
  `asset_download_url` will return a signed S3 URL with content-disposition set to attachment so the file will be downloaded instead of opened in the browser.
180
180
 
181
181
  ## Changelog
182
+ * 0.12.1
183
+ * Make progress bar go to 100% on upload complete
184
+ * Properly store ACL on file upload (`asset_stored_privately`)
185
+ * Properly store `original_filename` on upload
186
+ * Fix bug when dragging and dropping onto the file select button
187
+
182
188
  * 0.12.0
183
189
  * Delete files from S3 when a new one us uploaded, or the record is deleted.
184
190
  * Add options to disable deleting files from S3 when a new one is uploaded (`remove_previous_s3_files_on_change` and `remove_previous_s3_files_on_destroy`). These default to `true`
@@ -10,6 +10,7 @@ class @AnacondaUploadManager
10
10
  @upload_automatically = false
11
11
  @submit_automatically = false
12
12
  @setup_form_submit_handler()
13
+ @bind_dropzone_effects()
13
14
  self = this
14
15
  $(document).on "page:fetch", ->
15
16
  DLog "page:fetch"
@@ -70,6 +71,37 @@ class @AnacondaUploadManager
70
71
  @form.find("input[type='submit']").prop( "disabled", true );
71
72
  enable_submit_button: ->
72
73
  @form.find("input[type='submit']").prop( "disabled", false );
74
+
75
+ bind_dropzone_effects: ->
76
+ $(document).bind 'drop dragover', (e) ->
77
+ e.preventDefault()
78
+
79
+ $(document).bind 'dragover', (e) ->
80
+ dropZone = $('.anaconda_dropzone')
81
+ timeout = window.dropZoneTimeout
82
+ if !timeout
83
+ dropZone.addClass('in');
84
+ else
85
+ clearTimeout(timeout);
86
+
87
+ found = false
88
+ node = e.target
89
+
90
+ while node != null
91
+ if node in dropZone
92
+ found = true
93
+ break
94
+ node = node.parentNode;
95
+
96
+ if found
97
+ dropZone.addClass('hover')
98
+ else
99
+ dropZone.removeClass('hover')
100
+
101
+ window.dropZoneTimeout = setTimeout ->
102
+ window.dropZoneTimeout = null
103
+ dropZone.removeClass('in hover')
104
+ , 100
73
105
 
74
106
  class @AnacondaUploadField
75
107
  constructor: (options = {}) ->
@@ -92,7 +124,7 @@ class @AnacondaUploadField
92
124
  @file = null
93
125
  @file_data = null
94
126
  @media_types = $(@element_id).data('media-types')
95
-
127
+ @acl = $(@element_id).data('form-data').acl
96
128
 
97
129
  @base_key = options.base_key ? ""
98
130
  @key = options.key ? "#{@base_key}/${filename}"
@@ -118,7 +150,7 @@ class @AnacondaUploadField
118
150
  setup_fileupload: ->
119
151
  self = this
120
152
  $( @element_id ).fileupload
121
- #dropZone: $("#dropzone")
153
+ dropZone: $( @element_id ).parent(".anaconda_dropzone"),
122
154
  add: (e, data) ->
123
155
  DLog data
124
156
  self.file_selected data
@@ -129,6 +161,7 @@ class @AnacondaUploadField
129
161
  self.update_progress_to(progress)
130
162
 
131
163
  done: (e, data) ->
164
+ self.update_progress_to(100)
132
165
  self.file_completed_upload data
133
166
 
134
167
  fail: (e, data) ->
@@ -145,9 +178,6 @@ class @AnacondaUploadField
145
178
  DLog("data.jqXHR:")
146
179
  DLog(data.jqXHR )
147
180
 
148
- $(document).bind 'drop dragover', (e) ->
149
- e.preventDefault()
150
-
151
181
  upload: ->
152
182
  return if @upload_completed
153
183
  if @file != null && @file_data != null
@@ -178,6 +208,12 @@ class @AnacondaUploadField
178
208
 
179
209
  reset: ->
180
210
  @upload_details_container.html ''
211
+
212
+ stored_privately: ->
213
+ if @acl == "private"
214
+ true
215
+ else
216
+ false
181
217
 
182
218
  file_selected: (data) ->
183
219
  DLog data
@@ -237,16 +273,15 @@ class @AnacondaUploadField
237
273
  # })
238
274
 
239
275
  # DLog "will now fill form #{@upload_complete_form_to_fill}"
240
-
241
- DLog "#{@resource}_#{@attribute}_file_path"
242
276
  hyphenated_resource = @resource.replace(/_/g, "-")
243
277
  hyphenated_attribute = @attribute.replace(/_/g, "-")
244
- DLog "input[data-#{hyphenated_resource}-#{hyphenated_attribute}-file-path]"
245
278
 
246
279
  $( @element_id ).siblings( "input[data-#{hyphenated_resource}-#{hyphenated_attribute}-file-path]" ).val( @key.replace("${filename}", @file.name) )
247
280
  $( @element_id ).siblings( "input[data-#{hyphenated_resource}-#{hyphenated_attribute}-filename]" ).val( @file.name )
248
281
  $( @element_id ).siblings( "input[data-#{hyphenated_resource}-#{hyphenated_attribute}-size]" ).val( @file.size )
249
282
  $( @element_id ).siblings( "input[data-#{hyphenated_resource}-#{hyphenated_attribute}-type]" ).val( @file.type )
283
+ $( @element_id ).siblings( "input[data-#{hyphenated_resource}-#{hyphenated_attribute}-original-filename]" ).val( @file.name )
284
+ $( @element_id ).siblings( "input[data-#{hyphenated_resource}-#{hyphenated_attribute}-stored-privately]" ).val( @stored_privately() )
250
285
 
251
286
  @upload_in_progress = false;
252
287
  @upload_completed = true;
@@ -24,8 +24,9 @@ module Anaconda
24
24
  end
25
25
 
26
26
  uploader = S3Uploader.new(options)
27
-
27
+ output += "<div class='anaconda_dropzone'>"
28
28
  output += self.input_field "file", name: "file", id: element_id, as: :file, data: {url: uploader.url, form_data: uploader.fields.to_json, media_types: Anaconda.js_file_types}
29
+ output += "</div>"
29
30
  end
30
31
 
31
32
  output += self.hidden_field "#{anaconda_field_name}_filename".to_sym, data: {"#{instance.class.to_s.underscore}_#{anaconda_field_name}_filename" => true}
@@ -1,5 +1,5 @@
1
1
  module Anaconda
2
2
  module Rails
3
- VERSION = "0.12.0"
3
+ VERSION = "0.12.1"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: anaconda
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.12.0
4
+ version: 0.12.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ben McFadden
@@ -15,28 +15,28 @@ dependencies:
15
15
  name: jquery-fileupload-rails
16
16
  requirement: !ruby/object:Gem::Requirement
17
17
  requirements:
18
- - - ~>
18
+ - - "~>"
19
19
  - !ruby/object:Gem::Version
20
20
  version: 0.4.1
21
21
  type: :runtime
22
22
  prerelease: false
23
23
  version_requirements: !ruby/object:Gem::Requirement
24
24
  requirements:
25
- - - ~>
25
+ - - "~>"
26
26
  - !ruby/object:Gem::Version
27
27
  version: 0.4.1
28
28
  - !ruby/object:Gem::Dependency
29
29
  name: javascript_dlog-rails
30
30
  requirement: !ruby/object:Gem::Requirement
31
31
  requirements:
32
- - - ~>
32
+ - - "~>"
33
33
  - !ruby/object:Gem::Version
34
34
  version: 1.0.1
35
35
  type: :runtime
36
36
  prerelease: false
37
37
  version_requirements: !ruby/object:Gem::Requirement
38
38
  requirements:
39
- - - ~>
39
+ - - "~>"
40
40
  - !ruby/object:Gem::Version
41
41
  version: 1.0.1
42
42
  description: Dead simple file uploading to S3
@@ -46,8 +46,8 @@ extensions: []
46
46
  extra_rdoc_files:
47
47
  - LICENSE.txt
48
48
  files:
49
- - .document
50
- - .gitignore
49
+ - ".document"
50
+ - ".gitignore"
51
51
  - Gemfile
52
52
  - LICENSE.txt
53
53
  - README.markdown
@@ -83,17 +83,17 @@ require_paths:
83
83
  - lib
84
84
  required_ruby_version: !ruby/object:Gem::Requirement
85
85
  requirements:
86
- - - '>='
86
+ - - ">="
87
87
  - !ruby/object:Gem::Version
88
88
  version: '0'
89
89
  required_rubygems_version: !ruby/object:Gem::Requirement
90
90
  requirements:
91
- - - '>='
91
+ - - ">="
92
92
  - !ruby/object:Gem::Version
93
93
  version: '0'
94
94
  requirements: []
95
95
  rubyforge_project:
96
- rubygems_version: 2.2.1
96
+ rubygems_version: 2.2.2
97
97
  signing_key:
98
98
  specification_version: 4
99
99
  summary: Dead simple file uploading to S3