uploader 0.1.20 → 0.2.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 (125) hide show
  1. data/VERSION +1 -1
  2. data/app/controllers/uploader/uploads_controller.rb +33 -6
  3. data/app/helpers/uploader_helper.rb +21 -3
  4. data/app/views/uploads/_swf_javascript.html.erb +47 -28
  5. data/app/views/uploads/_swf_upload.html.erb +22 -12
  6. data/locales/ar.yml +13 -11
  7. data/locales/bg.yml +13 -11
  8. data/locales/ca.yml +11 -9
  9. data/locales/cs.yml +12 -10
  10. data/locales/da.yml +8 -6
  11. data/locales/de.yml +8 -6
  12. data/locales/el.yml +16 -14
  13. data/locales/en.yml +2 -0
  14. data/locales/es.yml +12 -10
  15. data/locales/et.yml +19 -0
  16. data/locales/fa.yml +19 -0
  17. data/locales/fi.yml +19 -0
  18. data/locales/fr.yml +13 -11
  19. data/locales/gl.yml +19 -0
  20. data/locales/hi.yml +19 -0
  21. data/locales/hr.yml +19 -0
  22. data/locales/hu.yml +19 -0
  23. data/locales/id.yml +19 -0
  24. data/locales/it.yml +13 -11
  25. data/locales/iw.yml +14 -12
  26. data/locales/ja.yml +15 -13
  27. data/locales/ko.yml +12 -10
  28. data/locales/lt.yml +9 -7
  29. data/locales/lv.yml +14 -12
  30. data/locales/mt.yml +19 -0
  31. data/locales/nl.yml +11 -9
  32. data/locales/no.yml +10 -8
  33. data/locales/pl.yml +11 -9
  34. data/locales/pt-PT.yml +19 -0
  35. data/locales/ro.yml +13 -11
  36. data/locales/ru.yml +11 -9
  37. data/locales/sk.yml +13 -11
  38. data/locales/sl.yml +13 -11
  39. data/locales/sq.yml +19 -0
  40. data/locales/sr.yml +14 -12
  41. data/locales/sv.yml +13 -11
  42. data/locales/th.yml +19 -0
  43. data/locales/tl.yml +11 -9
  44. data/locales/tr.yml +19 -0
  45. data/locales/uk.yml +11 -9
  46. data/locales/vi.yml +14 -12
  47. data/locales/zh-CN.yml +11 -9
  48. data/locales/zh-TW.yml +11 -9
  49. data/locales/zh.yml +11 -9
  50. data/public/javascripts/swfupload/handlers.js +12 -17
  51. data/public/stylesheets/swfupload.css +18 -18
  52. data/test/rails_root/Rakefile +2 -0
  53. data/test/rails_root/app/controllers/default_controller.rb +7 -0
  54. data/test/rails_root/app/views/default/index.html.erb +11 -0
  55. data/test/rails_root/app/views/layouts/application.html.erb +5 -1
  56. data/test/rails_root/config/environment.rb +7 -1
  57. data/test/rails_root/config/routes.rb +4 -0
  58. data/test/rails_root/lib/daemons/amazonaws.rb +36 -0
  59. data/test/rails_root/public/images/SWFUploadButton.png +0 -0
  60. data/test/rails_root/public/images/file_icons/excel.gif +0 -0
  61. data/test/rails_root/public/images/file_icons/file.gif +0 -0
  62. data/test/rails_root/public/images/file_icons/file.png +0 -0
  63. data/test/rails_root/public/images/file_icons/file_aac.gif +0 -0
  64. data/test/rails_root/public/images/file_icons/file_ai.gif +0 -0
  65. data/test/rails_root/public/images/file_icons/file_avi.gif +0 -0
  66. data/test/rails_root/public/images/file_icons/file_bin.gif +0 -0
  67. data/test/rails_root/public/images/file_icons/file_bmp.gif +0 -0
  68. data/test/rails_root/public/images/file_icons/file_cue.gif +0 -0
  69. data/test/rails_root/public/images/file_icons/file_divx.gif +0 -0
  70. data/test/rails_root/public/images/file_icons/file_doc.gif +0 -0
  71. data/test/rails_root/public/images/file_icons/file_eps.gif +0 -0
  72. data/test/rails_root/public/images/file_icons/file_flac.gif +0 -0
  73. data/test/rails_root/public/images/file_icons/file_flv.gif +0 -0
  74. data/test/rails_root/public/images/file_icons/file_gif.gif +0 -0
  75. data/test/rails_root/public/images/file_icons/file_html.gif +0 -0
  76. data/test/rails_root/public/images/file_icons/file_ical.gif +0 -0
  77. data/test/rails_root/public/images/file_icons/file_indd.gif +0 -0
  78. data/test/rails_root/public/images/file_icons/file_inx.gif +0 -0
  79. data/test/rails_root/public/images/file_icons/file_iso.gif +0 -0
  80. data/test/rails_root/public/images/file_icons/file_jpg.gif +0 -0
  81. data/test/rails_root/public/images/file_icons/file_mov.gif +0 -0
  82. data/test/rails_root/public/images/file_icons/file_mp3.gif +0 -0
  83. data/test/rails_root/public/images/file_icons/file_mpg.gif +0 -0
  84. data/test/rails_root/public/images/file_icons/file_pdf.gif +0 -0
  85. data/test/rails_root/public/images/file_icons/file_php.gif +0 -0
  86. data/test/rails_root/public/images/file_icons/file_png.gif +0 -0
  87. data/test/rails_root/public/images/file_icons/file_pps.gif +0 -0
  88. data/test/rails_root/public/images/file_icons/file_ppt.gif +0 -0
  89. data/test/rails_root/public/images/file_icons/file_psd.gif +0 -0
  90. data/test/rails_root/public/images/file_icons/file_qxd.gif +0 -0
  91. data/test/rails_root/public/images/file_icons/file_qxp.gif +0 -0
  92. data/test/rails_root/public/images/file_icons/file_raw.gif +0 -0
  93. data/test/rails_root/public/images/file_icons/file_rtf.gif +0 -0
  94. data/test/rails_root/public/images/file_icons/file_svg.gif +0 -0
  95. data/test/rails_root/public/images/file_icons/file_tif.gif +0 -0
  96. data/test/rails_root/public/images/file_icons/file_txt.gif +0 -0
  97. data/test/rails_root/public/images/file_icons/file_vcf.gif +0 -0
  98. data/test/rails_root/public/images/file_icons/file_wav.gif +0 -0
  99. data/test/rails_root/public/images/file_icons/file_wma.gif +0 -0
  100. data/test/rails_root/public/images/file_icons/file_xls.gif +0 -0
  101. data/test/rails_root/public/images/file_icons/file_xml.gif +0 -0
  102. data/test/rails_root/public/images/file_icons/mp3.gif +0 -0
  103. data/test/rails_root/public/images/file_icons/pdf.gif +0 -0
  104. data/test/rails_root/public/images/file_icons/pdf.png +0 -0
  105. data/test/rails_root/public/images/file_icons/text.gif +0 -0
  106. data/test/rails_root/public/images/file_icons/text.png +0 -0
  107. data/test/rails_root/public/images/file_icons/word.gif +0 -0
  108. data/test/rails_root/public/javascripts/jquery/jquery-ui.js +273 -0
  109. data/test/rails_root/public/javascripts/jquery/jquery.easing.js +1 -0
  110. data/test/rails_root/public/javascripts/jquery/jquery.fancybox.js +9 -0
  111. data/test/rails_root/public/javascripts/jquery/jquery.form.js +637 -0
  112. data/test/rails_root/public/javascripts/jquery/jquery.jgrowl.js +2 -0
  113. data/test/rails_root/public/javascripts/jquery/jquery.js +19 -0
  114. data/test/rails_root/public/javascripts/jquery/jquery.tips.js +69 -0
  115. data/test/rails_root/public/javascripts/jquery/jrails.js +1 -0
  116. data/test/rails_root/public/javascripts/swfupload/fileprogress.js +151 -0
  117. data/test/rails_root/public/javascripts/swfupload/handlers.js +201 -0
  118. data/test/rails_root/public/javascripts/swfupload/swfupload.cookies.js +53 -0
  119. data/test/rails_root/public/javascripts/swfupload/swfupload.js +945 -0
  120. data/test/rails_root/public/javascripts/swfupload/swfupload.queue.js +77 -0
  121. data/test/rails_root/public/javascripts/swfupload/swfupload.swfobject.js +110 -0
  122. data/test/rails_root/public/stylesheets/swfupload.css +26 -0
  123. data/test/rails_root/test/functional/default_controller_test.rb +30 -0
  124. data/uploader.gemspec +86 -2
  125. metadata +86 -2
@@ -0,0 +1,77 @@
1
+ /*
2
+ Queue Plug-in
3
+
4
+ Features:
5
+ *Adds a cancelQueue() method for cancelling the entire queue.
6
+ *All queued files are uploaded when startUpload() is called.
7
+ *If false is returned from uploadComplete then the queue upload is stopped.
8
+ If false is not returned (strict comparison) then the queue upload is continued.
9
+ *Adds a QueueComplete event that is fired when all the queued files have finished uploading.
10
+ Set the event handler with the queue_complete_handler setting.
11
+
12
+ */
13
+
14
+ var SWFUpload;
15
+ if (typeof(SWFUpload) === "function") {
16
+ SWFUpload.queue = {};
17
+
18
+ SWFUpload.prototype.initSettings = (function (oldInitSettings) {
19
+ return function () {
20
+ if (typeof(oldInitSettings) === "function") {
21
+ oldInitSettings.call(this);
22
+ }
23
+
24
+ this.customSettings.queue_cancelled_flag = false;
25
+ this.customSettings.queue_upload_count = 0;
26
+
27
+ this.settings.user_upload_complete_handler = this.settings.upload_complete_handler;
28
+ this.settings.upload_complete_handler = SWFUpload.queue.uploadCompleteHandler;
29
+
30
+ this.settings.queue_complete_handler = this.settings.queue_complete_handler || null;
31
+ };
32
+ })(SWFUpload.prototype.initSettings);
33
+
34
+ SWFUpload.prototype.startUpload = function (fileID) {
35
+ this.customSettings.queue_cancelled_flag = false;
36
+ this.callFlash("StartUpload", false, [fileID]);
37
+ };
38
+
39
+ SWFUpload.prototype.cancelQueue = function () {
40
+ this.customSettings.queue_cancelled_flag = true;
41
+ this.stopUpload();
42
+
43
+ var stats = this.getStats();
44
+ while (stats.files_queued > 0) {
45
+ this.cancelUpload();
46
+ stats = this.getStats();
47
+ }
48
+ };
49
+
50
+ SWFUpload.queue.uploadCompleteHandler = function (file) {
51
+ var user_upload_complete_handler = this.settings.user_upload_complete_handler;
52
+ var continueUpload;
53
+
54
+ if (file.file_status === SWFUpload.FILE_STATUS.COMPLETE) {
55
+ this.customSettings.queue_upload_count++;
56
+ }
57
+
58
+ if (typeof(user_upload_complete_handler) === "function") {
59
+ continueUpload = (user_upload_complete_handler.call(this, file) === false) ? false : true;
60
+ } else {
61
+ continueUpload = true;
62
+ }
63
+
64
+ if (continueUpload) {
65
+ var stats = this.getStats();
66
+ if (stats.files_queued > 0 && this.customSettings.queue_cancelled_flag === false) {
67
+ this.startUpload();
68
+ } else if (this.customSettings.queue_cancelled_flag === false) {
69
+ this.queueEvent("queue_complete_handler", [this.customSettings.queue_upload_count]);
70
+ this.customSettings.queue_upload_count = 0;
71
+ } else {
72
+ this.customSettings.queue_cancelled_flag = false;
73
+ this.customSettings.queue_upload_count = 0;
74
+ }
75
+ }
76
+ };
77
+ }
@@ -0,0 +1,110 @@
1
+ /*
2
+ SWFUpload.SWFObject Plugin
3
+
4
+ Summary:
5
+ This plugin uses SWFObject to embed SWFUpload dynamically in the page. SWFObject provides accurate Flash Player detection and DOM Ready loading.
6
+ This plugin replaces the Graceful Degradation plugin.
7
+
8
+ Features:
9
+ * swfupload_load_failed_hander event
10
+ * swfupload_pre_load_handler event
11
+ * minimum_flash_version setting (default: "9.0.28")
12
+ * SWFUpload.onload event for early loading
13
+
14
+ Usage:
15
+ Provide handlers and settings as needed. When using the SWFUpload.SWFObject plugin you should initialize SWFUploading
16
+ in SWFUpload.onload rather than in window.onload. When initialized this way SWFUpload can load earlier preventing the UI flicker
17
+ that was seen using the Graceful Degradation plugin.
18
+
19
+ <script type="text/javascript">
20
+ var swfu;
21
+ SWFUpload.onload = function () {
22
+ swfu = new SWFUpload({
23
+ minimum_flash_version: "9.0.28",
24
+ swfupload_pre_load_handler: swfuploadPreLoad,
25
+ swfupload_load_failed_handler: swfuploadLoadFailed
26
+ });
27
+ };
28
+ </script>
29
+
30
+ Notes:
31
+ You must provide set minimum_flash_version setting to "8" if you are using SWFUpload for Flash Player 8.
32
+ The swfuploadLoadFailed event is only fired if the minimum version of Flash Player is not met. Other issues such as missing SWF files, browser bugs
33
+ or corrupt Flash Player installations will not trigger this event.
34
+ The swfuploadPreLoad event is fired as soon as the minimum version of Flash Player is found. It does not wait for SWFUpload to load and can
35
+ be used to prepare the SWFUploadUI and hide alternate content.
36
+ swfobject's onDomReady event is cross-browser safe but will default to the window.onload event when DOMReady is not supported by the browser.
37
+ Early DOM Loading is supported in major modern browsers but cannot be guaranteed for every browser ever made.
38
+ */
39
+
40
+
41
+ /* SWFObject v2.0 rc4 <http://code.google.com/p/swfobject/>
42
+ Copyright (c) 2007 Geoff Stearns, Michael Williams, and Bobby van der Sluis
43
+ This software is released under the MIT License <http://www.opensource.org/licenses/mit-license.php>
44
+ */
45
+ var swfobject=function(){var X="undefined",P="object",a="visibility:visible",e="visibility:hidden",B="Shockwave Flash",h="ShockwaveFlash.ShockwaveFlash",V="application/x-shockwave-flash",K="SWFObjectExprInst",G=window,g=document,N=navigator,f=[],H=[],Q=null,L=null,S=false,C=false;var Y=function(){var l=typeof g.getElementById!=X&&typeof g.getElementsByTagName!=X&&typeof g.createElement!=X&&typeof g.appendChild!=X&&typeof g.replaceChild!=X&&typeof g.removeChild!=X&&typeof g.cloneNode!=X,t=[0,0,0],n=null;if(typeof N.plugins!=X&&typeof N.plugins[B]==P){n=N.plugins[B].description;if(n){n=n.replace(/^.*\s+(\S+\s+\S+$)/,"$1");t[0]=parseInt(n.replace(/^(.*)\..*$/,"$1"),10);t[1]=parseInt(n.replace(/^.*\.(.*)\s.*$/,"$1"),10);t[2]=/r/.test(n)?parseInt(n.replace(/^.*r(.*)$/,"$1"),10):0}}else{if(typeof G.ActiveXObject!=X){var o=null,s=false;try{o=new ActiveXObject(h+".7")}catch(k){try{o=new ActiveXObject(h+".6");t=[6,0,21];o.AllowScriptAccess="always"}catch(k){if(t[0]==6){s=true}}if(!s){try{o=new ActiveXObject(h)}catch(k){}}}if(!s&&o){try{n=o.GetVariable("$version");if(n){n=n.split(" ")[1].split(",");t=[parseInt(n[0],10),parseInt(n[1],10),parseInt(n[2],10)]}}catch(k){}}}}var v=N.userAgent.toLowerCase(),j=N.platform.toLowerCase(),r=/webkit/.test(v)?parseFloat(v.replace(/^.*webkit\/(\d+(\.\d+)?).*$/,"$1")):false,i=false,q=j?/win/.test(j):/win/.test(v),m=j?/mac/.test(j):/mac/.test(v);/*@cc_on i=true;@if(@_win32)q=true;@elif(@_mac)m=true;@end@*/return{w3cdom:l,pv:t,webkit:r,ie:i,win:q,mac:m}}();var d=function(){if(!Y.w3cdom){return }J(I);if(Y.ie&&Y.win){try{g.write("<script id=__ie_ondomload defer=true src=//:><\/script>");var i=b("__ie_ondomload");if(i){i.onreadystatechange=function(){if(this.readyState=="complete"){this.parentNode.removeChild(this);U()}}}}catch(j){}}if(Y.webkit&&typeof g.readyState!=X){Q=setInterval(function(){if(/loaded|complete/.test(g.readyState)){U()}},10)}if(typeof g.addEventListener!=X){g.addEventListener("DOMContentLoaded",U,null)}M(U)}();function U(){if(S){return }if(Y.ie&&Y.win){var m=W("span");try{var l=g.getElementsByTagName("body")[0].appendChild(m);l.parentNode.removeChild(l)}catch(n){return }}S=true;if(Q){clearInterval(Q);Q=null}var j=f.length;for(var k=0;k<j;k++){f[k]()}}function J(i){if(S){i()}else{f[f.length]=i}}function M(j){if(typeof G.addEventListener!=X){G.addEventListener("load",j,false)}else{if(typeof g.addEventListener!=X){g.addEventListener("load",j,false)}else{if(typeof G.attachEvent!=X){G.attachEvent("onload",j)}else{if(typeof G.onload=="function"){var i=G.onload;G.onload=function(){i();j()}}else{G.onload=j}}}}}function I(){var l=H.length;for(var j=0;j<l;j++){var m=H[j].id;if(Y.pv[0]>0){var k=b(m);if(k){H[j].width=k.getAttribute("width")?k.getAttribute("width"):"0";H[j].height=k.getAttribute("height")?k.getAttribute("height"):"0";if(O(H[j].swfVersion)){if(Y.webkit&&Y.webkit<312){T(k)}}else{if(H[j].expressInstall&&!C&&O("6.0.65")&&(Y.win||Y.mac)){D(H[j])}else{c(k)}}}}A("#"+m,a)}}function T(m){var k=m.getElementsByTagName(P)[0];if(k){var p=W("embed"),r=k.attributes;if(r){var o=r.length;for(var n=0;n<o;n++){if(r[n].nodeName.toLowerCase()=="data"){p.setAttribute("src",r[n].nodeValue)}else{p.setAttribute(r[n].nodeName,r[n].nodeValue)}}}var q=k.childNodes;if(q){var s=q.length;for(var l=0;l<s;l++){if(q[l].nodeType==1&&q[l].nodeName.toLowerCase()=="param"){p.setAttribute(q[l].getAttribute("name"),q[l].getAttribute("value"))}}}m.parentNode.replaceChild(p,m)}}function F(i){if(Y.ie&&Y.win&&O("8.0.0")){G.attachEvent("onunload",function(){var k=b(i);for(var j in k){if(typeof k[j]=="function"){k[j]=function(){}}}k.parentNode.removeChild(k)})}}function D(j){C=true;var o=b(j.id);if(o){if(j.altContentId){var l=b(j.altContentId);if(l){L=l}}else{L=Z(o)}if(!(/%$/.test(j.width))&&parseInt(j.width,10)<310){j.width="310"}if(!(/%$/.test(j.height))&&parseInt(j.height,10)<137){j.height="137"}g.title=g.title.slice(0,47)+" - Flash Player Installation";var n=Y.ie&&Y.win?"ActiveX":"PlugIn",k=g.title,m="MMredirectURL="+G.location+"&MMplayerType="+n+"&MMdoctitle="+k,p=j.id;if(Y.ie&&Y.win&&o.readyState!=4){var i=W("div");p+="SWFObjectNew";i.setAttribute("id",p);o.parentNode.insertBefore(i,o);o.style.display="none";G.attachEvent("onload",function(){o.parentNode.removeChild(o)})}R({data:j.expressInstall,id:K,width:j.width,height:j.height},{flashvars:m},p)}}function c(j){if(Y.ie&&Y.win&&j.readyState!=4){var i=W("div");j.parentNode.insertBefore(i,j);i.parentNode.replaceChild(Z(j),i);j.style.display="none";G.attachEvent("onload",function(){j.parentNode.removeChild(j)})}else{j.parentNode.replaceChild(Z(j),j)}}function Z(n){var m=W("div");if(Y.win&&Y.ie){m.innerHTML=n.innerHTML}else{var k=n.getElementsByTagName(P)[0];if(k){var o=k.childNodes;if(o){var j=o.length;for(var l=0;l<j;l++){if(!(o[l].nodeType==1&&o[l].nodeName.toLowerCase()=="param")&&!(o[l].nodeType==8)){m.appendChild(o[l].cloneNode(true))}}}}}return m}function R(AE,AC,q){var p,t=b(q);if(typeof AE.id==X){AE.id=q}if(Y.ie&&Y.win){var AD="";for(var z in AE){if(AE[z]!=Object.prototype[z]){if(z=="data"){AC.movie=AE[z]}else{if(z.toLowerCase()=="styleclass"){AD+=' class="'+AE[z]+'"'}else{if(z!="classid"){AD+=" "+z+'="'+AE[z]+'"'}}}}}var AB="";for(var y in AC){if(AC[y]!=Object.prototype[y]){AB+='<param name="'+y+'" value="'+AC[y]+'" />'}}t.outerHTML='<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"'+AD+">"+AB+"</object>";F(AE.id);p=b(AE.id)}else{if(Y.webkit&&Y.webkit<312){var AA=W("embed");AA.setAttribute("type",V);for(var x in AE){if(AE[x]!=Object.prototype[x]){if(x=="data"){AA.setAttribute("src",AE[x])}else{if(x.toLowerCase()=="styleclass"){AA.setAttribute("class",AE[x])}else{if(x!="classid"){AA.setAttribute(x,AE[x])}}}}}for(var w in AC){if(AC[w]!=Object.prototype[w]){if(w!="movie"){AA.setAttribute(w,AC[w])}}}t.parentNode.replaceChild(AA,t);p=AA}else{var s=W(P);s.setAttribute("type",V);for(var v in AE){if(AE[v]!=Object.prototype[v]){if(v.toLowerCase()=="styleclass"){s.setAttribute("class",AE[v])}else{if(v!="classid"){s.setAttribute(v,AE[v])}}}}for(var u in AC){if(AC[u]!=Object.prototype[u]&&u!="movie"){E(s,u,AC[u])}}t.parentNode.replaceChild(s,t);p=s}}return p}function E(k,i,j){var l=W("param");l.setAttribute("name",i);l.setAttribute("value",j);k.appendChild(l)}function b(i){return g.getElementById(i)}function W(i){return g.createElement(i)}function O(k){var j=Y.pv,i=k.split(".");i[0]=parseInt(i[0],10);i[1]=parseInt(i[1],10);i[2]=parseInt(i[2],10);return(j[0]>i[0]||(j[0]==i[0]&&j[1]>i[1])||(j[0]==i[0]&&j[1]==i[1]&&j[2]>=i[2]))?true:false}function A(m,j){if(Y.ie&&Y.mac){return }var l=g.getElementsByTagName("head")[0],k=W("style");k.setAttribute("type","text/css");k.setAttribute("media","screen");if(!(Y.ie&&Y.win)&&typeof g.createTextNode!=X){k.appendChild(g.createTextNode(m+" {"+j+"}"))}l.appendChild(k);if(Y.ie&&Y.win&&typeof g.styleSheets!=X&&g.styleSheets.length>0){var i=g.styleSheets[g.styleSheets.length-1];if(typeof i.addRule==P){i.addRule(m,j)}}}return{registerObject:function(l,i,k){if(!Y.w3cdom||!l||!i){return }var j={};j.id=l;j.swfVersion=i;j.expressInstall=k?k:false;H[H.length]=j;A("#"+l,e)},getObjectById:function(l){var i=null;if(Y.w3cdom&&S){var j=b(l);if(j){var k=j.getElementsByTagName(P)[0];if(!k||(k&&typeof j.SetVariable!=X)){i=j}else{if(typeof k.SetVariable!=X){i=k}}}}return i},embedSWF:function(n,u,r,t,j,m,k,p,s){if(!Y.w3cdom||!n||!u||!r||!t||!j){return }r+="";t+="";if(O(j)){A("#"+u,e);var q=(typeof s==P)?s:{};q.data=n;q.width=r;q.height=t;var o=(typeof p==P)?p:{};if(typeof k==P){for(var l in k){if(k[l]!=Object.prototype[l]){if(typeof o.flashvars!=X){o.flashvars+="&"+l+"="+k[l]}else{o.flashvars=l+"="+k[l]}}}}J(function(){R(q,o,u);A("#"+u,a)})}else{if(m&&!C&&O("6.0.65")&&(Y.win||Y.mac)){A("#"+u,e);J(function(){var i={};i.id=i.altContentId=u;i.width=r;i.height=t;i.expressInstall=m;D(i);A("#"+u,a)})}}},getFlashPlayerVersion:function(){return{major:Y.pv[0],minor:Y.pv[1],release:Y.pv[2]}},hasFlashPlayerVersion:O,createSWF:function(k,j,i){if(Y.w3cdom&&S){return R(k,j,i)}else{return undefined}},createCSS:function(j,i){if(Y.w3cdom){A(j,i)}},addDomLoadEvent:J,addLoadEvent:M,getQueryParamValue:function(m){var l=g.location.search||g.location.hash;if(m==null){return l}if(l){var k=l.substring(1).split("&");for(var j=0;j<k.length;j++){if(k[j].substring(0,k[j].indexOf("="))==m){return k[j].substring((k[j].indexOf("=")+1))}}}return""},expressInstallCallback:function(){if(C&&L){var i=b(K);if(i){i.parentNode.replaceChild(L,i);L=null;C=false}}}}}();
46
+
47
+
48
+ var SWFUpload;
49
+ if (typeof(SWFUpload) === "function") {
50
+ SWFUpload.onload = function () {};
51
+
52
+ swfobject.addDomLoadEvent(function () {
53
+ if (typeof(SWFUpload.onload) === "function") {
54
+ SWFUpload.onload.call(window);
55
+ }
56
+ });
57
+
58
+ SWFUpload.prototype.initSettings = (function (oldInitSettings) {
59
+ return function () {
60
+ if (typeof(oldInitSettings) === "function") {
61
+ oldInitSettings.call(this);
62
+ }
63
+
64
+ this.ensureDefault = function (settingName, defaultValue) {
65
+ this.settings[settingName] = (this.settings[settingName] == undefined) ? defaultValue : this.settings[settingName];
66
+ };
67
+
68
+ this.ensureDefault("minimum_flash_version", "9.0.28");
69
+ this.ensureDefault("swfupload_pre_load_handler", null);
70
+ this.ensureDefault("swfupload_load_failed_handler", null);
71
+
72
+ delete this.ensureDefault;
73
+
74
+ };
75
+ })(SWFUpload.prototype.initSettings);
76
+
77
+
78
+ SWFUpload.prototype.loadFlash = function (oldLoadFlash) {
79
+ return function () {
80
+ var hasFlash = swfobject.hasFlashPlayerVersion(this.settings.minimum_flash_version);
81
+
82
+ if (hasFlash) {
83
+ this.queueEvent("swfupload_pre_load_handler");
84
+ if (typeof(oldLoadFlash) === "function") {
85
+ oldLoadFlash.call(this);
86
+ }
87
+ } else {
88
+ this.queueEvent("swfupload_load_failed_handler");
89
+ }
90
+ };
91
+
92
+ }(SWFUpload.prototype.loadFlash);
93
+
94
+ SWFUpload.prototype.displayDebugInfo = function (oldDisplayDebugInfo) {
95
+ return function () {
96
+ if (typeof(oldDisplayDebugInfo) === "function") {
97
+ oldDisplayDebugInfo.call(this);
98
+ }
99
+
100
+ this.debug(
101
+ [
102
+ "SWFUpload.SWFObject Plugin settings:", "\n",
103
+ "\t", "minimum_flash_version: ", this.settings.minimum_flash_version, "\n",
104
+ "\t", "swfupload_pre_load_handler assigned: ", (typeof(this.settings.swfupload_pre_load_handler) === "function").toString(), "\n",
105
+ "\t", "swfupload_load_failed_handler assigned: ", (typeof(this.settings.swfupload_load_failed_handler) === "function").toString(), "\n",
106
+ ].join("")
107
+ );
108
+ };
109
+ }(SWFUpload.prototype.displayDebugInfo);
110
+ }
@@ -0,0 +1,26 @@
1
+ div.uploadStatus{margin:5px;}
2
+ .swf_fs_upload_progress{font-size:1.3em;}
3
+ #deliver-uploads #upload-list{font-size:1.3em;}
4
+ #deliver-uploads #upload-list table {border-collapse:collapse;}
5
+ #deliver-uploads #upload-list td{padding:3px 6px;}
6
+ #deliver-uploads #upload-controls{width:365px;}
7
+ #deliver-uploads .swfupload_container .legend{color:#231F20;font-size:1.1em;font-weight:bold;}
8
+
9
+ .swfupload_container .progressWrapper{width:357px;overflow:hidden;}
10
+ .swfupload_container .progressContainer{margin:5px;padding:4px;border:solid 1px #E8E8E8;background-color:#F7F7F7;overflow:hidden;}
11
+ .swfupload_container .message{margin:1em 0;padding:10px 20px;border:solid 1px #FFDD99;background-color:#FFFFCC;overflow:hidden;}
12
+ .swfupload_container .red{border:solid 1px #B50000;background-color:#FFEBEB;}
13
+ .swfupload_container .green{border:solid 1px #DDF0DD;background-color:#EBFFEB;}
14
+ .swfupload_container .blue{border:solid 1px #CEE2F2;background-color:#F0F5FF;}
15
+ .swfupload_container .progressName{font-size:8pt;font-weight:700;color:#555;width:323px;height:14px;text-align:left;white-space:nowrap;overflow:hidden;}
16
+ .swfupload_container .progressBarInProgress,
17
+ .swfupload_container .progressBarComplete,
18
+ .swfupload_container .progressBarError{font-size:0;width:0%;height:2px;background-color:blue;margin-top:2px;}
19
+ .swfupload_container .progressBarComplete{width:100%;background-color:green;visibility:hidden;}
20
+ .swfupload_container .progressBarError{width:100%;background-color:red;visibility:hidden;}
21
+ .swfupload_container .progressBarStatus{margin-top:2px;width:337px;font-size:7pt;font-family:Arial;text-align:left;white-space:nowrap;}
22
+ .swfupload_container a.progressCancel{font-size:0;display:block;height:14px;width:14px;background-image:url(../images/cancelbutton.gif);background-repeat:no-repeat;background-position:-14px 0px;float:right;}
23
+ .swfupload_container a.progressCancel:hover{background-position:0px 0px;}
24
+
25
+ .swf-error-msg{background-color: #FFFF66; border-top: solid 4px #FF9966; border-bottom: solid 4px #FF9966; margin: 10px 25px; padding: 10px 15px;}
26
+ .swf_cancel_button{margin-left: 2px; height: 22px; font-size: 8pt;}
@@ -0,0 +1,30 @@
1
+ require File.dirname(__FILE__) + '/../test_helper'
2
+
3
+ class DefaultControllerTest < ActionController::TestCase
4
+
5
+ tests DefaultController
6
+
7
+ context "default controller" do
8
+
9
+ context 'on GET to index' do
10
+ # The default view calls the upload_form helper. This isn't a great test but
11
+ # it will make sure it doesn't blow up
12
+ setup do
13
+ @user = Factory(:user)
14
+ get :index, :user_id => @user.to_param
15
+ end
16
+ should_respond_with :success
17
+ should "have a_container_with_a_long_name in the body" do
18
+ assert @response.body.include?('a_container_with_a_long_name')
19
+ end
20
+ should "have '1 MB' in the body" do
21
+ assert @response.body.include?('1 MB')
22
+ end
23
+ should "have '*.jpg' in the body" do
24
+ assert @response.body.include?('*.jpg')
25
+ end
26
+ end
27
+
28
+ end
29
+
30
+ end
data/uploader.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{uploader}
8
- s.version = "0.1.20"
8
+ s.version = "0.2.0"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Justin Ball", "David South"]
12
- s.date = %q{2009-08-12}
12
+ s.date = %q{2009-08-21}
13
13
  s.description = %q{Uploader gem that makes it simple add multiple file uploads to your Rails project using SWFUpload and Paperclip}
14
14
  s.email = %q{justinball@gmail.com}
15
15
  s.extra_rdoc_files = [
@@ -45,24 +45,37 @@ Gem::Specification.new do |s|
45
45
  "locales/el.yml",
46
46
  "locales/en.yml",
47
47
  "locales/es.yml",
48
+ "locales/et.yml",
49
+ "locales/fa.yml",
50
+ "locales/fi.yml",
48
51
  "locales/fr.yml",
52
+ "locales/gl.yml",
53
+ "locales/hi.yml",
54
+ "locales/hr.yml",
55
+ "locales/hu.yml",
56
+ "locales/id.yml",
49
57
  "locales/it.yml",
50
58
  "locales/iw.yml",
51
59
  "locales/ja.yml",
52
60
  "locales/ko.yml",
53
61
  "locales/lt.yml",
54
62
  "locales/lv.yml",
63
+ "locales/mt.yml",
55
64
  "locales/nl.yml",
56
65
  "locales/no.yml",
57
66
  "locales/pl.yml",
67
+ "locales/pt-PT.yml",
58
68
  "locales/pt.yml",
59
69
  "locales/ro.yml",
60
70
  "locales/ru.yml",
61
71
  "locales/sk.yml",
62
72
  "locales/sl.yml",
73
+ "locales/sq.yml",
63
74
  "locales/sr.yml",
64
75
  "locales/sv.yml",
76
+ "locales/th.yml",
65
77
  "locales/tl.yml",
78
+ "locales/tr.yml",
66
79
  "locales/uk.yml",
67
80
  "locales/vi.yml",
68
81
  "locales/zh-CN.yml",
@@ -132,10 +145,12 @@ Gem::Specification.new do |s|
132
145
  "test/rails_root/Capfile",
133
146
  "test/rails_root/Rakefile",
134
147
  "test/rails_root/app/controllers/application_controller.rb",
148
+ "test/rails_root/app/controllers/default_controller.rb",
135
149
  "test/rails_root/app/controllers/uploads_controller.rb",
136
150
  "test/rails_root/app/models/.keep",
137
151
  "test/rails_root/app/models/upload.rb",
138
152
  "test/rails_root/app/models/user.rb",
153
+ "test/rails_root/app/views/default/index.html.erb",
139
154
  "test/rails_root/app/views/layouts/application.html.erb",
140
155
  "test/rails_root/config/amazon_s3.yml",
141
156
  "test/rails_root/config/boot.rb",
@@ -160,24 +175,89 @@ Gem::Specification.new do |s|
160
175
  "test/rails_root/db/test.sqlite3",
161
176
  "test/rails_root/features/step_definitions/webrat_steps.rb",
162
177
  "test/rails_root/features/support/env.rb",
178
+ "test/rails_root/lib/daemons/amazonaws.rb",
163
179
  "test/rails_root/public/.htaccess",
164
180
  "test/rails_root/public/404.html",
165
181
  "test/rails_root/public/422.html",
166
182
  "test/rails_root/public/500.html",
167
183
  "test/rails_root/public/dispatch.rb",
168
184
  "test/rails_root/public/favicon.ico",
185
+ "test/rails_root/public/images/SWFUploadButton.png",
186
+ "test/rails_root/public/images/file_icons/excel.gif",
187
+ "test/rails_root/public/images/file_icons/file.gif",
188
+ "test/rails_root/public/images/file_icons/file.png",
189
+ "test/rails_root/public/images/file_icons/file_aac.gif",
190
+ "test/rails_root/public/images/file_icons/file_ai.gif",
191
+ "test/rails_root/public/images/file_icons/file_avi.gif",
192
+ "test/rails_root/public/images/file_icons/file_bin.gif",
193
+ "test/rails_root/public/images/file_icons/file_bmp.gif",
194
+ "test/rails_root/public/images/file_icons/file_cue.gif",
195
+ "test/rails_root/public/images/file_icons/file_divx.gif",
196
+ "test/rails_root/public/images/file_icons/file_doc.gif",
197
+ "test/rails_root/public/images/file_icons/file_eps.gif",
198
+ "test/rails_root/public/images/file_icons/file_flac.gif",
199
+ "test/rails_root/public/images/file_icons/file_flv.gif",
200
+ "test/rails_root/public/images/file_icons/file_gif.gif",
201
+ "test/rails_root/public/images/file_icons/file_html.gif",
202
+ "test/rails_root/public/images/file_icons/file_ical.gif",
203
+ "test/rails_root/public/images/file_icons/file_indd.gif",
204
+ "test/rails_root/public/images/file_icons/file_inx.gif",
205
+ "test/rails_root/public/images/file_icons/file_iso.gif",
206
+ "test/rails_root/public/images/file_icons/file_jpg.gif",
207
+ "test/rails_root/public/images/file_icons/file_mov.gif",
208
+ "test/rails_root/public/images/file_icons/file_mp3.gif",
209
+ "test/rails_root/public/images/file_icons/file_mpg.gif",
210
+ "test/rails_root/public/images/file_icons/file_pdf.gif",
211
+ "test/rails_root/public/images/file_icons/file_php.gif",
212
+ "test/rails_root/public/images/file_icons/file_png.gif",
213
+ "test/rails_root/public/images/file_icons/file_pps.gif",
214
+ "test/rails_root/public/images/file_icons/file_ppt.gif",
215
+ "test/rails_root/public/images/file_icons/file_psd.gif",
216
+ "test/rails_root/public/images/file_icons/file_qxd.gif",
217
+ "test/rails_root/public/images/file_icons/file_qxp.gif",
218
+ "test/rails_root/public/images/file_icons/file_raw.gif",
219
+ "test/rails_root/public/images/file_icons/file_rtf.gif",
220
+ "test/rails_root/public/images/file_icons/file_svg.gif",
221
+ "test/rails_root/public/images/file_icons/file_tif.gif",
222
+ "test/rails_root/public/images/file_icons/file_txt.gif",
223
+ "test/rails_root/public/images/file_icons/file_vcf.gif",
224
+ "test/rails_root/public/images/file_icons/file_wav.gif",
225
+ "test/rails_root/public/images/file_icons/file_wma.gif",
226
+ "test/rails_root/public/images/file_icons/file_xls.gif",
227
+ "test/rails_root/public/images/file_icons/file_xml.gif",
228
+ "test/rails_root/public/images/file_icons/mp3.gif",
229
+ "test/rails_root/public/images/file_icons/pdf.gif",
230
+ "test/rails_root/public/images/file_icons/pdf.png",
231
+ "test/rails_root/public/images/file_icons/text.gif",
232
+ "test/rails_root/public/images/file_icons/text.png",
233
+ "test/rails_root/public/images/file_icons/word.gif",
169
234
  "test/rails_root/public/images/rails.png",
170
235
  "test/rails_root/public/javascripts/application.js",
171
236
  "test/rails_root/public/javascripts/builder.js",
172
237
  "test/rails_root/public/javascripts/controls.js",
173
238
  "test/rails_root/public/javascripts/dragdrop.js",
174
239
  "test/rails_root/public/javascripts/effects.js",
240
+ "test/rails_root/public/javascripts/jquery/jquery-ui.js",
241
+ "test/rails_root/public/javascripts/jquery/jquery.easing.js",
242
+ "test/rails_root/public/javascripts/jquery/jquery.fancybox.js",
243
+ "test/rails_root/public/javascripts/jquery/jquery.form.js",
244
+ "test/rails_root/public/javascripts/jquery/jquery.jgrowl.js",
245
+ "test/rails_root/public/javascripts/jquery/jquery.js",
246
+ "test/rails_root/public/javascripts/jquery/jquery.tips.js",
247
+ "test/rails_root/public/javascripts/jquery/jrails.js",
175
248
  "test/rails_root/public/javascripts/prototype.js",
176
249
  "test/rails_root/public/javascripts/scriptaculous.js",
177
250
  "test/rails_root/public/javascripts/slider.js",
178
251
  "test/rails_root/public/javascripts/sound.js",
252
+ "test/rails_root/public/javascripts/swfupload/fileprogress.js",
253
+ "test/rails_root/public/javascripts/swfupload/handlers.js",
254
+ "test/rails_root/public/javascripts/swfupload/swfupload.cookies.js",
255
+ "test/rails_root/public/javascripts/swfupload/swfupload.js",
256
+ "test/rails_root/public/javascripts/swfupload/swfupload.queue.js",
257
+ "test/rails_root/public/javascripts/swfupload/swfupload.swfobject.js",
179
258
  "test/rails_root/public/robots.txt",
180
259
  "test/rails_root/public/stylesheets/.keep",
260
+ "test/rails_root/public/stylesheets/swfupload.css",
181
261
  "test/rails_root/script/about",
182
262
  "test/rails_root/script/breakpointer",
183
263
  "test/rails_root/script/console",
@@ -199,6 +279,7 @@ Gem::Specification.new do |s|
199
279
  "test/rails_root/test/fixtures/files/5k.png",
200
280
  "test/rails_root/test/fixtures/files/IT'sUPPERCASE!AND WeIRD.JPG",
201
281
  "test/rails_root/test/functional/.keep",
282
+ "test/rails_root/test/functional/default_controller_test.rb",
202
283
  "test/rails_root/test/functional/uploads_controller_test.rb",
203
284
  "test/rails_root/test/integration/.keep",
204
285
  "test/rails_root/test/mocks/development/.keep",
@@ -219,6 +300,7 @@ Gem::Specification.new do |s|
219
300
  s.summary = %q{SWFUpload + Paperclip wrapped in an engine with love.}
220
301
  s.test_files = [
221
302
  "test/rails_root/app/controllers/application_controller.rb",
303
+ "test/rails_root/app/controllers/default_controller.rb",
222
304
  "test/rails_root/app/controllers/uploads_controller.rb",
223
305
  "test/rails_root/app/models/upload.rb",
224
306
  "test/rails_root/app/models/user.rb",
@@ -238,9 +320,11 @@ Gem::Specification.new do |s|
238
320
  "test/rails_root/db/migrate/20090602041838_create_users.rb",
239
321
  "test/rails_root/features/step_definitions/webrat_steps.rb",
240
322
  "test/rails_root/features/support/env.rb",
323
+ "test/rails_root/lib/daemons/amazonaws.rb",
241
324
  "test/rails_root/public/dispatch.rb",
242
325
  "test/rails_root/script/create_project.rb",
243
326
  "test/rails_root/test/factories.rb",
327
+ "test/rails_root/test/functional/default_controller_test.rb",
244
328
  "test/rails_root/test/functional/uploads_controller_test.rb",
245
329
  "test/rails_root/test/shoulda_macros/paperclip.rb",
246
330
  "test/rails_root/test/test_helper.rb",
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: uploader
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.20
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Justin Ball
@@ -10,7 +10,7 @@ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
12
 
13
- date: 2009-08-12 00:00:00 -06:00
13
+ date: 2009-08-21 00:00:00 -06:00
14
14
  default_executable:
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
@@ -71,24 +71,37 @@ files:
71
71
  - locales/el.yml
72
72
  - locales/en.yml
73
73
  - locales/es.yml
74
+ - locales/et.yml
75
+ - locales/fa.yml
76
+ - locales/fi.yml
74
77
  - locales/fr.yml
78
+ - locales/gl.yml
79
+ - locales/hi.yml
80
+ - locales/hr.yml
81
+ - locales/hu.yml
82
+ - locales/id.yml
75
83
  - locales/it.yml
76
84
  - locales/iw.yml
77
85
  - locales/ja.yml
78
86
  - locales/ko.yml
79
87
  - locales/lt.yml
80
88
  - locales/lv.yml
89
+ - locales/mt.yml
81
90
  - locales/nl.yml
82
91
  - locales/no.yml
83
92
  - locales/pl.yml
93
+ - locales/pt-PT.yml
84
94
  - locales/pt.yml
85
95
  - locales/ro.yml
86
96
  - locales/ru.yml
87
97
  - locales/sk.yml
88
98
  - locales/sl.yml
99
+ - locales/sq.yml
89
100
  - locales/sr.yml
90
101
  - locales/sv.yml
102
+ - locales/th.yml
91
103
  - locales/tl.yml
104
+ - locales/tr.yml
92
105
  - locales/uk.yml
93
106
  - locales/vi.yml
94
107
  - locales/zh-CN.yml
@@ -158,10 +171,12 @@ files:
158
171
  - test/rails_root/Capfile
159
172
  - test/rails_root/Rakefile
160
173
  - test/rails_root/app/controllers/application_controller.rb
174
+ - test/rails_root/app/controllers/default_controller.rb
161
175
  - test/rails_root/app/controllers/uploads_controller.rb
162
176
  - test/rails_root/app/models/.keep
163
177
  - test/rails_root/app/models/upload.rb
164
178
  - test/rails_root/app/models/user.rb
179
+ - test/rails_root/app/views/default/index.html.erb
165
180
  - test/rails_root/app/views/layouts/application.html.erb
166
181
  - test/rails_root/config/amazon_s3.yml
167
182
  - test/rails_root/config/boot.rb
@@ -186,24 +201,89 @@ files:
186
201
  - test/rails_root/db/test.sqlite3
187
202
  - test/rails_root/features/step_definitions/webrat_steps.rb
188
203
  - test/rails_root/features/support/env.rb
204
+ - test/rails_root/lib/daemons/amazonaws.rb
189
205
  - test/rails_root/public/.htaccess
190
206
  - test/rails_root/public/404.html
191
207
  - test/rails_root/public/422.html
192
208
  - test/rails_root/public/500.html
193
209
  - test/rails_root/public/dispatch.rb
194
210
  - test/rails_root/public/favicon.ico
211
+ - test/rails_root/public/images/SWFUploadButton.png
212
+ - test/rails_root/public/images/file_icons/excel.gif
213
+ - test/rails_root/public/images/file_icons/file.gif
214
+ - test/rails_root/public/images/file_icons/file.png
215
+ - test/rails_root/public/images/file_icons/file_aac.gif
216
+ - test/rails_root/public/images/file_icons/file_ai.gif
217
+ - test/rails_root/public/images/file_icons/file_avi.gif
218
+ - test/rails_root/public/images/file_icons/file_bin.gif
219
+ - test/rails_root/public/images/file_icons/file_bmp.gif
220
+ - test/rails_root/public/images/file_icons/file_cue.gif
221
+ - test/rails_root/public/images/file_icons/file_divx.gif
222
+ - test/rails_root/public/images/file_icons/file_doc.gif
223
+ - test/rails_root/public/images/file_icons/file_eps.gif
224
+ - test/rails_root/public/images/file_icons/file_flac.gif
225
+ - test/rails_root/public/images/file_icons/file_flv.gif
226
+ - test/rails_root/public/images/file_icons/file_gif.gif
227
+ - test/rails_root/public/images/file_icons/file_html.gif
228
+ - test/rails_root/public/images/file_icons/file_ical.gif
229
+ - test/rails_root/public/images/file_icons/file_indd.gif
230
+ - test/rails_root/public/images/file_icons/file_inx.gif
231
+ - test/rails_root/public/images/file_icons/file_iso.gif
232
+ - test/rails_root/public/images/file_icons/file_jpg.gif
233
+ - test/rails_root/public/images/file_icons/file_mov.gif
234
+ - test/rails_root/public/images/file_icons/file_mp3.gif
235
+ - test/rails_root/public/images/file_icons/file_mpg.gif
236
+ - test/rails_root/public/images/file_icons/file_pdf.gif
237
+ - test/rails_root/public/images/file_icons/file_php.gif
238
+ - test/rails_root/public/images/file_icons/file_png.gif
239
+ - test/rails_root/public/images/file_icons/file_pps.gif
240
+ - test/rails_root/public/images/file_icons/file_ppt.gif
241
+ - test/rails_root/public/images/file_icons/file_psd.gif
242
+ - test/rails_root/public/images/file_icons/file_qxd.gif
243
+ - test/rails_root/public/images/file_icons/file_qxp.gif
244
+ - test/rails_root/public/images/file_icons/file_raw.gif
245
+ - test/rails_root/public/images/file_icons/file_rtf.gif
246
+ - test/rails_root/public/images/file_icons/file_svg.gif
247
+ - test/rails_root/public/images/file_icons/file_tif.gif
248
+ - test/rails_root/public/images/file_icons/file_txt.gif
249
+ - test/rails_root/public/images/file_icons/file_vcf.gif
250
+ - test/rails_root/public/images/file_icons/file_wav.gif
251
+ - test/rails_root/public/images/file_icons/file_wma.gif
252
+ - test/rails_root/public/images/file_icons/file_xls.gif
253
+ - test/rails_root/public/images/file_icons/file_xml.gif
254
+ - test/rails_root/public/images/file_icons/mp3.gif
255
+ - test/rails_root/public/images/file_icons/pdf.gif
256
+ - test/rails_root/public/images/file_icons/pdf.png
257
+ - test/rails_root/public/images/file_icons/text.gif
258
+ - test/rails_root/public/images/file_icons/text.png
259
+ - test/rails_root/public/images/file_icons/word.gif
195
260
  - test/rails_root/public/images/rails.png
196
261
  - test/rails_root/public/javascripts/application.js
197
262
  - test/rails_root/public/javascripts/builder.js
198
263
  - test/rails_root/public/javascripts/controls.js
199
264
  - test/rails_root/public/javascripts/dragdrop.js
200
265
  - test/rails_root/public/javascripts/effects.js
266
+ - test/rails_root/public/javascripts/jquery/jquery-ui.js
267
+ - test/rails_root/public/javascripts/jquery/jquery.easing.js
268
+ - test/rails_root/public/javascripts/jquery/jquery.fancybox.js
269
+ - test/rails_root/public/javascripts/jquery/jquery.form.js
270
+ - test/rails_root/public/javascripts/jquery/jquery.jgrowl.js
271
+ - test/rails_root/public/javascripts/jquery/jquery.js
272
+ - test/rails_root/public/javascripts/jquery/jquery.tips.js
273
+ - test/rails_root/public/javascripts/jquery/jrails.js
201
274
  - test/rails_root/public/javascripts/prototype.js
202
275
  - test/rails_root/public/javascripts/scriptaculous.js
203
276
  - test/rails_root/public/javascripts/slider.js
204
277
  - test/rails_root/public/javascripts/sound.js
278
+ - test/rails_root/public/javascripts/swfupload/fileprogress.js
279
+ - test/rails_root/public/javascripts/swfupload/handlers.js
280
+ - test/rails_root/public/javascripts/swfupload/swfupload.cookies.js
281
+ - test/rails_root/public/javascripts/swfupload/swfupload.js
282
+ - test/rails_root/public/javascripts/swfupload/swfupload.queue.js
283
+ - test/rails_root/public/javascripts/swfupload/swfupload.swfobject.js
205
284
  - test/rails_root/public/robots.txt
206
285
  - test/rails_root/public/stylesheets/.keep
286
+ - test/rails_root/public/stylesheets/swfupload.css
207
287
  - test/rails_root/script/about
208
288
  - test/rails_root/script/breakpointer
209
289
  - test/rails_root/script/console
@@ -225,6 +305,7 @@ files:
225
305
  - test/rails_root/test/fixtures/files/5k.png
226
306
  - test/rails_root/test/fixtures/files/IT'sUPPERCASE!AND WeIRD.JPG
227
307
  - test/rails_root/test/functional/.keep
308
+ - test/rails_root/test/functional/default_controller_test.rb
228
309
  - test/rails_root/test/functional/uploads_controller_test.rb
229
310
  - test/rails_root/test/integration/.keep
230
311
  - test/rails_root/test/mocks/development/.keep
@@ -263,6 +344,7 @@ specification_version: 2
263
344
  summary: SWFUpload + Paperclip wrapped in an engine with love.
264
345
  test_files:
265
346
  - test/rails_root/app/controllers/application_controller.rb
347
+ - test/rails_root/app/controllers/default_controller.rb
266
348
  - test/rails_root/app/controllers/uploads_controller.rb
267
349
  - test/rails_root/app/models/upload.rb
268
350
  - test/rails_root/app/models/user.rb
@@ -282,9 +364,11 @@ test_files:
282
364
  - test/rails_root/db/migrate/20090602041838_create_users.rb
283
365
  - test/rails_root/features/step_definitions/webrat_steps.rb
284
366
  - test/rails_root/features/support/env.rb
367
+ - test/rails_root/lib/daemons/amazonaws.rb
285
368
  - test/rails_root/public/dispatch.rb
286
369
  - test/rails_root/script/create_project.rb
287
370
  - test/rails_root/test/factories.rb
371
+ - test/rails_root/test/functional/default_controller_test.rb
288
372
  - test/rails_root/test/functional/uploads_controller_test.rb
289
373
  - test/rails_root/test/shoulda_macros/paperclip.rb
290
374
  - test/rails_root/test/test_helper.rb