uploader 3.0.2 → 3.1.0
Sign up to get free protection for your applications and to get access to all the features.
- data/README.rdoc +15 -0
- data/VERSION +1 -1
- data/app/controllers/uploader/uploads_controller.rb +14 -4
- data/lib/uploader/config.rb +6 -4
- data/lib/uploader/models/upload.rb +10 -2
- data/test/rails_test/:rails_test/public/system/locals/000/000/001/icon/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/001/large/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/001/medium/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/001/original/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/001/small/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/001/thumb/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/002/icon/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/002/large/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/002/medium/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/002/original/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/002/small/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/002/thumb/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/003/icon/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/003/large/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/003/medium/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/003/original/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/003/small/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/003/thumb/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/004/icon/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/004/large/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/004/medium/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/004/original/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/004/small/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/004/thumb/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/005/original/test.doc +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/006/icon/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/006/large/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/006/medium/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/006/original/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/006/small/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/006/thumb/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/007/original/test.pdf +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/008/icon/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/008/large/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/008/medium/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/008/original/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/008/small/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/008/thumb/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/009/icon/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/009/large/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/009/medium/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/009/original/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/009/small/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/009/thumb/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/010/original/test.doc +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/011/icon/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/011/large/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/011/medium/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/011/original/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/011/small/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/011/thumb/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/012/icon/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/012/large/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/012/medium/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/012/original/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/012/small/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/012/thumb/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/013/icon/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/013/large/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/013/medium/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/013/original/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/013/small/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/013/thumb/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/014/icon/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/014/large/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/014/medium/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/014/original/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/014/small/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/014/thumb/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/015/icon/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/015/large/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/015/medium/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/015/original/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/015/small/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/015/thumb/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/016/icon/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/016/large/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/016/medium/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/016/original/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/016/small/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/016/thumb/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/017/icon/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/017/large/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/017/medium/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/017/original/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/017/small/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/017/thumb/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/018/icon/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/018/large/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/018/medium/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/018/original/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/018/small/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/018/thumb/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/019/icon/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/019/large/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/019/medium/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/019/original/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/019/small/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/019/thumb/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/020/icon/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/020/large/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/020/medium/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/020/original/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/020/small/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/020/thumb/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/024/icon/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/024/large/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/024/medium/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/024/original/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/024/small/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/024/thumb/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/025/icon/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/025/large/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/025/medium/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/025/original/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/025/small/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/025/thumb/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/026/icon/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/026/large/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/026/medium/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/026/original/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/026/small/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/026/thumb/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/027/icon/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/027/large/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/027/medium/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/027/original/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/027/small/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/027/thumb/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/028/original/test.doc +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/029/original/test.doc +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/030/original/test.doc +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/031/original/test.doc +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/032/original/test.xls +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/033/original/test.xls +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/034/original/test.xls +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/035/original/test.xls +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/036/icon/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/036/large/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/036/medium/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/036/original/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/036/small/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/036/thumb/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/037/icon/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/037/large/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/037/medium/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/037/original/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/037/small/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/037/thumb/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/038/icon/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/038/large/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/038/medium/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/038/original/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/038/small/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/038/thumb/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/039/icon/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/039/large/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/039/medium/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/039/original/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/039/small/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/039/thumb/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/040/original/test.pdf +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/041/original/test.pdf +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/042/original/test.pdf +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/043/original/test.pdf +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/044/original/test.txt +1 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/045/original/test.txt +1 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/046/original/test.txt +1 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/047/original/test.txt +1 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/048/original/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/049/original/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/050/icon/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/050/large/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/050/medium/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/050/original/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/050/small/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/050/thumb/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/051/icon/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/051/large/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/051/medium/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/051/original/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/051/small/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/051/thumb/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/052/icon/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/052/large/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/052/medium/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/052/original/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/052/small/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/052/thumb/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/053/icon/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/053/large/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/053/medium/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/053/original/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/053/small/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/053/thumb/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/054/icon/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/054/large/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/054/medium/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/054/original/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/054/small/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/054/thumb/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/055/icon/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/055/large/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/055/medium/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/055/original/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/055/small/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/055/thumb/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/056/icon/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/056/large/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/056/medium/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/056/original/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/056/small/rails.png +0 -0
- data/test/rails_test/:rails_test/public/system/locals/000/000/056/thumb/rails.png +0 -0
- data/test/rails_test/Gemfile.lock +47 -36
- data/test/rails_test/test/functional/uploads_controller_test.rb +22 -0
- data/test/rails_test/test/test_helper.rb +6 -0
- data/test/rails_test/test/unit/upload_test.rb +9 -0
- data/uploader.gemspec +495 -319
- metadata +222 -41
- data/.gitignore +0 -5
data/README.rdoc
CHANGED
@@ -193,6 +193,19 @@ SWFUpload version:
|
|
193
193
|
|
194
194
|
See the uploader_helper.rb file for options. parent_object should be the object which owns the uploads. ie a user, photo_album, etc.
|
195
195
|
|
196
|
+
=== Support for Html 5 Drag and Drop file uploads
|
197
|
+
The new XMLHttpRequest object will submit the raw file data as the only data in the request. Uploader provides support for this functionality.
|
198
|
+
The file name should be specified in the header. "X-File-Upload" must be set to true or the request will be ignored.
|
199
|
+
Here's an example of how to send data:
|
200
|
+
|
201
|
+
var xhr = new XMLHttpRequest();
|
202
|
+
xhr.open('POST', '/uploads', true);
|
203
|
+
xhr.setRequestHeader("Content-Type", file.type);
|
204
|
+
xhr.setRequestHeader("X-File-Name", file.fileName);
|
205
|
+
xhr.setRequestHeader("X-File-Size", file.fileSize);
|
206
|
+
xhr.setRequestHeader("X-File-Upload", true);
|
207
|
+
xhr.send(file);
|
208
|
+
|
196
209
|
=== Rake Tasks
|
197
210
|
|
198
211
|
rake uploader:sync # will copy all required assets (css, javascript, images, migrations, etc) from uploadify into your project
|
@@ -310,10 +323,12 @@ Say you have chosen to display your upload in a table. Your code might look lik
|
|
310
323
|
|
311
324
|
I put the following in my main upload view
|
312
325
|
<% content_for :javascript do -%>
|
326
|
+
<script type="text/javascript" language="JavaScript">
|
313
327
|
setup_submit_delete();
|
314
328
|
function upload_completed_callback(data){
|
315
329
|
jQuery('#upload-list').prepend(data);
|
316
330
|
}
|
331
|
+
</script>
|
317
332
|
<% end -%>
|
318
333
|
|
319
334
|
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
3.0
|
1
|
+
3.1.0
|
@@ -6,14 +6,23 @@ class Uploader::UploadsController < ApplicationController
|
|
6
6
|
before_filter :set_upload_for_destroy, :only => [:destroy]
|
7
7
|
|
8
8
|
def create
|
9
|
-
# Standard, one-at-a-time, upload action
|
10
|
-
|
9
|
+
# Standard, one-at-a-time, upload action
|
10
|
+
if request.env['HTTP_X_FILE_UPLOAD'] == 'true'
|
11
|
+
tempfile = Tempfile.new(request.env['HTTP_X_FILE_NAME'], Uploader.configuration.temp_dir)
|
12
|
+
tempfile << request.env['rack.input'].read
|
13
|
+
tempfile.flush
|
14
|
+
tempfile.rewind
|
15
|
+
@upload = Upload.new(:name => request.env['HTTP_X_FILE_NAME'], :hard_file_name => request.env['HTTP_X_FILE_NAME'])
|
16
|
+
# NOTE hard_file_name MUST be set before setting local or paperclip will process the file before the hard_file_name is set
|
17
|
+
@upload.local = tempfile
|
18
|
+
else
|
19
|
+
@upload = Upload.new(params[:upload])
|
20
|
+
end
|
11
21
|
@upload.uploadable = @parent
|
12
22
|
@upload.creator = get_creator
|
13
|
-
@upload.save!
|
23
|
+
@upload.save!
|
14
24
|
message = t('uploader.successful_upload')
|
15
25
|
upload_json = basic_uploads_json(@upload)
|
16
|
-
|
17
26
|
respond_to do |format|
|
18
27
|
format.html do
|
19
28
|
flash[:notice] = message
|
@@ -31,6 +40,7 @@ class Uploader::UploadsController < ApplicationController
|
|
31
40
|
end
|
32
41
|
format.js { render :text => message }
|
33
42
|
format.json { render :json => { :success => false, :message => message } }
|
43
|
+
# render :json => message, :status => :unprocessable_entity
|
34
44
|
end
|
35
45
|
end
|
36
46
|
|
data/lib/uploader/config.rb
CHANGED
@@ -6,8 +6,8 @@
|
|
6
6
|
# config.s3_no_wait = true
|
7
7
|
# config.keep_local_file = true
|
8
8
|
# config.has_attached_file_options = {
|
9
|
-
# :url
|
10
|
-
# :path
|
9
|
+
# :url => "/system/:attachment/:id_partition/:style/:basename.:extension",
|
10
|
+
# :path => ":rails_root/public:url",
|
11
11
|
# :styles => { :icon => "30x30!",
|
12
12
|
# :thumb => "100>",
|
13
13
|
# :small => "150>",
|
@@ -41,15 +41,17 @@ module Uploader
|
|
41
41
|
attr_accessor :s3_no_wait
|
42
42
|
attr_accessor :keep_local_file
|
43
43
|
attr_accessor :disable_halt_nonimage_processing
|
44
|
+
attr_accessor :temp_dir
|
44
45
|
|
45
46
|
def initialize
|
46
47
|
@enable_s3 = false
|
47
48
|
@s3_no_wait = false
|
48
49
|
@keep_local_file = true
|
49
50
|
@disable_halt_nonimage_processing = false
|
51
|
+
@temp_dir = Dir::tmpdir
|
50
52
|
@has_attached_file_options = {
|
51
|
-
:url
|
52
|
-
:path
|
53
|
+
:url => "/system/:attachment/:id_partition/:style/:basename.:extension",
|
54
|
+
:path => ":rails_root/public:url",
|
53
55
|
:styles => { :icon => "30x30!",
|
54
56
|
:thumb => "100>",
|
55
57
|
:small => "150>",
|
@@ -8,7 +8,7 @@ module Uploader
|
|
8
8
|
included do
|
9
9
|
|
10
10
|
scope :newest, order("created_at DESC")
|
11
|
-
scope :by_filename, order("local_file_name
|
11
|
+
scope :by_filename, order("local_file_name ASC")
|
12
12
|
scope :newest, order("created_at DESC")
|
13
13
|
scope :is_public, where('is_public = true')
|
14
14
|
scope :images, where("local_content_type IN (#{Uploader::MimeTypeGroups::IMAGE_TYPES.collect{|type| "'#{type}'"}.join(',')})")
|
@@ -27,10 +27,13 @@ module Uploader
|
|
27
27
|
|
28
28
|
before_save :determine_immediate_send_to_remote
|
29
29
|
|
30
|
+
before_post_process :set_hard_file_name
|
30
31
|
before_post_process :transliterate_file_name
|
31
32
|
before_post_process :halt_nonimage_processing unless Uploader.configuration.disable_halt_nonimage_processing
|
32
33
|
before_create :add_width_and_height
|
33
34
|
|
35
|
+
attr_accessor :hard_file_name
|
36
|
+
|
34
37
|
# Protect data in the model
|
35
38
|
attr_protected :creator_id, :uploadable_id, :uploadable_type
|
36
39
|
end
|
@@ -190,9 +193,14 @@ module Uploader
|
|
190
193
|
|
191
194
|
protected
|
192
195
|
|
196
|
+
def set_hard_file_name
|
197
|
+
name = @hard_file_name || local_file_name
|
198
|
+
self.local.instance_write(:file_name, name)
|
199
|
+
end
|
200
|
+
|
193
201
|
def transliterate_file_name
|
194
202
|
extension = File.extname(local_file_name).gsub(/^\.+/, '')
|
195
|
-
filename = local_file_name.gsub(/\.#{extension}$/, '')
|
203
|
+
filename = local_file_name.gsub(/\.#{extension}$/, '')
|
196
204
|
self.local.instance_write(:file_name, "#{transliterate(filename)}.#{transliterate(extension)}")
|
197
205
|
end
|
198
206
|
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|