saphira 0.1.0 → 0.1.1.beta1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (665) hide show
  1. data/app/assets/images/saphira/cancel.png +0 -0
  2. data/app/assets/images/saphira/com/adobe/air/logging/FileTarget.as +98 -0
  3. data/app/assets/images/saphira/com/adobe/crypto/HMAC.as +127 -0
  4. data/app/assets/images/saphira/com/adobe/crypto/MD5.as +281 -0
  5. data/app/assets/images/saphira/com/adobe/crypto/MD5Stream.as +402 -0
  6. data/app/assets/images/saphira/com/adobe/crypto/SHA1.as +271 -0
  7. data/app/assets/images/saphira/com/adobe/crypto/SHA224.as +257 -0
  8. data/app/assets/images/saphira/com/adobe/crypto/SHA256.as +261 -0
  9. data/app/assets/images/saphira/com/adobe/crypto/WSSEUsernameToken.as +114 -0
  10. data/app/assets/images/saphira/com/adobe/errors/IllegalStateError.as +63 -0
  11. data/app/assets/images/saphira/com/adobe/fileformats/vcard/Address.as +47 -0
  12. data/app/assets/images/saphira/com/adobe/fileformats/vcard/Email.as +39 -0
  13. data/app/assets/images/saphira/com/adobe/fileformats/vcard/Phone.as +39 -0
  14. data/app/assets/images/saphira/com/adobe/fileformats/vcard/VCard.as +54 -0
  15. data/app/assets/images/saphira/com/adobe/fileformats/vcard/VCardParser.as +246 -0
  16. data/app/assets/images/saphira/com/adobe/images/BitString.as +39 -0
  17. data/app/assets/images/saphira/com/adobe/images/JPGEncoder.as +648 -0
  18. data/app/assets/images/saphira/com/adobe/images/PNGEncoder.as +141 -0
  19. data/app/assets/images/saphira/com/adobe/net/DynamicURLLoader.as +55 -0
  20. data/app/assets/images/saphira/com/adobe/net/IURIResolver.as +76 -0
  21. data/app/assets/images/saphira/com/adobe/net/MimeTypeMap.as +196 -0
  22. data/app/assets/images/saphira/com/adobe/net/URI.as +2466 -0
  23. data/app/assets/images/saphira/com/adobe/net/URIEncodingBitmap.as +139 -0
  24. data/app/assets/images/saphira/com/adobe/net/proxies/RFC2817Socket.as +198 -0
  25. data/app/assets/images/saphira/com/adobe/protocols/dict/Database.as +34 -0
  26. data/app/assets/images/saphira/com/adobe/protocols/dict/Definition.as +39 -0
  27. data/app/assets/images/saphira/com/adobe/protocols/dict/Dict.as +328 -0
  28. data/app/assets/images/saphira/com/adobe/protocols/dict/DictionaryServer.as +28 -0
  29. data/app/assets/images/saphira/com/adobe/protocols/dict/MatchStrategy.as +34 -0
  30. data/app/assets/images/saphira/com/adobe/protocols/dict/Response.as +39 -0
  31. data/app/assets/images/saphira/com/adobe/protocols/dict/events/ConnectedEvent.as +14 -0
  32. data/app/assets/images/saphira/com/adobe/protocols/dict/events/DatabaseEvent.as +26 -0
  33. data/app/assets/images/saphira/com/adobe/protocols/dict/events/DefinitionEvent.as +27 -0
  34. data/app/assets/images/saphira/com/adobe/protocols/dict/events/DefinitionHeaderEvent.as +26 -0
  35. data/app/assets/images/saphira/com/adobe/protocols/dict/events/DictionaryServerEvent.as +26 -0
  36. data/app/assets/images/saphira/com/adobe/protocols/dict/events/DisconnectedEvent.as +14 -0
  37. data/app/assets/images/saphira/com/adobe/protocols/dict/events/ErrorEvent.as +37 -0
  38. data/app/assets/images/saphira/com/adobe/protocols/dict/events/MatchEvent.as +26 -0
  39. data/app/assets/images/saphira/com/adobe/protocols/dict/events/MatchStrategiesEvent.as +26 -0
  40. data/app/assets/images/saphira/com/adobe/protocols/dict/events/NoMatchEvent.as +14 -0
  41. data/app/assets/images/saphira/com/adobe/protocols/dict/util/CompleteResponseEvent.as +25 -0
  42. data/app/assets/images/saphira/com/adobe/protocols/dict/util/SocketHelper.as +49 -0
  43. data/app/assets/images/saphira/com/adobe/serialization/json/JSON.as +85 -0
  44. data/app/assets/images/saphira/com/adobe/serialization/json/JSONDecoder.as +221 -0
  45. data/app/assets/images/saphira/com/adobe/serialization/json/JSONEncoder.as +299 -0
  46. data/app/assets/images/saphira/com/adobe/serialization/json/JSONParseError.as +87 -0
  47. data/app/assets/images/saphira/com/adobe/serialization/json/JSONToken.as +104 -0
  48. data/app/assets/images/saphira/com/adobe/serialization/json/JSONTokenType.as +67 -0
  49. data/app/assets/images/saphira/com/adobe/serialization/json/JSONTokenizer.as +583 -0
  50. data/app/assets/images/saphira/com/adobe/utils/ArrayUtil.as +187 -0
  51. data/app/assets/images/saphira/com/adobe/utils/DateUtil.as +699 -0
  52. data/app/assets/images/saphira/com/adobe/utils/DictionaryUtil.as +87 -0
  53. data/app/assets/images/saphira/com/adobe/utils/IntUtil.as +99 -0
  54. data/app/assets/images/saphira/com/adobe/utils/NumberFormatter.as +74 -0
  55. data/app/assets/images/saphira/com/adobe/utils/StringUtil.as +270 -0
  56. data/app/assets/images/saphira/com/adobe/utils/XMLUtil.as +168 -0
  57. data/app/assets/images/saphira/com/adobe/webapis/ServiceBase.as +48 -0
  58. data/app/assets/images/saphira/com/adobe/webapis/URLLoaderBase.as +108 -0
  59. data/app/assets/images/saphira/com/adobe/webapis/events/ServiceEvent.as +75 -0
  60. data/app/assets/images/saphira/expressInstall.swf +0 -0
  61. data/app/assets/images/saphira/jcrop.gif +0 -0
  62. data/app/assets/images/saphira/uploadify.allglyphs.swf +0 -0
  63. data/app/assets/images/saphira/uploadify.fla +0 -0
  64. data/app/assets/images/saphira/uploadify.swf +0 -0
  65. data/app/assets/javascripts/saphira/image_variant_settings.js +2 -0
  66. data/app/assets/javascripts/saphira/image_variants.js +2 -0
  67. data/app/assets/javascripts/saphira/jquery.color.js +123 -0
  68. data/app/assets/javascripts/saphira/jquery.jcrop.js +1600 -0
  69. data/app/assets/javascripts/saphira/jquery.uploadify.v2.1.4.js +296 -0
  70. data/app/assets/javascripts/saphira/swfobject.js +4 -0
  71. data/app/assets/stylesheets/saphira/image_variant_settings.css +4 -0
  72. data/app/assets/stylesheets/saphira/image_variants.css +4 -0
  73. data/app/assets/stylesheets/saphira/jquery.jcrop.css +35 -0
  74. data/app/assets/stylesheets/saphira/uploadify.css +52 -0
  75. data/app/controllers/saphira/file_items_controller.rb +8 -1
  76. data/app/controllers/saphira/image_variant_settings_controller.rb +41 -0
  77. data/app/controllers/saphira/image_variants_controller.rb +85 -0
  78. data/app/helpers/saphira/image_variant_settings_helper.rb +4 -0
  79. data/app/helpers/saphira/image_variants_helper.rb +4 -0
  80. data/app/models/saphira/file_item.rb +43 -0
  81. data/app/models/saphira/image_variant.rb +4 -0
  82. data/app/views/layouts/saphira/application.html.erb +5 -0
  83. data/app/views/saphira/file_items/index.html.erb +4 -3
  84. data/app/views/saphira/file_items/show.html.erb +16 -1
  85. data/app/views/saphira/file_items/upload_files.html.erb +33 -0
  86. data/app/views/saphira/image_variant_settings/edit.html.erb +18 -0
  87. data/app/views/saphira/image_variant_settings/show.html.erb +55 -0
  88. data/app/views/saphira/image_variant_settings/update.html.erb +2 -0
  89. data/app/views/saphira/image_variants/_form.html.erb +29 -0
  90. data/app/views/saphira/image_variants/edit.html.erb +6 -0
  91. data/app/views/saphira/image_variants/index.html.erb +27 -0
  92. data/app/views/saphira/image_variants/new.html.erb +5 -0
  93. data/app/views/saphira/image_variants/show.html.erb +21 -0
  94. data/config/initializers/dragonfly.rb +10 -1
  95. data/config/initializers/helpers.rb +5 -0
  96. data/config/initializers/mini_magick.rb +1 -0
  97. data/config/routes.rb +5 -1
  98. data/db/migrate/20110909143712_create_saphira_image_variants.rb +11 -0
  99. data/lib/saphira/engine.rb +9 -0
  100. data/lib/saphira/helpers/form_builder.rb +19 -0
  101. data/lib/saphira/helpers/form_helper.rb +69 -0
  102. data/lib/saphira/middleware/flash_session_cookie.rb +23 -0
  103. data/lib/saphira/version.rb +1 -1
  104. data/test/dummy/config/initializers/pry.rb +1 -0
  105. data/test/dummy/db/development.sqlite3 +0 -0
  106. data/test/dummy/db/migrate/20110909143951_create_saphira_image_variants.rb +11 -0
  107. data/test/dummy/db/schema.rb +9 -1
  108. data/test/dummy/db/test.sqlite3 +0 -0
  109. data/test/dummy/features/manage_file_items.feature +2 -1
  110. data/test/dummy/features/manage_image_variants.feature +24 -0
  111. data/test/dummy/features/step_definitions/file_item_steps.rb +19 -0
  112. data/test/dummy/features/step_definitions/image_variant_steps.rb +31 -0
  113. data/test/dummy/features/support/env.rb +2 -0
  114. data/test/dummy/features/support/paths.rb +3 -0
  115. data/test/dummy/lib/tasks/custom.rake +3 -0
  116. data/test/dummy/log/development.log +54425 -0
  117. data/test/dummy/log/test.log +15514 -0
  118. data/test/dummy/system/files/development/2011/09/09/16_51_37_135_IMG_4704.JPG +0 -0
  119. data/test/dummy/system/files/development/2011/09/09/16_51_37_135_IMG_4704.JPG.meta +1 -0
  120. data/test/dummy/system/files/development/2011/09/09/16_54_54_247_IMG_4707.JPG +0 -0
  121. data/test/dummy/system/files/development/2011/09/09/16_54_54_247_IMG_4707.JPG.meta +1 -0
  122. data/test/dummy/system/files/development/2011/09/09/18_26_01_701_IMG_4712.JPG +0 -0
  123. data/test/dummy/system/files/development/2011/09/09/18_26_01_701_IMG_4712.JPG.meta +1 -0
  124. data/test/dummy/system/files/development/2011/09/20/10_54_49_597_G_rtz1_2040_1_CMYK.jpg +0 -0
  125. data/test/dummy/system/files/development/2011/09/20/10_54_49_597_G_rtz1_2040_1_CMYK.jpg.meta +1 -0
  126. data/test/dummy/system/files/development/2011/09/20/12_44_23_621_DSC02119.JPG +0 -0
  127. data/test/dummy/system/files/development/2011/09/20/12_44_23_621_DSC02119.JPG.meta +1 -0
  128. data/test/dummy/system/files/development/2011/09/20/12_46_58_387_DSC02119.JPG +0 -0
  129. data/test/dummy/system/files/development/2011/09/20/12_46_58_387_DSC02119.JPG.meta +1 -0
  130. data/test/dummy/system/files/development/2011/09/20/12_49_02_756_DSC02120.JPG +0 -0
  131. data/test/dummy/system/files/development/2011/09/20/12_49_02_756_DSC02120.JPG.meta +1 -0
  132. data/test/dummy/system/files/development/2011/09/20/12_50_19_290_G_rtz1_0989_2_CMYK.jpg +0 -0
  133. data/test/dummy/system/files/development/2011/09/20/12_50_19_290_G_rtz1_0989_2_CMYK.jpg.meta +1 -0
  134. data/test/dummy/system/files/development/2011/09/20/12_50_23_519_G_rtz1_1628_1_CMYK.jpg +0 -0
  135. data/test/dummy/system/files/development/2011/09/20/12_50_23_519_G_rtz1_1628_1_CMYK.jpg.meta +1 -0
  136. data/test/dummy/system/files/development/2011/09/20/12_50_26_44_G_rtz1_1663_CMYK.jpg +0 -0
  137. data/test/dummy/system/files/development/2011/09/20/12_50_26_44_G_rtz1_1663_CMYK.jpg.meta +1 -0
  138. data/test/dummy/system/files/development/2011/09/20/12_50_27_954_G_rtz1_2040_1_CMYK.jpg +0 -0
  139. data/test/dummy/system/files/development/2011/09/20/12_50_27_954_G_rtz1_2040_1_CMYK.jpg.meta +1 -0
  140. data/test/dummy/system/files/development/2011/09/20/12_54_44_373_G_rtz1_1628_1_CMYK.jpg +0 -0
  141. data/test/dummy/system/files/development/2011/09/20/12_54_44_373_G_rtz1_1628_1_CMYK.jpg.meta +1 -0
  142. data/test/dummy/system/files/development/2011/09/20/12_54_46_193_G_rtz1_1663_CMYK.jpg +0 -0
  143. data/test/dummy/system/files/development/2011/09/20/12_54_46_193_G_rtz1_1663_CMYK.jpg.meta +1 -0
  144. data/test/dummy/system/files/development/2011/09/20/12_54_49_17_G_rtz1_2040_1_CMYK.jpg +0 -0
  145. data/test/dummy/system/files/development/2011/09/20/12_54_49_17_G_rtz1_2040_1_CMYK.jpg.meta +1 -0
  146. data/test/dummy/system/files/test/2011/09/09/09_58_11_308_eos_550d_wrong_orientation.jpg +0 -0
  147. data/test/dummy/system/files/test/2011/09/09/09_58_11_308_eos_550d_wrong_orientation.jpg.meta +1 -0
  148. data/test/dummy/system/files/test/2011/09/09/09_58_12_5_some_text.txt +99 -0
  149. data/test/dummy/system/files/test/2011/09/09/09_58_12_5_some_text.txt.meta +1 -0
  150. data/test/dummy/system/files/test/2011/09/09/10_00_33_577_eos_550d_wrong_orientation.jpg +0 -0
  151. data/test/dummy/system/files/test/2011/09/09/10_00_33_577_eos_550d_wrong_orientation.jpg.meta +1 -0
  152. data/test/dummy/system/files/test/2011/09/09/10_00_34_245_some_text.txt +99 -0
  153. data/test/dummy/system/files/test/2011/09/09/10_00_34_245_some_text.txt.meta +1 -0
  154. data/test/dummy/system/files/test/2011/09/09/10_01_37_537_eos_550d_wrong_orientation.jpg +0 -0
  155. data/test/dummy/system/files/test/2011/09/09/10_01_37_537_eos_550d_wrong_orientation.jpg.meta +1 -0
  156. data/test/dummy/system/files/test/2011/09/09/10_01_38_188_some_text.txt +99 -0
  157. data/test/dummy/system/files/test/2011/09/09/10_01_38_188_some_text.txt.meta +1 -0
  158. data/test/dummy/system/files/test/2011/09/09/10_02_53_234_eos_550d_wrong_orientation.jpg +0 -0
  159. data/test/dummy/system/files/test/2011/09/09/10_02_53_234_eos_550d_wrong_orientation.jpg.meta +1 -0
  160. data/test/dummy/system/files/test/2011/09/09/10_02_53_906_some_text.txt +99 -0
  161. data/test/dummy/system/files/test/2011/09/09/10_02_53_906_some_text.txt.meta +1 -0
  162. data/test/dummy/system/files/test/2011/09/09/10_02_56_34_eos_550d_wrong_orientation.jpg +0 -0
  163. data/test/dummy/system/files/test/2011/09/09/10_02_56_34_eos_550d_wrong_orientation.jpg.meta +1 -0
  164. data/test/dummy/system/files/test/2011/09/09/10_04_33_416_eos_550d_wrong_orientation.jpg +0 -0
  165. data/test/dummy/system/files/test/2011/09/09/10_04_33_416_eos_550d_wrong_orientation.jpg.meta +1 -0
  166. data/test/dummy/system/files/test/2011/09/09/10_04_34_69_some_text.txt +99 -0
  167. data/test/dummy/system/files/test/2011/09/09/10_04_34_69_some_text.txt.meta +1 -0
  168. data/test/dummy/system/files/test/2011/09/09/10_05_05_475_eos_550d_wrong_orientation.jpg +0 -0
  169. data/test/dummy/system/files/test/2011/09/09/10_05_05_475_eos_550d_wrong_orientation.jpg.meta +1 -0
  170. data/test/dummy/system/files/test/2011/09/09/10_05_06_447_some_text.txt +99 -0
  171. data/test/dummy/system/files/test/2011/09/09/10_05_06_447_some_text.txt.meta +1 -0
  172. data/test/dummy/system/files/test/2011/09/09/10_05_08_609_eos_550d_wrong_orientation.jpg +0 -0
  173. data/test/dummy/system/files/test/2011/09/09/10_05_08_609_eos_550d_wrong_orientation.jpg.meta +1 -0
  174. data/test/dummy/system/files/test/2011/09/09/10_06_34_64_eos_550d_wrong_orientation.jpg +0 -0
  175. data/test/dummy/system/files/test/2011/09/09/10_06_34_64_eos_550d_wrong_orientation.jpg.meta +1 -0
  176. data/test/dummy/system/files/test/2011/09/09/10_06_34_786_some_text.txt +99 -0
  177. data/test/dummy/system/files/test/2011/09/09/10_06_34_786_some_text.txt.meta +1 -0
  178. data/test/dummy/system/files/test/2011/09/09/10_06_49_889_eos_550d_wrong_orientation.jpg +0 -0
  179. data/test/dummy/system/files/test/2011/09/09/10_06_49_889_eos_550d_wrong_orientation.jpg.meta +1 -0
  180. data/test/dummy/system/files/test/2011/09/09/10_06_50_544_some_text.txt +99 -0
  181. data/test/dummy/system/files/test/2011/09/09/10_06_50_544_some_text.txt.meta +1 -0
  182. data/test/dummy/system/files/test/2011/09/09/10_08_33_687_eos_550d_wrong_orientation.jpg +0 -0
  183. data/test/dummy/system/files/test/2011/09/09/10_08_33_687_eos_550d_wrong_orientation.jpg.meta +1 -0
  184. data/test/dummy/system/files/test/2011/09/09/10_08_34_411_some_text.txt +99 -0
  185. data/test/dummy/system/files/test/2011/09/09/10_08_34_411_some_text.txt.meta +1 -0
  186. data/test/dummy/system/files/test/2011/09/09/10_09_07_292_eos_550d_wrong_orientation.jpg +0 -0
  187. data/test/dummy/system/files/test/2011/09/09/10_09_07_292_eos_550d_wrong_orientation.jpg.meta +1 -0
  188. data/test/dummy/system/files/test/2011/09/09/10_09_07_624_some_text.txt +99 -0
  189. data/test/dummy/system/files/test/2011/09/09/10_09_07_624_some_text.txt.meta +1 -0
  190. data/test/dummy/system/files/test/2011/09/09/10_09_23_158_eos_550d_wrong_orientation.jpg +0 -0
  191. data/test/dummy/system/files/test/2011/09/09/10_09_23_158_eos_550d_wrong_orientation.jpg.meta +1 -0
  192. data/test/dummy/system/files/test/2011/09/09/10_09_23_495_some_text.txt +99 -0
  193. data/test/dummy/system/files/test/2011/09/09/10_09_23_495_some_text.txt.meta +1 -0
  194. data/test/dummy/system/files/test/2011/09/09/10_10_43_742_eos_550d_wrong_orientation.jpg +0 -0
  195. data/test/dummy/system/files/test/2011/09/09/10_10_43_742_eos_550d_wrong_orientation.jpg.meta +1 -0
  196. data/test/dummy/system/files/test/2011/09/09/10_10_44_475_some_text.txt +99 -0
  197. data/test/dummy/system/files/test/2011/09/09/10_10_44_475_some_text.txt.meta +1 -0
  198. data/test/dummy/system/files/test/2011/09/09/10_10_59_650_eos_550d_wrong_orientation.jpg +0 -0
  199. data/test/dummy/system/files/test/2011/09/09/10_10_59_650_eos_550d_wrong_orientation.jpg.meta +1 -0
  200. data/test/dummy/system/files/test/2011/09/09/10_11_00_294_some_text.txt +99 -0
  201. data/test/dummy/system/files/test/2011/09/09/10_11_00_294_some_text.txt.meta +1 -0
  202. data/test/dummy/system/files/test/2011/09/09/10_21_22_164_eos_550d_wrong_orientation.jpg +0 -0
  203. data/test/dummy/system/files/test/2011/09/09/10_21_22_164_eos_550d_wrong_orientation.jpg.meta +1 -0
  204. data/test/dummy/system/files/test/2011/09/09/10_21_23_90_some_text.txt +99 -0
  205. data/test/dummy/system/files/test/2011/09/09/10_21_23_90_some_text.txt.meta +1 -0
  206. data/test/dummy/system/files/test/2011/09/09/10_21_38_479_eos_550d_wrong_orientation.jpg +0 -0
  207. data/test/dummy/system/files/test/2011/09/09/10_21_38_479_eos_550d_wrong_orientation.jpg.meta +1 -0
  208. data/test/dummy/system/files/test/2011/09/09/10_21_39_225_some_text.txt +99 -0
  209. data/test/dummy/system/files/test/2011/09/09/10_21_39_225_some_text.txt.meta +1 -0
  210. data/test/dummy/system/files/test/2011/09/09/10_21_55_560_eos_550d_wrong_orientation.jpg +0 -0
  211. data/test/dummy/system/files/test/2011/09/09/10_21_55_560_eos_550d_wrong_orientation.jpg.meta +1 -0
  212. data/test/dummy/system/files/test/2011/09/09/10_21_56_332_some_text.txt +99 -0
  213. data/test/dummy/system/files/test/2011/09/09/10_21_56_332_some_text.txt.meta +1 -0
  214. data/test/dummy/system/files/test/2011/09/09/10_25_03_122_eos_550d_wrong_orientation.jpg +0 -0
  215. data/test/dummy/system/files/test/2011/09/09/10_25_03_122_eos_550d_wrong_orientation.jpg.meta +1 -0
  216. data/test/dummy/system/files/test/2011/09/09/10_25_04_108_some_text.txt +99 -0
  217. data/test/dummy/system/files/test/2011/09/09/10_25_04_108_some_text.txt.meta +1 -0
  218. data/test/dummy/system/files/test/2011/09/09/10_25_42_747_eos_550d_wrong_orientation.jpg +0 -0
  219. data/test/dummy/system/files/test/2011/09/09/10_25_42_747_eos_550d_wrong_orientation.jpg.meta +1 -0
  220. data/test/dummy/system/files/test/2011/09/09/10_25_43_407_some_text.txt +99 -0
  221. data/test/dummy/system/files/test/2011/09/09/10_25_43_407_some_text.txt.meta +1 -0
  222. data/test/dummy/system/files/test/2011/09/09/10_25_58_973_eos_550d_wrong_orientation.jpg +0 -0
  223. data/test/dummy/system/files/test/2011/09/09/10_25_58_973_eos_550d_wrong_orientation.jpg.meta +1 -0
  224. data/test/dummy/system/files/test/2011/09/09/10_41_33_628_some_text.txt +99 -0
  225. data/test/dummy/system/files/test/2011/09/09/10_41_33_628_some_text.txt.meta +1 -0
  226. data/test/dummy/system/files/test/2011/09/09/10_42_34_411_eos_550d_wrong_orientation.jpg +0 -0
  227. data/test/dummy/system/files/test/2011/09/09/10_42_34_411_eos_550d_wrong_orientation.jpg.meta +1 -0
  228. data/test/dummy/system/files/test/2011/09/09/10_42_35_234_some_text.txt +99 -0
  229. data/test/dummy/system/files/test/2011/09/09/10_42_35_234_some_text.txt.meta +1 -0
  230. data/test/dummy/system/files/test/2011/09/09/10_42_59_862_eos_550d_wrong_orientation.jpg +0 -0
  231. data/test/dummy/system/files/test/2011/09/09/10_42_59_862_eos_550d_wrong_orientation.jpg.meta +1 -0
  232. data/test/dummy/system/files/test/2011/09/09/10_44_16_115_some_text.txt +99 -0
  233. data/test/dummy/system/files/test/2011/09/09/10_44_16_115_some_text.txt.meta +1 -0
  234. data/test/dummy/system/files/test/2011/09/09/10_44_32_193_eos_550d_wrong_orientation.jpg +0 -0
  235. data/test/dummy/system/files/test/2011/09/09/10_44_32_193_eos_550d_wrong_orientation.jpg.meta +1 -0
  236. data/test/dummy/system/files/test/2011/09/09/10_44_33_135_some_text.txt +99 -0
  237. data/test/dummy/system/files/test/2011/09/09/10_44_33_135_some_text.txt.meta +1 -0
  238. data/test/dummy/system/files/test/2011/09/09/10_45_51_831_eos_550d_wrong_orientation.jpg +0 -0
  239. data/test/dummy/system/files/test/2011/09/09/10_45_51_831_eos_550d_wrong_orientation.jpg.meta +1 -0
  240. data/test/dummy/system/files/test/2011/09/09/10_51_00_989_some_text.txt +99 -0
  241. data/test/dummy/system/files/test/2011/09/09/10_51_00_989_some_text.txt.meta +1 -0
  242. data/test/dummy/system/files/test/2011/09/09/10_51_16_925_eos_550d_wrong_orientation.jpg +0 -0
  243. data/test/dummy/system/files/test/2011/09/09/10_51_16_925_eos_550d_wrong_orientation.jpg.meta +1 -0
  244. data/test/dummy/system/files/test/2011/09/09/10_51_17_404_some_text.txt +99 -0
  245. data/test/dummy/system/files/test/2011/09/09/10_51_17_404_some_text.txt.meta +1 -0
  246. data/test/dummy/system/files/test/2011/09/09/10_51_33_795_eos_550d_wrong_orientation.jpg +0 -0
  247. data/test/dummy/system/files/test/2011/09/09/10_51_33_795_eos_550d_wrong_orientation.jpg.meta +1 -0
  248. data/test/dummy/system/files/test/2011/09/09/10_51_34_266_some_text.txt +99 -0
  249. data/test/dummy/system/files/test/2011/09/09/10_51_34_266_some_text.txt.meta +1 -0
  250. data/test/dummy/system/files/test/2011/09/09/11_55_24_773_eos_550d_wrong_orientation.jpg +0 -0
  251. data/test/dummy/system/files/test/2011/09/09/11_55_24_773_eos_550d_wrong_orientation.jpg.meta +1 -0
  252. data/test/dummy/system/files/test/2011/09/09/11_55_25_251_some_text.txt +99 -0
  253. data/test/dummy/system/files/test/2011/09/09/11_55_25_251_some_text.txt.meta +1 -0
  254. data/test/dummy/system/files/test/2011/09/09/12_29_13_951_eos_550d_wrong_orientation.jpg +0 -0
  255. data/test/dummy/system/files/test/2011/09/09/12_29_13_951_eos_550d_wrong_orientation.jpg.meta +1 -0
  256. data/test/dummy/system/files/test/2011/09/09/12_29_14_948_some_text.txt +99 -0
  257. data/test/dummy/system/files/test/2011/09/09/12_29_14_948_some_text.txt.meta +1 -0
  258. data/test/dummy/system/files/test/2011/09/09/12_29_31_320_eos_550d_wrong_orientation.jpg +0 -0
  259. data/test/dummy/system/files/test/2011/09/09/12_29_31_320_eos_550d_wrong_orientation.jpg.meta +1 -0
  260. data/test/dummy/system/files/test/2011/09/09/12_29_45_558_eos_550d_wrong_orientation.jpg +0 -0
  261. data/test/dummy/system/files/test/2011/09/09/12_29_45_558_eos_550d_wrong_orientation.jpg.meta +1 -0
  262. data/test/dummy/system/files/test/2011/09/09/12_29_46_46_some_text.txt +99 -0
  263. data/test/dummy/system/files/test/2011/09/09/12_29_46_46_some_text.txt.meta +1 -0
  264. data/test/dummy/system/files/test/2011/09/09/12_30_02_482_eos_550d_wrong_orientation.jpg +0 -0
  265. data/test/dummy/system/files/test/2011/09/09/12_30_02_482_eos_550d_wrong_orientation.jpg.meta +1 -0
  266. data/test/dummy/system/files/test/2011/09/09/12_30_02_976_some_text.txt +99 -0
  267. data/test/dummy/system/files/test/2011/09/09/12_30_02_976_some_text.txt.meta +1 -0
  268. data/test/dummy/system/files/test/2011/09/09/12_30_28_555_eos_550d_wrong_orientation.jpg +0 -0
  269. data/test/dummy/system/files/test/2011/09/09/12_30_28_555_eos_550d_wrong_orientation.jpg.meta +1 -0
  270. data/test/dummy/system/files/test/2011/09/09/12_30_29_27_some_text.txt +99 -0
  271. data/test/dummy/system/files/test/2011/09/09/12_30_29_27_some_text.txt.meta +1 -0
  272. data/test/dummy/system/files/test/2011/09/09/12_32_59_361_eos_550d_wrong_orientation.jpg +0 -0
  273. data/test/dummy/system/files/test/2011/09/09/12_32_59_361_eos_550d_wrong_orientation.jpg.meta +1 -0
  274. data/test/dummy/system/files/test/2011/09/09/12_32_59_829_some_text.txt +99 -0
  275. data/test/dummy/system/files/test/2011/09/09/12_32_59_829_some_text.txt.meta +1 -0
  276. data/test/dummy/system/files/test/2011/09/09/12_33_28_536_some_text.txt +99 -0
  277. data/test/dummy/system/files/test/2011/09/09/12_33_28_536_some_text.txt.meta +1 -0
  278. data/test/dummy/system/files/test/2011/09/09/12_33_28_53_eos_550d_wrong_orientation.jpg +0 -0
  279. data/test/dummy/system/files/test/2011/09/09/12_33_28_53_eos_550d_wrong_orientation.jpg.meta +1 -0
  280. data/test/dummy/system/files/test/2011/09/09/16_30_50_311_eos_550d_wrong_orientation.jpg +0 -0
  281. data/test/dummy/system/files/test/2011/09/09/16_30_50_311_eos_550d_wrong_orientation.jpg.meta +1 -0
  282. data/test/dummy/system/files/test/2011/09/09/16_42_46_830_eos_550d_wrong_orientation.jpg +0 -0
  283. data/test/dummy/system/files/test/2011/09/09/16_42_46_830_eos_550d_wrong_orientation.jpg.meta +1 -0
  284. data/test/dummy/system/files/test/2011/09/09/16_43_08_154_eos_550d_wrong_orientation.jpg +0 -0
  285. data/test/dummy/system/files/test/2011/09/09/16_43_08_154_eos_550d_wrong_orientation.jpg.meta +1 -0
  286. data/test/dummy/system/files/test/2011/09/09/16_43_08_639_some_text.txt +99 -0
  287. data/test/dummy/system/files/test/2011/09/09/16_43_08_639_some_text.txt.meta +1 -0
  288. data/test/dummy/system/files/test/2011/09/09/16_43_39_562_eos_550d_wrong_orientation.jpg +0 -0
  289. data/test/dummy/system/files/test/2011/09/09/16_43_39_562_eos_550d_wrong_orientation.jpg.meta +1 -0
  290. data/test/dummy/system/files/test/2011/09/09/16_44_16_988_eos_550d_wrong_orientation.jpg +0 -0
  291. data/test/dummy/system/files/test/2011/09/09/16_44_16_988_eos_550d_wrong_orientation.jpg.meta +1 -0
  292. data/test/dummy/system/files/test/2011/09/09/16_44_44_6_eos_550d_wrong_orientation.jpg +0 -0
  293. data/test/dummy/system/files/test/2011/09/09/16_44_44_6_eos_550d_wrong_orientation.jpg.meta +1 -0
  294. data/test/dummy/system/files/test/2011/09/09/16_45_22_203_eos_550d_wrong_orientation.jpg +0 -0
  295. data/test/dummy/system/files/test/2011/09/09/16_45_22_203_eos_550d_wrong_orientation.jpg.meta +1 -0
  296. data/test/dummy/system/files/test/2011/09/09/16_45_22_694_some_text.txt +99 -0
  297. data/test/dummy/system/files/test/2011/09/09/16_45_22_694_some_text.txt.meta +1 -0
  298. data/test/dummy/system/files/test/2011/09/09/16_46_44_693_eos_550d_wrong_orientation.jpg +0 -0
  299. data/test/dummy/system/files/test/2011/09/09/16_46_44_693_eos_550d_wrong_orientation.jpg.meta +1 -0
  300. data/test/dummy/system/files/test/2011/09/09/16_48_14_349_eos_550d_wrong_orientation.jpg +0 -0
  301. data/test/dummy/system/files/test/2011/09/09/16_48_14_349_eos_550d_wrong_orientation.jpg.meta +1 -0
  302. data/test/dummy/system/files/test/2011/09/09/16_55_36_775_eos_550d_wrong_orientation.jpg +0 -0
  303. data/test/dummy/system/files/test/2011/09/09/16_55_36_775_eos_550d_wrong_orientation.jpg.meta +1 -0
  304. data/test/dummy/system/files/test/2011/09/09/16_56_10_433_some_text.txt +99 -0
  305. data/test/dummy/system/files/test/2011/09/09/16_56_10_433_some_text.txt.meta +1 -0
  306. data/test/dummy/system/files/test/2011/09/09/16_56_13_781_eos_550d_wrong_orientation.jpg +0 -0
  307. data/test/dummy/system/files/test/2011/09/09/16_56_13_781_eos_550d_wrong_orientation.jpg.meta +1 -0
  308. data/test/dummy/system/files/test/2011/09/09/16_57_19_642_eos_550d_wrong_orientation.jpg +0 -0
  309. data/test/dummy/system/files/test/2011/09/09/16_57_19_642_eos_550d_wrong_orientation.jpg.meta +1 -0
  310. data/test/dummy/system/files/test/2011/09/09/16_57_20_221_some_text.txt +99 -0
  311. data/test/dummy/system/files/test/2011/09/09/16_57_20_221_some_text.txt.meta +1 -0
  312. data/test/dummy/system/files/test/2011/09/09/16_57_22_478_eos_550d_wrong_orientation.jpg +0 -0
  313. data/test/dummy/system/files/test/2011/09/09/16_57_22_478_eos_550d_wrong_orientation.jpg.meta +1 -0
  314. data/test/dummy/system/files/test/2011/09/09/17_01_16_272_eos_550d_wrong_orientation.jpg +0 -0
  315. data/test/dummy/system/files/test/2011/09/09/17_01_16_272_eos_550d_wrong_orientation.jpg.meta +1 -0
  316. data/test/dummy/system/files/test/2011/09/09/17_01_16_773_some_text.txt +99 -0
  317. data/test/dummy/system/files/test/2011/09/09/17_01_16_773_some_text.txt.meta +1 -0
  318. data/test/dummy/system/files/test/2011/09/09/17_01_19_26_eos_550d_wrong_orientation.jpg +0 -0
  319. data/test/dummy/system/files/test/2011/09/09/17_01_19_26_eos_550d_wrong_orientation.jpg.meta +1 -0
  320. data/test/dummy/system/files/test/2011/09/09/17_02_57_539_eos_550d_wrong_orientation.jpg +0 -0
  321. data/test/dummy/system/files/test/2011/09/09/17_02_57_539_eos_550d_wrong_orientation.jpg.meta +1 -0
  322. data/test/dummy/system/files/test/2011/09/09/17_02_58_21_some_text.txt +99 -0
  323. data/test/dummy/system/files/test/2011/09/09/17_02_58_21_some_text.txt.meta +1 -0
  324. data/test/dummy/system/files/test/2011/09/09/17_03_00_478_eos_550d_wrong_orientation.jpg +0 -0
  325. data/test/dummy/system/files/test/2011/09/09/17_03_00_478_eos_550d_wrong_orientation.jpg.meta +1 -0
  326. data/test/dummy/system/files/test/2011/09/09/23_10_31_776_eos_550d_wrong_orientation.jpg +0 -0
  327. data/test/dummy/system/files/test/2011/09/09/23_10_31_776_eos_550d_wrong_orientation.jpg.meta +1 -0
  328. data/test/dummy/system/files/test/2011/09/09/23_10_32_270_some_text.txt +99 -0
  329. data/test/dummy/system/files/test/2011/09/09/23_10_32_270_some_text.txt.meta +1 -0
  330. data/test/dummy/system/files/test/2011/09/09/23_10_34_701_eos_550d_wrong_orientation.jpg +0 -0
  331. data/test/dummy/system/files/test/2011/09/09/23_10_34_701_eos_550d_wrong_orientation.jpg.meta +1 -0
  332. data/test/dummy/system/files/test/2011/09/09/23_11_16_395_eos_550d_wrong_orientation.jpg +0 -0
  333. data/test/dummy/system/files/test/2011/09/09/23_11_16_395_eos_550d_wrong_orientation.jpg.meta +1 -0
  334. data/test/dummy/system/files/test/2011/09/09/23_11_16_888_some_text.txt +99 -0
  335. data/test/dummy/system/files/test/2011/09/09/23_11_16_888_some_text.txt.meta +1 -0
  336. data/test/dummy/system/files/test/2011/09/09/23_11_19_298_eos_550d_wrong_orientation.jpg +0 -0
  337. data/test/dummy/system/files/test/2011/09/09/23_11_19_298_eos_550d_wrong_orientation.jpg.meta +1 -0
  338. data/test/dummy/system/files/test/2011/09/09/23_15_26_261_eos_550d_wrong_orientation.jpg +0 -0
  339. data/test/dummy/system/files/test/2011/09/09/23_15_26_261_eos_550d_wrong_orientation.jpg.meta +1 -0
  340. data/test/dummy/system/files/test/2011/09/09/23_15_26_928_some_text.txt +99 -0
  341. data/test/dummy/system/files/test/2011/09/09/23_15_26_928_some_text.txt.meta +1 -0
  342. data/test/dummy/system/files/test/2011/09/09/23_15_29_344_eos_550d_wrong_orientation.jpg +0 -0
  343. data/test/dummy/system/files/test/2011/09/09/23_15_29_344_eos_550d_wrong_orientation.jpg.meta +1 -0
  344. data/test/dummy/system/files/test/2011/09/09/23_16_21_552_eos_550d_wrong_orientation.jpg +0 -0
  345. data/test/dummy/system/files/test/2011/09/09/23_16_21_552_eos_550d_wrong_orientation.jpg.meta +1 -0
  346. data/test/dummy/system/files/test/2011/09/09/23_16_22_835_eos_550d_wrong_orientation.jpg +0 -0
  347. data/test/dummy/system/files/test/2011/09/09/23_16_22_835_eos_550d_wrong_orientation.jpg.meta +1 -0
  348. data/test/dummy/system/files/test/2011/09/09/23_18_27_524_eos_550d_wrong_orientation.jpg +0 -0
  349. data/test/dummy/system/files/test/2011/09/09/23_18_27_524_eos_550d_wrong_orientation.jpg.meta +1 -0
  350. data/test/dummy/system/files/test/2011/09/09/23_18_28_908_eos_550d_wrong_orientation.jpg +0 -0
  351. data/test/dummy/system/files/test/2011/09/09/23_18_28_908_eos_550d_wrong_orientation.jpg.meta +1 -0
  352. data/test/dummy/system/files/test/2011/09/09/23_19_14_156_eos_550d_wrong_orientation.jpg +0 -0
  353. data/test/dummy/system/files/test/2011/09/09/23_19_14_156_eos_550d_wrong_orientation.jpg.meta +1 -0
  354. data/test/dummy/system/files/test/2011/09/09/23_19_14_668_some_text.txt +99 -0
  355. data/test/dummy/system/files/test/2011/09/09/23_19_14_668_some_text.txt.meta +1 -0
  356. data/test/dummy/system/files/test/2011/09/09/23_19_17_92_eos_550d_wrong_orientation.jpg +0 -0
  357. data/test/dummy/system/files/test/2011/09/09/23_19_17_92_eos_550d_wrong_orientation.jpg.meta +1 -0
  358. data/test/dummy/system/files/test/2011/09/09/23_19_57_135_eos_550d_wrong_orientation.jpg +0 -0
  359. data/test/dummy/system/files/test/2011/09/09/23_19_57_135_eos_550d_wrong_orientation.jpg.meta +1 -0
  360. data/test/dummy/system/files/test/2011/09/09/23_19_57_628_some_text.txt +99 -0
  361. data/test/dummy/system/files/test/2011/09/09/23_19_57_628_some_text.txt.meta +1 -0
  362. data/test/dummy/system/files/test/2011/09/09/23_20_00_99_eos_550d_wrong_orientation.jpg +0 -0
  363. data/test/dummy/system/files/test/2011/09/09/23_20_00_99_eos_550d_wrong_orientation.jpg.meta +1 -0
  364. data/test/dummy/system/files/test/2011/09/09/23_20_39_80_eos_550d_wrong_orientation.jpg +0 -0
  365. data/test/dummy/system/files/test/2011/09/09/23_20_39_80_eos_550d_wrong_orientation.jpg.meta +1 -0
  366. data/test/dummy/system/files/test/2011/09/09/23_20_40_205_eos_550d_wrong_orientation.jpg +0 -0
  367. data/test/dummy/system/files/test/2011/09/09/23_20_40_205_eos_550d_wrong_orientation.jpg.meta +1 -0
  368. data/test/dummy/system/files/test/2011/09/09/23_21_01_631_eos_550d_wrong_orientation.jpg +0 -0
  369. data/test/dummy/system/files/test/2011/09/09/23_21_01_631_eos_550d_wrong_orientation.jpg.meta +1 -0
  370. data/test/dummy/system/files/test/2011/09/09/23_21_02_216_some_text.txt +99 -0
  371. data/test/dummy/system/files/test/2011/09/09/23_21_02_216_some_text.txt.meta +1 -0
  372. data/test/dummy/system/files/test/2011/09/09/23_21_04_557_eos_550d_wrong_orientation.jpg +0 -0
  373. data/test/dummy/system/files/test/2011/09/09/23_21_04_557_eos_550d_wrong_orientation.jpg.meta +1 -0
  374. data/test/dummy/system/files/test/2011/09/09/23_23_00_280_eos_550d_wrong_orientation.jpg +0 -0
  375. data/test/dummy/system/files/test/2011/09/09/23_23_00_280_eos_550d_wrong_orientation.jpg.meta +1 -0
  376. data/test/dummy/system/files/test/2011/09/09/23_23_00_777_some_text.txt +99 -0
  377. data/test/dummy/system/files/test/2011/09/09/23_23_00_777_some_text.txt.meta +1 -0
  378. data/test/dummy/system/files/test/2011/09/09/23_23_03_310_eos_550d_wrong_orientation.jpg +0 -0
  379. data/test/dummy/system/files/test/2011/09/09/23_23_03_310_eos_550d_wrong_orientation.jpg.meta +1 -0
  380. data/test/dummy/system/files/test/2011/09/09/23_24_04_367_eos_550d_wrong_orientation.jpg +0 -0
  381. data/test/dummy/system/files/test/2011/09/09/23_24_04_367_eos_550d_wrong_orientation.jpg.meta +1 -0
  382. data/test/dummy/system/files/test/2011/09/09/23_24_04_871_some_text.txt +99 -0
  383. data/test/dummy/system/files/test/2011/09/09/23_24_04_871_some_text.txt.meta +1 -0
  384. data/test/dummy/system/files/test/2011/09/09/23_24_07_303_eos_550d_wrong_orientation.jpg +0 -0
  385. data/test/dummy/system/files/test/2011/09/09/23_24_07_303_eos_550d_wrong_orientation.jpg.meta +1 -0
  386. data/test/dummy/system/files/test/2011/09/09/23_25_04_212_eos_550d_wrong_orientation.jpg +0 -0
  387. data/test/dummy/system/files/test/2011/09/09/23_25_04_212_eos_550d_wrong_orientation.jpg.meta +1 -0
  388. data/test/dummy/system/files/test/2011/09/09/23_25_06_520_eos_550d_wrong_orientation.jpg +0 -0
  389. data/test/dummy/system/files/test/2011/09/09/23_25_06_520_eos_550d_wrong_orientation.jpg.meta +1 -0
  390. data/test/dummy/system/files/test/2011/09/09/23_28_42_805_eos_550d_wrong_orientation.jpg +0 -0
  391. data/test/dummy/system/files/test/2011/09/09/23_28_42_805_eos_550d_wrong_orientation.jpg.meta +1 -0
  392. data/test/dummy/system/files/test/2011/09/09/23_28_43_315_some_text.txt +99 -0
  393. data/test/dummy/system/files/test/2011/09/09/23_28_43_315_some_text.txt.meta +1 -0
  394. data/test/dummy/system/files/test/2011/09/09/23_28_45_754_eos_550d_wrong_orientation.jpg +0 -0
  395. data/test/dummy/system/files/test/2011/09/09/23_28_45_754_eos_550d_wrong_orientation.jpg.meta +1 -0
  396. data/test/dummy/system/files/test/2011/09/09/23_30_10_146_eos_550d_wrong_orientation.jpg +0 -0
  397. data/test/dummy/system/files/test/2011/09/09/23_30_10_146_eos_550d_wrong_orientation.jpg.meta +1 -0
  398. data/test/dummy/system/files/test/2011/09/09/23_30_10_658_some_text.txt +99 -0
  399. data/test/dummy/system/files/test/2011/09/09/23_30_10_658_some_text.txt.meta +1 -0
  400. data/test/dummy/system/files/test/2011/09/09/23_30_13_84_eos_550d_wrong_orientation.jpg +0 -0
  401. data/test/dummy/system/files/test/2011/09/09/23_30_13_84_eos_550d_wrong_orientation.jpg.meta +1 -0
  402. data/test/dummy/system/files/test/2011/09/09/23_31_36_338_eos_550d_wrong_orientation.jpg +0 -0
  403. data/test/dummy/system/files/test/2011/09/09/23_31_36_338_eos_550d_wrong_orientation.jpg.meta +1 -0
  404. data/test/dummy/system/files/test/2011/09/09/23_31_53_958_eos_550d_wrong_orientation.jpg +0 -0
  405. data/test/dummy/system/files/test/2011/09/09/23_31_53_958_eos_550d_wrong_orientation.jpg.meta +1 -0
  406. data/test/dummy/system/files/test/2011/09/09/23_32_14_603_eos_550d_wrong_orientation.jpg +0 -0
  407. data/test/dummy/system/files/test/2011/09/09/23_32_14_603_eos_550d_wrong_orientation.jpg.meta +1 -0
  408. data/test/dummy/system/files/test/2011/09/09/23_32_15_116_some_text.txt +99 -0
  409. data/test/dummy/system/files/test/2011/09/09/23_32_15_116_some_text.txt.meta +1 -0
  410. data/test/dummy/system/files/test/2011/09/09/23_32_17_756_eos_550d_wrong_orientation.jpg +0 -0
  411. data/test/dummy/system/files/test/2011/09/09/23_32_17_756_eos_550d_wrong_orientation.jpg.meta +1 -0
  412. data/test/dummy/system/files/test/2011/09/09/23_32_44_535_eos_550d_wrong_orientation.jpg +0 -0
  413. data/test/dummy/system/files/test/2011/09/09/23_32_44_535_eos_550d_wrong_orientation.jpg.meta +1 -0
  414. data/test/dummy/system/files/test/2011/09/09/23_32_45_43_some_text.txt +99 -0
  415. data/test/dummy/system/files/test/2011/09/09/23_32_45_43_some_text.txt.meta +1 -0
  416. data/test/dummy/system/files/test/2011/09/09/23_32_47_451_eos_550d_wrong_orientation.jpg +0 -0
  417. data/test/dummy/system/files/test/2011/09/09/23_32_47_451_eos_550d_wrong_orientation.jpg.meta +1 -0
  418. data/test/dummy/system/files/test/2011/09/09/23_34_18_577_eos_550d_wrong_orientation.jpg +0 -0
  419. data/test/dummy/system/files/test/2011/09/09/23_34_18_577_eos_550d_wrong_orientation.jpg.meta +1 -0
  420. data/test/dummy/system/files/test/2011/09/09/23_34_19_85_some_text.txt +99 -0
  421. data/test/dummy/system/files/test/2011/09/09/23_34_19_85_some_text.txt.meta +1 -0
  422. data/test/dummy/system/files/test/2011/09/09/23_34_21_427_eos_550d_wrong_orientation.jpg +0 -0
  423. data/test/dummy/system/files/test/2011/09/09/23_34_21_427_eos_550d_wrong_orientation.jpg.meta +1 -0
  424. data/test/dummy/tmp/cache/assets/C54/230/sprockets%2F63597bd80af49501176a9c782c200818 +0 -0
  425. data/test/dummy/tmp/cache/assets/C8D/360/sprockets%2Fdf973572c645d2fd119001cd69374479 +0 -0
  426. data/test/dummy/tmp/cache/assets/C8E/040/sprockets%2F15dc6807595ff22a754893ef2d042944 +0 -0
  427. data/test/dummy/tmp/cache/assets/C9D/CF0/sprockets%2F07211d85a30e8ca544d28a82e11722c5 +0 -0
  428. data/test/dummy/tmp/cache/assets/CAA/1E0/sprockets%2Ff830741354b667e407d800e3b444f4bb +0 -0
  429. data/test/dummy/tmp/cache/assets/CAF/EB0/sprockets%2F6611c947ce02d3a22d579ce305f65662 +0 -0
  430. data/test/dummy/tmp/cache/assets/CB0/050/sprockets%2F82ee10d29ecf30a522699c686301761d +0 -0
  431. data/test/dummy/tmp/cache/assets/CB9/690/sprockets%2F2a8597c2f8571ae6ea34692d2019a495 +0 -0
  432. data/test/dummy/tmp/cache/assets/CE4/CB0/sprockets%2F3d466de255c44c4d526a6526ee267f42 +0 -0
  433. data/test/dummy/tmp/cache/assets/CED/3A0/sprockets%2F5598ef34994d21041804d8edaae45e75 +0 -0
  434. data/test/dummy/tmp/cache/assets/CFA/BB0/sprockets%2F036d173be5c5a8d610b011b0b79a47e5 +0 -0
  435. data/test/dummy/tmp/cache/assets/D02/E40/sprockets%2F23c3c1b9508b3ee3e213e6b15442cd86 +0 -0
  436. data/test/dummy/tmp/cache/assets/D0A/2A0/sprockets%2F404be3db0a559b6e46a9750d2930ca78 +0 -0
  437. data/test/dummy/tmp/cache/assets/D0F/940/sprockets%2Fe5a0c84816880ab73280e1d7c6c6b53f +0 -0
  438. data/test/dummy/tmp/cache/assets/D17/AD0/sprockets%2F40edf5645d2ef4837a7eb197d4274f11 +0 -0
  439. data/test/dummy/tmp/cache/assets/D19/7A0/sprockets%2F16629122405a5bb931a1aac5fd0c0c1c +0 -0
  440. data/test/dummy/tmp/cache/assets/D1B/850/sprockets%2F8ee0f24d6d9178d919763c720a26ea4d +0 -0
  441. data/test/dummy/tmp/cache/assets/D21/FC0/sprockets%2F42e26797aacaf09d1d8f399737d4862a +0 -0
  442. data/test/dummy/tmp/cache/assets/D22/400/sprockets%2F9fe3b745fe9b3671c7b7776067411fbd +0 -0
  443. data/test/dummy/tmp/cache/assets/D28/B20/sprockets%2F882bf161cb1bae439b071e92c023ca24 +0 -0
  444. data/test/dummy/tmp/cache/assets/D2B/B20/sprockets%2F8a8e489c909c9b7e4883ad91ae05819b +0 -0
  445. data/test/dummy/tmp/cache/assets/D39/7D0/sprockets%2F2d36d5c71bbb85e617c7aa5526db7711 +0 -0
  446. data/test/dummy/tmp/cache/assets/D45/980/sprockets%2F7b83a99c7ef5081e54dd817ee22e21c0 +0 -0
  447. data/test/dummy/tmp/cache/assets/D83/790/sprockets%2Fa54dd2e601bc260dba6d124f0e41ea48 +0 -0
  448. data/test/dummy/tmp/cache/assets/D88/F10/sprockets%2F8e8aacf9bb943215da36e48de57898b8 +0 -0
  449. data/test/dummy/tmp/cache/assets/D96/130/sprockets%2Fca2892c5774fcef0d04e4a5ab238a81b +0 -0
  450. data/test/dummy/tmp/cache/assets/D96/3B0/sprockets%2F55021ed83e62225daa5e5f7d63cdd0fc +0 -0
  451. data/test/dummy/tmp/cache/assets/D97/140/sprockets%2F894bacf9ace6c46e1b70610f2e12ac56 +0 -0
  452. data/test/dummy/tmp/cache/assets/DA2/050/sprockets%2F571a6834d9cabb59da17f83431ca9feb +0 -0
  453. data/test/dummy/tmp/cache/assets/DA4/B00/sprockets%2Fc3e3f4d5bea91c516b9e779a37651bbd +0 -0
  454. data/test/dummy/tmp/cache/assets/DA9/040/sprockets%2F840de459a6d1c9d87c8dcaf24f128b6c +0 -0
  455. data/test/dummy/tmp/cache/assets/DAB/540/sprockets%2Fb0518afe456f5094d8d9ade32edb985c +0 -0
  456. data/test/dummy/tmp/cache/assets/DC6/6B0/sprockets%2Fd36a94dae97de924ca11bcbb4f8a5006 +0 -0
  457. data/test/dummy/tmp/cache/assets/DD0/B50/sprockets%2F965cf49b0f4bc5a87e7d090aaf331aef +0 -0
  458. data/test/dummy/tmp/cache/assets/DD7/4A0/sprockets%2Fe5ef864e860eb0a95b4ac71cf239ffb4 +0 -0
  459. data/test/dummy/tmp/cache/assets/DFC/F40/sprockets%2F3c2e88bc8ee7e3afa6d790aec3f5b002 +0 -0
  460. data/test/dummy/tmp/cache/assets/DFC/FF0/sprockets%2F85ad0478ccaf1ce1fef2eec948a7006a +0 -0
  461. data/test/dummy/tmp/cache/assets/E6A/4B0/sprockets%2Fdea814b3f9e9bd154ee99ba09cfbfa5f +0 -0
  462. data/test/dummy/tmp/cache/assets/E74/190/sprockets%2F526cff6ffea7b75df9e3a7af389dafd2 +0 -0
  463. data/test/dummy/tmp/capybara/capybara-201109092320006678745731.html +95 -0
  464. data/test/dummy/tmp/capybara/capybara-201109092325048314739499.html +99 -0
  465. data/test/dummy/tmp/capybara/capybara-20110909232507494703749.html +99 -0
  466. data/test/dummy/tmp/capybara/capybara-201109092328469796695478.html +99 -0
  467. data/test/dummy/tmp/capybara/capybara-201109092330138915517817.html +99 -0
  468. data/test/dummy/tmp/capybara/capybara-201109092331366763771582.html +99 -0
  469. data/test/dummy/tmp/capybara/capybara-201109092331548655392084.html +99 -0
  470. data/test/dummy/tmp/capybara/capybara-201109092332183152685029.html +99 -0
  471. data/test/dummy/tmp/dragonfly/cache/body/02/721c6446a47a896dcec5814dde7fd642009ae4 +0 -0
  472. data/test/dummy/tmp/dragonfly/cache/body/08/0c26e7aee40c06f9d2cf2bbe66bb1b31f77eb6 +0 -0
  473. data/test/dummy/tmp/dragonfly/cache/body/08/254fdaeeef68ac1bd4e068bae4d538183f2418 +0 -0
  474. data/test/dummy/tmp/dragonfly/cache/body/0b/5fe01203ea843d9ce57ec076deba6686b972fc +0 -0
  475. data/test/dummy/tmp/dragonfly/cache/body/0d/ac97f509a0f1cc5bd06b74aa5a48de830c0211 +0 -0
  476. data/test/dummy/tmp/dragonfly/cache/body/0e/812da5582b69e917955b2f7548581a84b6cd6a +0 -0
  477. data/test/dummy/tmp/dragonfly/cache/body/12/dd55c3e1f837ed47c0bff8904f3eb356b5b0f6 +0 -0
  478. data/test/dummy/tmp/dragonfly/cache/body/15/c89387f2201547a650980eb83f5b00c0d4897d +0 -0
  479. data/test/dummy/tmp/dragonfly/cache/body/17/c372678aafb3bc1a7b37320b5cc1d8af433527 +0 -0
  480. data/test/dummy/tmp/dragonfly/cache/body/20/5f96aaf607592c0264d2d558debe2441db491f +67 -0
  481. data/test/dummy/tmp/dragonfly/cache/body/21/385143a7b417457e3fd0238114f9e905ab6a1d +0 -0
  482. data/test/dummy/tmp/dragonfly/cache/body/21/7f07b85f1d6096748b9e5b22c02319a4b8f390 +0 -0
  483. data/test/dummy/tmp/dragonfly/cache/body/23/0920237f649e2d5ad0882e5764d8548e9b3487 +0 -0
  484. data/test/dummy/tmp/dragonfly/cache/body/2f/8a4437d9ee577f23ccfa627b9eb3d7ff124276 +0 -0
  485. data/test/dummy/tmp/dragonfly/cache/body/2f/a601f43d7a7e7d9cb27727aa09c7c2ebf9dc99 +0 -0
  486. data/test/dummy/tmp/dragonfly/cache/body/3b/e4db5a0b83943d135fc5db57eb36c18620cdf4 +0 -0
  487. data/test/dummy/tmp/dragonfly/cache/body/3c/68fcd55940690f91d27c2d58669f8f820b0c54 +0 -0
  488. data/test/dummy/tmp/dragonfly/cache/body/41/e0112505525d15bdf882ef9225211561708253 +0 -0
  489. data/test/dummy/tmp/dragonfly/cache/body/42/827ecc71792a78d6c397ae60ef8f97286fbc82 +0 -0
  490. data/test/dummy/tmp/dragonfly/cache/body/46/d0d3f03762081530c375e7ef050708cc68cb7a +678 -0
  491. data/test/dummy/tmp/dragonfly/cache/body/4d/2dae957d0bb81139b39d955786e323ee055329 +0 -0
  492. data/test/dummy/tmp/dragonfly/cache/body/51/8ea4e56f01048ac2f8215e2ecdacc87fbcba3c +0 -0
  493. data/test/dummy/tmp/dragonfly/cache/body/57/39c3e8b2f1ee70719aecb8ef70df4b9e7aa30f +0 -0
  494. data/test/dummy/tmp/dragonfly/cache/body/5b/46eb669828b8a68c8acd6fc2db2eef49977ae9 +0 -0
  495. data/test/dummy/tmp/dragonfly/cache/body/5c/4f1da1404a7bb1a92c09651a8cebb689dd2794 +0 -0
  496. data/test/dummy/tmp/dragonfly/cache/body/5d/6c12803af858f267909373dcbfd0044c29329f +0 -0
  497. data/test/dummy/tmp/dragonfly/cache/body/60/7b9096192366c7dfda7b5272da2b29e9055832 +0 -0
  498. data/test/dummy/tmp/dragonfly/cache/body/61/8583b3fa87320abc5f5301128bd8dc4887ae6d +0 -0
  499. data/test/dummy/tmp/dragonfly/cache/body/65/fed3e34b83d067d408908450b99f92886a1169 +0 -0
  500. data/test/dummy/tmp/dragonfly/cache/body/67/59cadb44cd9fcf1826f884746f799b6de1dc6f +1601 -0
  501. data/test/dummy/tmp/dragonfly/cache/body/69/2a04fcfdde8b993612ef0f3fc2702ede8d11cc +0 -0
  502. data/test/dummy/tmp/dragonfly/cache/body/6d/fb275b3e335748e2229ce486420446f5bd5850 +0 -0
  503. data/test/dummy/tmp/dragonfly/cache/body/71/d37560812963e391f4af2d4d8345af9ae92a75 +0 -0
  504. data/test/dummy/tmp/dragonfly/cache/body/72/5bc79d8cf7ee35f0d895d16be006b9cdccaa84 +0 -0
  505. data/test/dummy/tmp/dragonfly/cache/body/75/5fbdc9e158883976a91a81c5fb8e1a75a73db0 +124 -0
  506. data/test/dummy/tmp/dragonfly/cache/body/79/fa5c68d077a3878a1906b1ecb323d71b51c728 +0 -0
  507. data/test/dummy/tmp/dragonfly/cache/body/7b/df2ee1b3688998cc267d31b2d46db7d605dabb +36 -0
  508. data/test/dummy/tmp/dragonfly/cache/body/7c/72e4841fbc0214d562f5306ca03cf5360cbc41 +0 -0
  509. data/test/dummy/tmp/dragonfly/cache/body/7c/917486fde4f81cd3ef2e0214b127c99f0de028 +0 -0
  510. data/test/dummy/tmp/dragonfly/cache/body/81/15dce6dd36e132948846e70920cda88ab48193 +0 -0
  511. data/test/dummy/tmp/dragonfly/cache/body/85/a5c30dfd9be9f09412b7d4c24b050f8c6fa756 +0 -0
  512. data/test/dummy/tmp/dragonfly/cache/body/8a/b0f4219a7b2c19044a090115a45e76e43b268e +5 -0
  513. data/test/dummy/tmp/dragonfly/cache/body/8e/da1f981ced789b6a5cf38be3d0feb120371707 +5 -0
  514. data/test/dummy/tmp/dragonfly/cache/body/8f/5f17f48a805e82fd5b2121fc4778c07e942fa1 +0 -0
  515. data/test/dummy/tmp/dragonfly/cache/body/90/9eb8bdb06501dbdebdd18886291823626896db +0 -0
  516. data/test/dummy/tmp/dragonfly/cache/body/99/78272eaaac9cede9732d0259ba4346d15c8758 +0 -0
  517. data/test/dummy/tmp/dragonfly/cache/body/a1/9191b091ec5e351ab7d927af890252525e02af +0 -0
  518. data/test/dummy/tmp/dragonfly/cache/body/a2/5ea02e1fef7a8c1d868b5b6b90b220f77feec1 +0 -0
  519. data/test/dummy/tmp/dragonfly/cache/body/b2/44ae6f4a17abaf2edd0de1f9b6df0b726e519e +0 -0
  520. data/test/dummy/tmp/dragonfly/cache/body/c4/c117cf71769d9ff8ac43ada6987b1a5c28e7aa +0 -0
  521. data/test/dummy/tmp/dragonfly/cache/body/c7/19312be82da5b5863b7fa266ba7044c5e1a869 +0 -0
  522. data/test/dummy/tmp/dragonfly/cache/body/c7/9e06c42b18cb487bcbeb3dfa1cd6046bcec1ae +0 -0
  523. data/test/dummy/tmp/dragonfly/cache/body/d2/b8c4a040fdf477afee014b1025ddb4c9ac629b +0 -0
  524. data/test/dummy/tmp/dragonfly/cache/body/e0/70d032da00a71e9d13b4d176f44f0e8bb607fa +0 -0
  525. data/test/dummy/tmp/dragonfly/cache/body/e6/3fa52fe75043747175d92810dc6fc07055e599 +297 -0
  526. data/test/dummy/tmp/dragonfly/cache/body/e9/4a5c7b4e9b454754f59c1f99367b0ea2ee1065 +0 -0
  527. data/test/dummy/tmp/dragonfly/cache/body/f1/25e84ad3ce213a2c0818d443f37b9f0df2fec2 +0 -0
  528. data/test/dummy/tmp/dragonfly/cache/body/f5/bed1e84e45c5c74a29c42e9774b19d5980b694 +0 -0
  529. data/test/dummy/tmp/dragonfly/cache/body/f6/c8f7f60c3b65b6c78e36ddf236c9a90ef5f559 +0 -0
  530. data/test/dummy/tmp/dragonfly/cache/body/fa/3488e1c8533d4134d82b1c12370225c778e243 +0 -0
  531. data/test/dummy/tmp/dragonfly/cache/body/fb/629489200dc7864ba333386142de7aaeb42e14 +0 -0
  532. data/test/dummy/tmp/dragonfly/cache/body/fc/93e44494bc4b2a53ecf1d3e95aa2d8a01339ed +364 -0
  533. data/test/dummy/tmp/dragonfly/cache/body/ff/6a116d11d72ece8ee12df4222a8d050e621ced +0 -0
  534. data/test/dummy/tmp/dragonfly/cache/meta/01/3065619a0b9cae99580ddf0997720bffb1717a +0 -0
  535. data/test/dummy/tmp/dragonfly/cache/meta/04/af50d9817350da61d8ba5aea57ee5da612ab87 +0 -0
  536. data/test/dummy/tmp/dragonfly/cache/meta/0a/0cf0e35f173a394675f32be7c45ac2d055eb23 +0 -0
  537. data/test/dummy/tmp/dragonfly/cache/meta/0c/2966accbe048d462250fc2fb02dccf56c5753e +0 -0
  538. data/test/dummy/tmp/dragonfly/cache/meta/0d/1264278b6c78096e10e85c9ab6be94b2911da0 +0 -0
  539. data/test/dummy/tmp/dragonfly/cache/meta/0d/7c4648195ab8e0c30c41a49728ce2a96e15c6c +0 -0
  540. data/test/dummy/tmp/dragonfly/cache/meta/10/96b90ee1bcd363fd72c4d7f2fbd9e28042945e +0 -0
  541. data/test/dummy/tmp/dragonfly/cache/meta/12/3fc380689a07b29b77a4576c50f23a763c5e6b +0 -0
  542. data/test/dummy/tmp/dragonfly/cache/meta/18/070a70152465eee702884a4680efcb8ca2c4d8 +0 -0
  543. data/test/dummy/tmp/dragonfly/cache/meta/18/18005c396885d43a6d4bf39c5296e348b36a9f +0 -0
  544. data/test/dummy/tmp/dragonfly/cache/meta/19/f4bd3e5c66e2ff01ff1aacc51c82286850b9fd +0 -0
  545. data/test/dummy/tmp/dragonfly/cache/meta/1a/4f7e6c2c0139daf7220048e9acacca2260a9b5 +0 -0
  546. data/test/dummy/tmp/dragonfly/cache/meta/1a/efd420f6e3607d2d8d1ba81945bdd9d2a6059b +0 -0
  547. data/test/dummy/tmp/dragonfly/cache/meta/24/d0aebc1b6d4ac3b10caa6cfabf89b0ad8551c5 +0 -0
  548. data/test/dummy/tmp/dragonfly/cache/meta/25/13e224314708bfd6611c302dc5bdd254e1d143 +0 -0
  549. data/test/dummy/tmp/dragonfly/cache/meta/26/3291d6e1fff88a6fcea7c8abbe388feb247ba5 +0 -0
  550. data/test/dummy/tmp/dragonfly/cache/meta/29/2120cfb4b63f2b0d62e4d7da4c6c21ef25be6d +0 -0
  551. data/test/dummy/tmp/dragonfly/cache/meta/2b/0533453bd6f48c8273665ce90f2504c7953433 +0 -0
  552. data/test/dummy/tmp/dragonfly/cache/meta/2c/e93382e836abdfc7fa2cd878a853a2352c6863 +0 -0
  553. data/test/dummy/tmp/dragonfly/cache/meta/30/5fcc7f5f20cb4116ec776b1e0c84ad4124b7e3 +0 -0
  554. data/test/dummy/tmp/dragonfly/cache/meta/30/d631e3e7e76fb306572de037e3e22dac7c90b5 +0 -0
  555. data/test/dummy/tmp/dragonfly/cache/meta/32/bb0d86dce0954ce828e63fb229367150f8a348 +0 -0
  556. data/test/dummy/tmp/dragonfly/cache/meta/33/36e8fbaec28f1307731923edfeb217e779883d +0 -0
  557. data/test/dummy/tmp/dragonfly/cache/meta/34/4b8d55869a4bd3edab571ea25d5a60be74a4ad +0 -0
  558. data/test/dummy/tmp/dragonfly/cache/meta/36/059c3f0d7f64947c8e8655bc259d0d22c6f0ae +0 -0
  559. data/test/dummy/tmp/dragonfly/cache/meta/36/05f012ee4184f83178a9d9624f82da39535afa +0 -0
  560. data/test/dummy/tmp/dragonfly/cache/meta/37/fb962d39887389e020d58ef1f745ef1a6107cc +0 -0
  561. data/test/dummy/tmp/dragonfly/cache/meta/3b/856fc9f19a6d9e6a71bce9a841da7ee782fc4d +0 -0
  562. data/test/dummy/tmp/dragonfly/cache/meta/3c/0727fc9dc75105ed5db9c67c8dec217c00890e +0 -0
  563. data/test/dummy/tmp/dragonfly/cache/meta/40/c25475cb587c48d080dba999ad01f3680760a0 +0 -0
  564. data/test/dummy/tmp/dragonfly/cache/meta/42/248da9860a2fcefea309334de75486a4619e31 +0 -0
  565. data/test/dummy/tmp/dragonfly/cache/meta/4d/f57798fd4469ad3dc138784597a0786ae7485d +0 -0
  566. data/test/dummy/tmp/dragonfly/cache/meta/51/b3b7831b3925e105bbfa44907df3003b676d69 +0 -0
  567. data/test/dummy/tmp/dragonfly/cache/meta/52/bf5a4fdf49c8f85dfa21077c8aec7595166ff7 +0 -0
  568. data/test/dummy/tmp/dragonfly/cache/meta/53/f1cfc0b3a0db2005a893d1b4792cfebd02a496 +0 -0
  569. data/test/dummy/tmp/dragonfly/cache/meta/54/8f3e2400cdf954f37f3458f6848df0a2e757ad +0 -0
  570. data/test/dummy/tmp/dragonfly/cache/meta/55/30dc20e78a80eee7be7b3c2e7fb9a6240596db +0 -0
  571. data/test/dummy/tmp/dragonfly/cache/meta/55/38528ae65e63542e11cb67d3c08b540a9b2d94 +0 -0
  572. data/test/dummy/tmp/dragonfly/cache/meta/5a/004ae0e2810be18892a3b3ff3d73c5b25ad3f4 +0 -0
  573. data/test/dummy/tmp/dragonfly/cache/meta/5a/f69fd22127b74a43f6de78a7d76f53b9c04a02 +0 -0
  574. data/test/dummy/tmp/dragonfly/cache/meta/5b/9a5982c77d59446fa2c789a2e7b6cd3895d753 +0 -0
  575. data/test/dummy/tmp/dragonfly/cache/meta/60/af267c39b09e11ff7d7bfc727d48ca0e107afd +0 -0
  576. data/test/dummy/tmp/dragonfly/cache/meta/62/a94c517cd458c99ce0f00fbca345b386791cfc +0 -0
  577. data/test/dummy/tmp/dragonfly/cache/meta/63/4fbf95f978eb0e7ee339e28306bc9c6f106aa6 +0 -0
  578. data/test/dummy/tmp/dragonfly/cache/meta/63/e389869e5c2ae071a4ccd8474de105688917ef +0 -0
  579. data/test/dummy/tmp/dragonfly/cache/meta/65/c109299780f8c24cc265b8cf0c008b2695b2d0 +0 -0
  580. data/test/dummy/tmp/dragonfly/cache/meta/67/3a6ed8453f75e7560051d0764e25985fbc73f6 +0 -0
  581. data/test/dummy/tmp/dragonfly/cache/meta/69/e529e365a42911c19be24956d4d69ea6549a1e +0 -0
  582. data/test/dummy/tmp/dragonfly/cache/meta/6a/20921464b13433185c30ffadb364e222ae7ed6 +0 -0
  583. data/test/dummy/tmp/dragonfly/cache/meta/6a/6fef8f2fee7684b6aa79ffc874c801a6439cf7 +0 -0
  584. data/test/dummy/tmp/dragonfly/cache/meta/6b/4cb5999dbf269f63e8a0d90ac47e0fdcd7a7fc +0 -0
  585. data/test/dummy/tmp/dragonfly/cache/meta/6b/b67017491eefcfe9e77a3318c50537f58e08d0 +0 -0
  586. data/test/dummy/tmp/dragonfly/cache/meta/6d/09f8911bc33c26c3e29e5a65a201c963bdbc6d +0 -0
  587. data/test/dummy/tmp/dragonfly/cache/meta/6d/52b2b6a302149bbd91303f96d7b6ffdbca4e74 +0 -0
  588. data/test/dummy/tmp/dragonfly/cache/meta/6d/ee29e8ca14075ad948b8b4d6c72fa091c6da46 +0 -0
  589. data/test/dummy/tmp/dragonfly/cache/meta/6e/83d3a60fc229b04e7403d7131aa4814a4200ec +0 -0
  590. data/test/dummy/tmp/dragonfly/cache/meta/77/38b3417940cf16c3f3ad22f4700966ecd65d5f +0 -0
  591. data/test/dummy/tmp/dragonfly/cache/meta/78/91eda6ab044d75d3672900d2483a3faf1c514a +0 -0
  592. data/test/dummy/tmp/dragonfly/cache/meta/78/da9e9f151eb605b427b43e2098640de3fd4a6d +0 -0
  593. data/test/dummy/tmp/dragonfly/cache/meta/79/6c237ed7355682d77a2bdc75b729b63c3b35da +0 -0
  594. data/test/dummy/tmp/dragonfly/cache/meta/79/a367ab7493c1a7a7e877ff281fb6eed266293b +0 -0
  595. data/test/dummy/tmp/dragonfly/cache/meta/7a/e20b7ceaffa5ebb57b658f4d6a54434c0301f3 +0 -0
  596. data/test/dummy/tmp/dragonfly/cache/meta/81/f24ab09d96a0d40ab560a90e955c4a312aa16c +0 -0
  597. data/test/dummy/tmp/dragonfly/cache/meta/82/1a8db33dc013c9ed726ddf43544ff80cf5774f +0 -0
  598. data/test/dummy/tmp/dragonfly/cache/meta/83/c9e02a4d1e0fbec1698938386445e771abc2d5 +0 -0
  599. data/test/dummy/tmp/dragonfly/cache/meta/83/fa85e2058741d72b66a98cf71819794d7525d3 +0 -0
  600. data/test/dummy/tmp/dragonfly/cache/meta/8a/00f63a175cfe09352e9103621040457aafc9e8 +0 -0
  601. data/test/dummy/tmp/dragonfly/cache/meta/8a/be19ee1009445886ab915e98aaf4439dfea49e +0 -0
  602. data/test/dummy/tmp/dragonfly/cache/meta/8e/284814afc3b0022e3160614cbaa3d86f13b460 +0 -0
  603. data/test/dummy/tmp/dragonfly/cache/meta/90/8a5565b2a739ca74f478c627a420fed85e6c6c +0 -0
  604. data/test/dummy/tmp/dragonfly/cache/meta/91/5796a36ec9ee121e91397217a67a94ea6da1fa +0 -0
  605. data/test/dummy/tmp/dragonfly/cache/meta/98/ea755ff6eec2e9301261741fb2c6deacdbad55 +0 -0
  606. data/test/dummy/tmp/dragonfly/cache/meta/9c/1d73b13f2c881eb18ebbd543b4cf6cc68d6084 +0 -0
  607. data/test/dummy/tmp/dragonfly/cache/meta/9c/3654a4968510a1697953936517c0b51f2c88f7 +0 -0
  608. data/test/dummy/tmp/dragonfly/cache/meta/9c/ffa966404611fb6408a5b9c3d98b1d3ec2ade8 +0 -0
  609. data/test/dummy/tmp/dragonfly/cache/meta/9f/048ae8a78d8f4f5bbeffc9e4fe44547d30a3c3 +0 -0
  610. data/test/dummy/tmp/dragonfly/cache/meta/9f/0b98933058db40fd34385876c49d9815ccecef +0 -0
  611. data/test/dummy/tmp/dragonfly/cache/meta/9f/341ebba7f7eaeb03f608874c62f75b048c1450 +0 -0
  612. data/test/dummy/tmp/dragonfly/cache/meta/a0/95aca06b094735d07d35954bdee7ed7cfe0554 +0 -0
  613. data/test/dummy/tmp/dragonfly/cache/meta/a5/c23ac345316a47a28625f346ec288f4ffe833b +0 -0
  614. data/test/dummy/tmp/dragonfly/cache/meta/a6/4588ad53212e92bbaf0b54de604e7e7fa5b4db +0 -0
  615. data/test/dummy/tmp/dragonfly/cache/meta/a6/6070c84b51514a4b0df87efe9f45eeb73bb6ac +0 -0
  616. data/test/dummy/tmp/dragonfly/cache/meta/a8/0db0a6a24608ae624628d08f44d70c95649269 +0 -0
  617. data/test/dummy/tmp/dragonfly/cache/meta/aa/0edadeee0f51930b22f81d18d890eeb42d5401 +0 -0
  618. data/test/dummy/tmp/dragonfly/cache/meta/ab/26841be4fe66f5073bf80165818018b960a8ae +0 -0
  619. data/test/dummy/tmp/dragonfly/cache/meta/ab/ab380d458496ff33fa5595160d6af7f6937ab4 +0 -0
  620. data/test/dummy/tmp/dragonfly/cache/meta/ac/e54f85800ea849425abf55b913780cd24c17b5 +0 -0
  621. data/test/dummy/tmp/dragonfly/cache/meta/ac/efd266978924a9ae28e46abdc18da5cc570556 +0 -0
  622. data/test/dummy/tmp/dragonfly/cache/meta/ad/081a80bb92be111e886cead55d04302d7ecc5d +0 -0
  623. data/test/dummy/tmp/dragonfly/cache/meta/b0/1dfc84881b36982e7459fc7aceb0ed0436eb21 +0 -0
  624. data/test/dummy/tmp/dragonfly/cache/meta/b0/476d0611c67ca7e646fe9008027d2f7bb8fcc5 +0 -0
  625. data/test/dummy/tmp/dragonfly/cache/meta/b2/b5d99458d046e39c53e7989d1eca2213062c4a +0 -0
  626. data/test/dummy/tmp/dragonfly/cache/meta/b6/ebbc22d1d6daf6e8cc040dc390dbdac883b75e +0 -0
  627. data/test/dummy/tmp/dragonfly/cache/meta/b8/a226d376b7ee94ade1cc2b9a043b1dea49339e +0 -0
  628. data/test/dummy/tmp/dragonfly/cache/meta/ba/d54f2cb0ea7effe26fb522981c85f6fac64f32 +0 -0
  629. data/test/dummy/tmp/dragonfly/cache/meta/c5/5ead58e8a96964f7fb901faacb189e897cb007 +0 -0
  630. data/test/dummy/tmp/dragonfly/cache/meta/c6/fd4d90e43a76b3740851a8c80cf293307d2ea3 +0 -0
  631. data/test/dummy/tmp/dragonfly/cache/meta/c7/765e66244779358dccb3e201ee971393d84d78 +0 -0
  632. data/test/dummy/tmp/dragonfly/cache/meta/d1/a729f56a6d9af0910d9d1cf4acbbe2ef23cf56 +0 -0
  633. data/test/dummy/tmp/dragonfly/cache/meta/d3/4e9f7374955f09514d9a9fc8930a6cbce53b75 +0 -0
  634. data/test/dummy/tmp/dragonfly/cache/meta/d6/f1bee9080d9c2926b3ade281a8f1a0f9be79cd +0 -0
  635. data/test/dummy/tmp/dragonfly/cache/meta/d8/705b3496156d15650a193d89e485da0a2d15c6 +0 -0
  636. data/test/dummy/tmp/dragonfly/cache/meta/dc/d63af225e5131ef6464cbfc87e20dc63a44365 +0 -0
  637. data/test/dummy/tmp/dragonfly/cache/meta/dd/46c780a1284b0a84e1585fcaaec88729229a36 +0 -0
  638. data/test/dummy/tmp/dragonfly/cache/meta/e1/979d7cb9c431766cbafda1b1245cce7ea4f134 +0 -0
  639. data/test/dummy/tmp/dragonfly/cache/meta/e2/eab333969d7051831d38e5ba719e8887f4aca3 +0 -0
  640. data/test/dummy/tmp/dragonfly/cache/meta/e3/7b192c0fa3f14120b61ba43591b4e0148decc2 +0 -0
  641. data/test/dummy/tmp/dragonfly/cache/meta/e4/753c26eac3624a8f0906a4610eb9639e9f1238 +0 -0
  642. data/test/dummy/tmp/dragonfly/cache/meta/e4/8b49afae3e511dee8a480c0699f57af166c476 +0 -0
  643. data/test/dummy/tmp/dragonfly/cache/meta/e4/a4a5574b655ab7a23ac8ea6996ce6026cba172 +0 -0
  644. data/test/dummy/tmp/dragonfly/cache/meta/e6/5be6e8db6390a762521141e190fd51cb900510 +0 -0
  645. data/test/dummy/tmp/dragonfly/cache/meta/e8/018099d6dec59462ad5b4ff834a40769811c4b +0 -0
  646. data/test/dummy/tmp/dragonfly/cache/meta/ec/95bd937fde5971c9757707875459afd5ee969b +0 -0
  647. data/test/dummy/tmp/dragonfly/cache/meta/ed/164629434f41289c45072ffffd69ec4bcfbfdb +0 -0
  648. data/test/dummy/tmp/dragonfly/cache/meta/ed/452ae956d56d97238744889483dc28e05b4049 +0 -0
  649. data/test/dummy/tmp/dragonfly/cache/meta/ee/b10ca471bf747caae6ec43dd51134d4a4a1d35 +0 -0
  650. data/test/dummy/tmp/dragonfly/cache/meta/ee/bd50d392c542daa5b2e5a84bea9b061884dd50 +0 -0
  651. data/test/dummy/tmp/dragonfly/cache/meta/ee/fe74949a8c2a0bbc077385a12944d9f98a12e0 +0 -0
  652. data/test/dummy/tmp/dragonfly/cache/meta/ef/c1a278bfae61838492c518085077e090847928 +0 -0
  653. data/test/dummy/tmp/dragonfly/cache/meta/f1/44fd03870ca4a56ae2ed5eea541d2b16a331ed +0 -0
  654. data/test/dummy/tmp/dragonfly/cache/meta/f2/52c824b170bae8cac2db80a1bac032f2dcebcc +0 -0
  655. data/test/dummy/tmp/dragonfly/cache/meta/f6/3c95e93a23255c015b61e3ec1c8c0a943bb27f +0 -0
  656. data/test/dummy/tmp/dragonfly/cache/meta/f7/d62984c9d390ea3d5891ecbe2788626bc3c599 +0 -0
  657. data/test/dummy/tmp/dragonfly/cache/meta/f7/dc16bbb163aac4e7da0cbd6136bdf0401e732c +0 -0
  658. data/test/dummy/tmp/dragonfly/cache/meta/f9/67ac04386c59253bd80f4034d18af166cc5691 +0 -0
  659. data/test/fixtures/saphira/image_variants.yml +11 -0
  660. data/test/functional/saphira/image_variant_settings_controller_test.rb +21 -0
  661. data/test/functional/saphira/image_variants_controller_test.rb +51 -0
  662. data/test/unit/helpers/saphira/image_variant_settings_helper_test.rb +6 -0
  663. data/test/unit/helpers/saphira/image_variants_helper_test.rb +6 -0
  664. data/test/unit/saphira/image_variant_test.rb +9 -0
  665. metadata +1212 -25
@@ -0,0 +1,296 @@
1
+ /*
2
+ Uploadify v2.1.4
3
+ Release Date: November 8, 2010
4
+
5
+ Copyright (c) 2010 Ronnie Garcia, Travis Nickels
6
+
7
+ Permission is hereby granted, free of charge, to any person obtaining a copy
8
+ of this software and associated documentation files (the "Software"), to deal
9
+ in the Software without restriction, including without limitation the rights
10
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
11
+ copies of the Software, and to permit persons to whom the Software is
12
+ furnished to do so, subject to the following conditions:
13
+
14
+ The above copyright notice and this permission notice shall be included in
15
+ all copies or substantial portions of the Software.
16
+
17
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
20
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
21
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
22
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
23
+ THE SOFTWARE.
24
+ */
25
+
26
+ if(jQuery)(
27
+ function(jQuery){
28
+ jQuery.extend(jQuery.fn,{
29
+ uploadify:function(options) {
30
+ jQuery(this).each(function(){
31
+ var settings = jQuery.extend({
32
+ id : jQuery(this).attr('id'), // The ID of the object being Uploadified
33
+ uploader : 'uploadify.swf', // The path to the uploadify swf file
34
+ script : 'uploadify.php', // The path to the uploadify backend upload script
35
+ expressInstall : null, // The path to the express install swf file
36
+ folder : '', // The path to the upload folder
37
+ height : 30, // The height of the flash button
38
+ width : 120, // The width of the flash button
39
+ cancelImg : 'cancel.png', // The path to the cancel image for the default file queue item container
40
+ wmode : 'opaque', // The wmode of the flash file
41
+ scriptAccess : 'sameDomain', // Set to "always" to allow script access across domains
42
+ fileDataName : 'Filedata', // The name of the file collection object in the backend upload script
43
+ method : 'POST', // The method for sending variables to the backend upload script
44
+ queueSizeLimit : 999, // The maximum size of the file queue
45
+ simUploadLimit : 1, // The number of simultaneous uploads allowed
46
+ queueID : false, // The optional ID of the queue container
47
+ displayData : 'percentage', // Set to "speed" to show the upload speed in the default queue item
48
+ removeCompleted : true, // Set to true if you want the queue items to be removed when a file is done uploading
49
+ onInit : function() {}, // Function to run when uploadify is initialized
50
+ onSelect : function() {}, // Function to run when a file is selected
51
+ onSelectOnce : function() {}, // Function to run once when files are added to the queue
52
+ onQueueFull : function() {}, // Function to run when the queue reaches capacity
53
+ onCheck : function() {}, // Function to run when script checks for duplicate files on the server
54
+ onCancel : function() {}, // Function to run when an item is cleared from the queue
55
+ onClearQueue : function() {}, // Function to run when the queue is manually cleared
56
+ onError : function() {}, // Function to run when an upload item returns an error
57
+ onProgress : function() {}, // Function to run each time the upload progress is updated
58
+ onComplete : function() {}, // Function to run when an upload is completed
59
+ onAllComplete : function() {} // Function to run when all uploads are completed
60
+ }, options);
61
+ jQuery(this).data('settings',settings);
62
+ var pagePath = location.pathname;
63
+ pagePath = pagePath.split('/');
64
+ pagePath.pop();
65
+ pagePath = pagePath.join('/') + '/';
66
+ var data = {};
67
+ data.uploadifyID = settings.id;
68
+ data.pagepath = pagePath;
69
+ if (settings.buttonImg) data.buttonImg = escape(settings.buttonImg);
70
+ if (settings.buttonText) data.buttonText = escape(settings.buttonText);
71
+ if (settings.rollover) data.rollover = true;
72
+ data.script = settings.script;
73
+ data.folder = escape(settings.folder);
74
+ if (settings.scriptData) {
75
+ var scriptDataString = '';
76
+ for (var name in settings.scriptData) {
77
+ scriptDataString += '&' + name + '=' + settings.scriptData[name];
78
+ }
79
+ data.scriptData = escape(scriptDataString.substr(1));
80
+ }
81
+ data.width = settings.width;
82
+ data.height = settings.height;
83
+ data.wmode = settings.wmode;
84
+ data.method = settings.method;
85
+ data.queueSizeLimit = settings.queueSizeLimit;
86
+ data.simUploadLimit = settings.simUploadLimit;
87
+ if (settings.hideButton) data.hideButton = true;
88
+ if (settings.fileDesc) data.fileDesc = settings.fileDesc;
89
+ if (settings.fileExt) data.fileExt = settings.fileExt;
90
+ if (settings.multi) data.multi = true;
91
+ if (settings.auto) data.auto = true;
92
+ if (settings.sizeLimit) data.sizeLimit = settings.sizeLimit;
93
+ if (settings.checkScript) data.checkScript = settings.checkScript;
94
+ if (settings.fileDataName) data.fileDataName = settings.fileDataName;
95
+ if (settings.queueID) data.queueID = settings.queueID;
96
+ if (settings.onInit() !== false) {
97
+ jQuery(this).css('display','none');
98
+ jQuery(this).after('<div id="' + jQuery(this).attr('id') + 'Uploader"></div>');
99
+ swfobject.embedSWF(settings.uploader, settings.id + 'Uploader', settings.width, settings.height, '9.0.24', settings.expressInstall, data, {'quality':'high','wmode':settings.wmode,'allowScriptAccess':settings.scriptAccess},{},function(event) {
100
+ if (typeof(settings.onSWFReady) == 'function' && event.success) settings.onSWFReady();
101
+ });
102
+ if (settings.queueID == false) {
103
+ jQuery("#" + jQuery(this).attr('id') + "Uploader").after('<div id="' + jQuery(this).attr('id') + 'Queue" class="uploadifyQueue"></div>');
104
+ } else {
105
+ jQuery("#" + settings.queueID).addClass('uploadifyQueue');
106
+ }
107
+ }
108
+ if (typeof(settings.onOpen) == 'function') {
109
+ jQuery(this).bind("uploadifyOpen", settings.onOpen);
110
+ }
111
+ jQuery(this).bind("uploadifySelect", {'action': settings.onSelect, 'queueID': settings.queueID}, function(event, ID, fileObj) {
112
+ if (event.data.action(event, ID, fileObj) !== false) {
113
+ var byteSize = Math.round(fileObj.size / 1024 * 100) * .01;
114
+ var suffix = 'KB';
115
+ if (byteSize > 1000) {
116
+ byteSize = Math.round(byteSize *.001 * 100) * .01;
117
+ suffix = 'MB';
118
+ }
119
+ var sizeParts = byteSize.toString().split('.');
120
+ if (sizeParts.length > 1) {
121
+ byteSize = sizeParts[0] + '.' + sizeParts[1].substr(0,2);
122
+ } else {
123
+ byteSize = sizeParts[0];
124
+ }
125
+ if (fileObj.name.length > 20) {
126
+ fileName = fileObj.name.substr(0,20) + '...';
127
+ } else {
128
+ fileName = fileObj.name;
129
+ }
130
+ queue = '#' + jQuery(this).attr('id') + 'Queue';
131
+ if (event.data.queueID) {
132
+ queue = '#' + event.data.queueID;
133
+ }
134
+ jQuery(queue).append('<div id="' + jQuery(this).attr('id') + ID + '" class="uploadifyQueueItem">\
135
+ <div class="cancel">\
136
+ <a href="javascript:jQuery(\'#' + jQuery(this).attr('id') + '\').uploadifyCancel(\'' + ID + '\')"><img src="' + settings.cancelImg + '" border="0" /></a>\
137
+ </div>\
138
+ <span class="fileName">' + fileName + ' (' + byteSize + suffix + ')</span><span class="percentage"></span>\
139
+ <div class="uploadifyProgress">\
140
+ <div id="' + jQuery(this).attr('id') + ID + 'ProgressBar" class="uploadifyProgressBar"><!--Progress Bar--></div>\
141
+ </div>\
142
+ </div>');
143
+ }
144
+ });
145
+ jQuery(this).bind("uploadifySelectOnce", {'action': settings.onSelectOnce}, function(event, data) {
146
+ event.data.action(event, data);
147
+ if (settings.auto) {
148
+ if (settings.checkScript) {
149
+ jQuery(this).uploadifyUpload(null, false);
150
+ } else {
151
+ jQuery(this).uploadifyUpload(null, true);
152
+ }
153
+ }
154
+ });
155
+ jQuery(this).bind("uploadifyQueueFull", {'action': settings.onQueueFull}, function(event, queueSizeLimit) {
156
+ if (event.data.action(event, queueSizeLimit) !== false) {
157
+ alert('The queue is full. The max size is ' + queueSizeLimit + '.');
158
+ }
159
+ });
160
+ jQuery(this).bind("uploadifyCheckExist", {'action': settings.onCheck}, function(event, checkScript, fileQueueObj, folder, single) {
161
+ var postData = new Object();
162
+ postData = fileQueueObj;
163
+ postData.folder = (folder.substr(0,1) == '/') ? folder : pagePath + folder;
164
+ if (single) {
165
+ for (var ID in fileQueueObj) {
166
+ var singleFileID = ID;
167
+ }
168
+ }
169
+ jQuery.post(checkScript, postData, function(data) {
170
+ for(var key in data) {
171
+ if (event.data.action(event, data, key) !== false) {
172
+ var replaceFile = confirm("Do you want to replace the file " + data[key] + "?");
173
+ if (!replaceFile) {
174
+ document.getElementById(jQuery(event.target).attr('id') + 'Uploader').cancelFileUpload(key,true,true);
175
+ }
176
+ }
177
+ }
178
+ if (single) {
179
+ document.getElementById(jQuery(event.target).attr('id') + 'Uploader').startFileUpload(singleFileID, true);
180
+ } else {
181
+ document.getElementById(jQuery(event.target).attr('id') + 'Uploader').startFileUpload(null, true);
182
+ }
183
+ }, "json");
184
+ });
185
+ jQuery(this).bind("uploadifyCancel", {'action': settings.onCancel}, function(event, ID, fileObj, data, remove, clearFast) {
186
+ if (event.data.action(event, ID, fileObj, data, clearFast) !== false) {
187
+ if (remove) {
188
+ var fadeSpeed = (clearFast == true) ? 0 : 250;
189
+ jQuery("#" + jQuery(this).attr('id') + ID).fadeOut(fadeSpeed, function() { jQuery(this).remove() });
190
+ }
191
+ }
192
+ });
193
+ jQuery(this).bind("uploadifyClearQueue", {'action': settings.onClearQueue}, function(event, clearFast) {
194
+ var queueID = (settings.queueID) ? settings.queueID : jQuery(this).attr('id') + 'Queue';
195
+ if (clearFast) {
196
+ jQuery("#" + queueID).find('.uploadifyQueueItem').remove();
197
+ }
198
+ if (event.data.action(event, clearFast) !== false) {
199
+ jQuery("#" + queueID).find('.uploadifyQueueItem').each(function() {
200
+ var index = jQuery('.uploadifyQueueItem').index(this);
201
+ jQuery(this).delay(index * 100).fadeOut(250, function() { jQuery(this).remove() });
202
+ });
203
+ }
204
+ });
205
+ var errorArray = [];
206
+ jQuery(this).bind("uploadifyError", {'action': settings.onError}, function(event, ID, fileObj, errorObj) {
207
+ if (event.data.action(event, ID, fileObj, errorObj) !== false) {
208
+ var fileArray = new Array(ID, fileObj, errorObj);
209
+ errorArray.push(fileArray);
210
+ jQuery("#" + jQuery(this).attr('id') + ID).find('.percentage').text(" - " + errorObj.type + " Error");
211
+ jQuery("#" + jQuery(this).attr('id') + ID).find('.uploadifyProgress').hide();
212
+ jQuery("#" + jQuery(this).attr('id') + ID).addClass('uploadifyError');
213
+ }
214
+ });
215
+ if (typeof(settings.onUpload) == 'function') {
216
+ jQuery(this).bind("uploadifyUpload", settings.onUpload);
217
+ }
218
+ jQuery(this).bind("uploadifyProgress", {'action': settings.onProgress, 'toDisplay': settings.displayData}, function(event, ID, fileObj, data) {
219
+ if (event.data.action(event, ID, fileObj, data) !== false) {
220
+ jQuery("#" + jQuery(this).attr('id') + ID + "ProgressBar").animate({'width': data.percentage + '%'},250,function() {
221
+ if (data.percentage == 100) {
222
+ jQuery(this).closest('.uploadifyProgress').fadeOut(250,function() {jQuery(this).remove()});
223
+ }
224
+ });
225
+ if (event.data.toDisplay == 'percentage') displayData = ' - ' + data.percentage + '%';
226
+ if (event.data.toDisplay == 'speed') displayData = ' - ' + data.speed + 'KB/s';
227
+ if (event.data.toDisplay == null) displayData = ' ';
228
+ jQuery("#" + jQuery(this).attr('id') + ID).find('.percentage').text(displayData);
229
+ }
230
+ });
231
+ jQuery(this).bind("uploadifyComplete", {'action': settings.onComplete}, function(event, ID, fileObj, response, data) {
232
+ if (event.data.action(event, ID, fileObj, unescape(response), data) !== false) {
233
+ jQuery("#" + jQuery(this).attr('id') + ID).find('.percentage').text(' - Completed');
234
+ if (settings.removeCompleted) {
235
+ jQuery("#" + jQuery(event.target).attr('id') + ID).fadeOut(250,function() {jQuery(this).remove()});
236
+ }
237
+ jQuery("#" + jQuery(event.target).attr('id') + ID).addClass('completed');
238
+ }
239
+ });
240
+ if (typeof(settings.onAllComplete) == 'function') {
241
+ jQuery(this).bind("uploadifyAllComplete", {'action': settings.onAllComplete}, function(event, data) {
242
+ if (event.data.action(event, data) !== false) {
243
+ errorArray = [];
244
+ }
245
+ });
246
+ }
247
+ });
248
+ },
249
+ uploadifySettings:function(settingName, settingValue, resetObject) {
250
+ var returnValue = false;
251
+ jQuery(this).each(function() {
252
+ if (settingName == 'scriptData' && settingValue != null) {
253
+ if (resetObject) {
254
+ var scriptData = settingValue;
255
+ } else {
256
+ var scriptData = jQuery.extend(jQuery(this).data('settings').scriptData, settingValue);
257
+ }
258
+ var scriptDataString = '';
259
+ for (var name in scriptData) {
260
+ scriptDataString += '&' + name + '=' + scriptData[name];
261
+ }
262
+ settingValue = escape(scriptDataString.substr(1));
263
+ }
264
+ returnValue = document.getElementById(jQuery(this).attr('id') + 'Uploader').updateSettings(settingName, settingValue);
265
+ });
266
+ if (settingValue == null) {
267
+ if (settingName == 'scriptData') {
268
+ var returnSplit = unescape(returnValue).split('&');
269
+ var returnObj = new Object();
270
+ for (var i = 0; i < returnSplit.length; i++) {
271
+ var iSplit = returnSplit[i].split('=');
272
+ returnObj[iSplit[0]] = iSplit[1];
273
+ }
274
+ returnValue = returnObj;
275
+ }
276
+ }
277
+ return returnValue;
278
+ },
279
+ uploadifyUpload:function(ID,checkComplete) {
280
+ jQuery(this).each(function() {
281
+ if (!checkComplete) checkComplete = false;
282
+ document.getElementById(jQuery(this).attr('id') + 'Uploader').startFileUpload(ID, checkComplete);
283
+ });
284
+ },
285
+ uploadifyCancel:function(ID) {
286
+ jQuery(this).each(function() {
287
+ document.getElementById(jQuery(this).attr('id') + 'Uploader').cancelFileUpload(ID, true, true, false);
288
+ });
289
+ },
290
+ uploadifyClearQueue:function() {
291
+ jQuery(this).each(function() {
292
+ document.getElementById(jQuery(this).attr('id') + 'Uploader').clearFileUploadQueue(false);
293
+ });
294
+ }
295
+ })
296
+ })(jQuery);
@@ -0,0 +1,4 @@
1
+ /* SWFObject v2.2 <http://code.google.com/p/swfobject/>
2
+ is released under the MIT License <http://www.opensource.org/licenses/mit-license.php>
3
+ */
4
+ var swfobject=function(){var D="undefined",r="object",S="Shockwave Flash",W="ShockwaveFlash.ShockwaveFlash",q="application/x-shockwave-flash",R="SWFObjectExprInst",x="onreadystatechange",O=window,j=document,t=navigator,T=false,U=[h],o=[],N=[],I=[],l,Q,E,B,J=false,a=false,n,G,m=true,M=function(){var aa=typeof j.getElementById!=D&&typeof j.getElementsByTagName!=D&&typeof j.createElement!=D,ah=t.userAgent.toLowerCase(),Y=t.platform.toLowerCase(),ae=Y?/win/.test(Y):/win/.test(ah),ac=Y?/mac/.test(Y):/mac/.test(ah),af=/webkit/.test(ah)?parseFloat(ah.replace(/^.*webkit\/(\d+(\.\d+)?).*$/,"$1")):false,X=!+"\v1",ag=[0,0,0],ab=null;if(typeof t.plugins!=D&&typeof t.plugins[S]==r){ab=t.plugins[S].description;if(ab&&!(typeof t.mimeTypes!=D&&t.mimeTypes[q]&&!t.mimeTypes[q].enabledPlugin)){T=true;X=false;ab=ab.replace(/^.*\s+(\S+\s+\S+$)/,"$1");ag[0]=parseInt(ab.replace(/^(.*)\..*$/,"$1"),10);ag[1]=parseInt(ab.replace(/^.*\.(.*)\s.*$/,"$1"),10);ag[2]=/[a-zA-Z]/.test(ab)?parseInt(ab.replace(/^.*[a-zA-Z]+(.*)$/,"$1"),10):0}}else{if(typeof O.ActiveXObject!=D){try{var ad=new ActiveXObject(W);if(ad){ab=ad.GetVariable("$version");if(ab){X=true;ab=ab.split(" ")[1].split(",");ag=[parseInt(ab[0],10),parseInt(ab[1],10),parseInt(ab[2],10)]}}}catch(Z){}}}return{w3:aa,pv:ag,wk:af,ie:X,win:ae,mac:ac}}(),k=function(){if(!M.w3){return}if((typeof j.readyState!=D&&j.readyState=="complete")||(typeof j.readyState==D&&(j.getElementsByTagName("body")[0]||j.body))){f()}if(!J){if(typeof j.addEventListener!=D){j.addEventListener("DOMContentLoaded",f,false)}if(M.ie&&M.win){j.attachEvent(x,function(){if(j.readyState=="complete"){j.detachEvent(x,arguments.callee);f()}});if(O==top){(function(){if(J){return}try{j.documentElement.doScroll("left")}catch(X){setTimeout(arguments.callee,0);return}f()})()}}if(M.wk){(function(){if(J){return}if(!/loaded|complete/.test(j.readyState)){setTimeout(arguments.callee,0);return}f()})()}s(f)}}();function f(){if(J){return}try{var Z=j.getElementsByTagName("body")[0].appendChild(C("span"));Z.parentNode.removeChild(Z)}catch(aa){return}J=true;var X=U.length;for(var Y=0;Y<X;Y++){U[Y]()}}function K(X){if(J){X()}else{U[U.length]=X}}function s(Y){if(typeof O.addEventListener!=D){O.addEventListener("load",Y,false)}else{if(typeof j.addEventListener!=D){j.addEventListener("load",Y,false)}else{if(typeof O.attachEvent!=D){i(O,"onload",Y)}else{if(typeof O.onload=="function"){var X=O.onload;O.onload=function(){X();Y()}}else{O.onload=Y}}}}}function h(){if(T){V()}else{H()}}function V(){var X=j.getElementsByTagName("body")[0];var aa=C(r);aa.setAttribute("type",q);var Z=X.appendChild(aa);if(Z){var Y=0;(function(){if(typeof Z.GetVariable!=D){var ab=Z.GetVariable("$version");if(ab){ab=ab.split(" ")[1].split(",");M.pv=[parseInt(ab[0],10),parseInt(ab[1],10),parseInt(ab[2],10)]}}else{if(Y<10){Y++;setTimeout(arguments.callee,10);return}}X.removeChild(aa);Z=null;H()})()}else{H()}}function H(){var ag=o.length;if(ag>0){for(var af=0;af<ag;af++){var Y=o[af].id;var ab=o[af].callbackFn;var aa={success:false,id:Y};if(M.pv[0]>0){var ae=c(Y);if(ae){if(F(o[af].swfVersion)&&!(M.wk&&M.wk<312)){w(Y,true);if(ab){aa.success=true;aa.ref=z(Y);ab(aa)}}else{if(o[af].expressInstall&&A()){var ai={};ai.data=o[af].expressInstall;ai.width=ae.getAttribute("width")||"0";ai.height=ae.getAttribute("height")||"0";if(ae.getAttribute("class")){ai.styleclass=ae.getAttribute("class")}if(ae.getAttribute("align")){ai.align=ae.getAttribute("align")}var ah={};var X=ae.getElementsByTagName("param");var ac=X.length;for(var ad=0;ad<ac;ad++){if(X[ad].getAttribute("name").toLowerCase()!="movie"){ah[X[ad].getAttribute("name")]=X[ad].getAttribute("value")}}P(ai,ah,Y,ab)}else{p(ae);if(ab){ab(aa)}}}}}else{w(Y,true);if(ab){var Z=z(Y);if(Z&&typeof Z.SetVariable!=D){aa.success=true;aa.ref=Z}ab(aa)}}}}}function z(aa){var X=null;var Y=c(aa);if(Y&&Y.nodeName=="OBJECT"){if(typeof Y.SetVariable!=D){X=Y}else{var Z=Y.getElementsByTagName(r)[0];if(Z){X=Z}}}return X}function A(){return !a&&F("6.0.65")&&(M.win||M.mac)&&!(M.wk&&M.wk<312)}function P(aa,ab,X,Z){a=true;E=Z||null;B={success:false,id:X};var ae=c(X);if(ae){if(ae.nodeName=="OBJECT"){l=g(ae);Q=null}else{l=ae;Q=X}aa.id=R;if(typeof aa.width==D||(!/%$/.test(aa.width)&&parseInt(aa.width,10)<310)){aa.width="310"}if(typeof aa.height==D||(!/%$/.test(aa.height)&&parseInt(aa.height,10)<137)){aa.height="137"}j.title=j.title.slice(0,47)+" - Flash Player Installation";var ad=M.ie&&M.win?"ActiveX":"PlugIn",ac="MMredirectURL="+O.location.toString().replace(/&/g,"%26")+"&MMplayerType="+ad+"&MMdoctitle="+j.title;if(typeof ab.flashvars!=D){ab.flashvars+="&"+ac}else{ab.flashvars=ac}if(M.ie&&M.win&&ae.readyState!=4){var Y=C("div");X+="SWFObjectNew";Y.setAttribute("id",X);ae.parentNode.insertBefore(Y,ae);ae.style.display="none";(function(){if(ae.readyState==4){ae.parentNode.removeChild(ae)}else{setTimeout(arguments.callee,10)}})()}u(aa,ab,X)}}function p(Y){if(M.ie&&M.win&&Y.readyState!=4){var X=C("div");Y.parentNode.insertBefore(X,Y);X.parentNode.replaceChild(g(Y),X);Y.style.display="none";(function(){if(Y.readyState==4){Y.parentNode.removeChild(Y)}else{setTimeout(arguments.callee,10)}})()}else{Y.parentNode.replaceChild(g(Y),Y)}}function g(ab){var aa=C("div");if(M.win&&M.ie){aa.innerHTML=ab.innerHTML}else{var Y=ab.getElementsByTagName(r)[0];if(Y){var ad=Y.childNodes;if(ad){var X=ad.length;for(var Z=0;Z<X;Z++){if(!(ad[Z].nodeType==1&&ad[Z].nodeName=="PARAM")&&!(ad[Z].nodeType==8)){aa.appendChild(ad[Z].cloneNode(true))}}}}}return aa}function u(ai,ag,Y){var X,aa=c(Y);if(M.wk&&M.wk<312){return X}if(aa){if(typeof ai.id==D){ai.id=Y}if(M.ie&&M.win){var ah="";for(var ae in ai){if(ai[ae]!=Object.prototype[ae]){if(ae.toLowerCase()=="data"){ag.movie=ai[ae]}else{if(ae.toLowerCase()=="styleclass"){ah+=' class="'+ai[ae]+'"'}else{if(ae.toLowerCase()!="classid"){ah+=" "+ae+'="'+ai[ae]+'"'}}}}}var af="";for(var ad in ag){if(ag[ad]!=Object.prototype[ad]){af+='<param name="'+ad+'" value="'+ag[ad]+'" />'}}aa.outerHTML='<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"'+ah+">"+af+"</object>";N[N.length]=ai.id;X=c(ai.id)}else{var Z=C(r);Z.setAttribute("type",q);for(var ac in ai){if(ai[ac]!=Object.prototype[ac]){if(ac.toLowerCase()=="styleclass"){Z.setAttribute("class",ai[ac])}else{if(ac.toLowerCase()!="classid"){Z.setAttribute(ac,ai[ac])}}}}for(var ab in ag){if(ag[ab]!=Object.prototype[ab]&&ab.toLowerCase()!="movie"){e(Z,ab,ag[ab])}}aa.parentNode.replaceChild(Z,aa);X=Z}}return X}function e(Z,X,Y){var aa=C("param");aa.setAttribute("name",X);aa.setAttribute("value",Y);Z.appendChild(aa)}function y(Y){var X=c(Y);if(X&&X.nodeName=="OBJECT"){if(M.ie&&M.win){X.style.display="none";(function(){if(X.readyState==4){b(Y)}else{setTimeout(arguments.callee,10)}})()}else{X.parentNode.removeChild(X)}}}function b(Z){var Y=c(Z);if(Y){for(var X in Y){if(typeof Y[X]=="function"){Y[X]=null}}Y.parentNode.removeChild(Y)}}function c(Z){var X=null;try{X=j.getElementById(Z)}catch(Y){}return X}function C(X){return j.createElement(X)}function i(Z,X,Y){Z.attachEvent(X,Y);I[I.length]=[Z,X,Y]}function F(Z){var Y=M.pv,X=Z.split(".");X[0]=parseInt(X[0],10);X[1]=parseInt(X[1],10)||0;X[2]=parseInt(X[2],10)||0;return(Y[0]>X[0]||(Y[0]==X[0]&&Y[1]>X[1])||(Y[0]==X[0]&&Y[1]==X[1]&&Y[2]>=X[2]))?true:false}function v(ac,Y,ad,ab){if(M.ie&&M.mac){return}var aa=j.getElementsByTagName("head")[0];if(!aa){return}var X=(ad&&typeof ad=="string")?ad:"screen";if(ab){n=null;G=null}if(!n||G!=X){var Z=C("style");Z.setAttribute("type","text/css");Z.setAttribute("media",X);n=aa.appendChild(Z);if(M.ie&&M.win&&typeof j.styleSheets!=D&&j.styleSheets.length>0){n=j.styleSheets[j.styleSheets.length-1]}G=X}if(M.ie&&M.win){if(n&&typeof n.addRule==r){n.addRule(ac,Y)}}else{if(n&&typeof j.createTextNode!=D){n.appendChild(j.createTextNode(ac+" {"+Y+"}"))}}}function w(Z,X){if(!m){return}var Y=X?"visible":"hidden";if(J&&c(Z)){c(Z).style.visibility=Y}else{v("#"+Z,"visibility:"+Y)}}function L(Y){var Z=/[\\\"<>\.;]/;var X=Z.exec(Y)!=null;return X&&typeof encodeURIComponent!=D?encodeURIComponent(Y):Y}var d=function(){if(M.ie&&M.win){window.attachEvent("onunload",function(){var ac=I.length;for(var ab=0;ab<ac;ab++){I[ab][0].detachEvent(I[ab][1],I[ab][2])}var Z=N.length;for(var aa=0;aa<Z;aa++){y(N[aa])}for(var Y in M){M[Y]=null}M=null;for(var X in swfobject){swfobject[X]=null}swfobject=null})}}();return{registerObject:function(ab,X,aa,Z){if(M.w3&&ab&&X){var Y={};Y.id=ab;Y.swfVersion=X;Y.expressInstall=aa;Y.callbackFn=Z;o[o.length]=Y;w(ab,false)}else{if(Z){Z({success:false,id:ab})}}},getObjectById:function(X){if(M.w3){return z(X)}},embedSWF:function(ab,ah,ae,ag,Y,aa,Z,ad,af,ac){var X={success:false,id:ah};if(M.w3&&!(M.wk&&M.wk<312)&&ab&&ah&&ae&&ag&&Y){w(ah,false);K(function(){ae+="";ag+="";var aj={};if(af&&typeof af===r){for(var al in af){aj[al]=af[al]}}aj.data=ab;aj.width=ae;aj.height=ag;var am={};if(ad&&typeof ad===r){for(var ak in ad){am[ak]=ad[ak]}}if(Z&&typeof Z===r){for(var ai in Z){if(typeof am.flashvars!=D){am.flashvars+="&"+ai+"="+Z[ai]}else{am.flashvars=ai+"="+Z[ai]}}}if(F(Y)){var an=u(aj,am,ah);if(aj.id==ah){w(ah,true)}X.success=true;X.ref=an}else{if(aa&&A()){aj.data=aa;P(aj,am,ah,ac);return}else{w(ah,true)}}if(ac){ac(X)}})}else{if(ac){ac(X)}}},switchOffAutoHideShow:function(){m=false},ua:M,getFlashPlayerVersion:function(){return{major:M.pv[0],minor:M.pv[1],release:M.pv[2]}},hasFlashPlayerVersion:F,createSWF:function(Z,Y,X){if(M.w3){return u(Z,Y,X)}else{return undefined}},showExpressInstall:function(Z,aa,X,Y){if(M.w3&&A()){P(Z,aa,X,Y)}},removeSWF:function(X){if(M.w3){y(X)}},createCSS:function(aa,Z,Y,X){if(M.w3){v(aa,Z,Y,X)}},addDomLoadEvent:K,addLoadEvent:s,getQueryParamValue:function(aa){var Z=j.location.search||j.location.hash;if(Z){if(/\?/.test(Z)){Z=Z.split("?")[1]}if(aa==null){return L(Z)}var Y=Z.split("&");for(var X=0;X<Y.length;X++){if(Y[X].substring(0,Y[X].indexOf("="))==aa){return L(Y[X].substring((Y[X].indexOf("=")+1)))}}}return""},expressInstallCallback:function(){if(a){var X=c(R);if(X&&l){X.parentNode.replaceChild(l,X);if(Q){w(Q,true);if(M.ie&&M.win){l.style.display="block"}}if(E){E(B)}}a=false}}}}();
@@ -0,0 +1,4 @@
1
+ /*
2
+ Place all the styles related to the matching controller here.
3
+ They will automatically be included in application.css.
4
+ */
@@ -0,0 +1,4 @@
1
+ /*
2
+ Place all the styles related to the matching controller here.
3
+ They will automatically be included in application.css.
4
+ */
@@ -0,0 +1,35 @@
1
+ /* Fixes issue here http://code.google.com/p/jcrop/issues/detail?id=1 */
2
+ .jcrop-holder { text-align: left; }
3
+
4
+ .jcrop-vline, .jcrop-hline
5
+ {
6
+ font-size: 0px;
7
+ position: absolute;
8
+ background: white url('jcrop.gif') top left repeat;
9
+ }
10
+ .jcrop-vline { height: 100%; width: 1px !important; }
11
+ .jcrop-hline { width: 100%; height: 1px !important; }
12
+ .jcrop-vline.right { right: 0px; }
13
+ .jcrop-hline.bottom { bottom: 0px; }
14
+ .jcrop-handle {
15
+ font-size: 1px;
16
+ width: 7px !important;
17
+ height: 7px !important;
18
+ border: 1px #eee solid;
19
+ background-color: #333;
20
+ }
21
+
22
+ .jcrop-tracker { width: 100%; height: 100%; }
23
+
24
+ .custom .jcrop-vline,
25
+ .custom .jcrop-hline
26
+ {
27
+ background: yellow;
28
+ }
29
+ .custom .jcrop-handle
30
+ {
31
+ border-color: black;
32
+ background-color: #C7BB00;
33
+ -moz-border-radius: 3px;
34
+ -webkit-border-radius: 3px;
35
+ }
@@ -0,0 +1,52 @@
1
+ /*
2
+ Uploadify v2.1.4
3
+ Release Date: November 8, 2010
4
+
5
+ Copyright (c) 2010 Ronnie Garcia, Travis Nickels
6
+
7
+ Permission is hereby granted, free of charge, to any person obtaining a copy
8
+ of this software and associated documentation files (the "Software"), to deal
9
+ in the Software without restriction, including without limitation the rights
10
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
11
+ copies of the Software, and to permit persons to whom the Software is
12
+ furnished to do so, subject to the following conditions:
13
+
14
+ The above copyright notice and this permission notice shall be included in
15
+ all copies or substantial portions of the Software.
16
+
17
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
20
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
21
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
22
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
23
+ THE SOFTWARE.
24
+ */
25
+ .uploadifyQueueItem {
26
+ background-color: #F5F5F5;
27
+ border: 2px solid #E5E5E5;
28
+ font: 11px Verdana, Geneva, sans-serif;
29
+ margin-top: 5px;
30
+ padding: 10px;
31
+ width: 350px;
32
+ }
33
+ .uploadifyError {
34
+ background-color: #FDE5DD !important;
35
+ border: 2px solid #FBCBBC !important;
36
+ }
37
+ .uploadifyQueueItem .cancel {
38
+ float: right;
39
+ }
40
+ .uploadifyQueue .completed {
41
+ background-color: #E5E5E5;
42
+ }
43
+ .uploadifyProgress {
44
+ background-color: #E5E5E5;
45
+ margin-top: 10px;
46
+ width: 100%;
47
+ }
48
+ .uploadifyProgressBar {
49
+ background-color: #0099FF;
50
+ height: 3px;
51
+ width: 1px;
52
+ }
@@ -43,6 +43,12 @@ module Saphira
43
43
  format.json { render :json => @file_item }
44
44
  end
45
45
  end
46
+
47
+ def upload_files
48
+ respond_to do |format|
49
+ format.html { }
50
+ end
51
+ end
46
52
 
47
53
  # GET /file_items/1/edit
48
54
  def edit
@@ -57,6 +63,7 @@ module Saphira
57
63
  # POST /file_items
58
64
  # POST /file_items.json
59
65
  def create
66
+ params[:file_item][:parent_id] = nil if params[:file_item][:parent_id].blank?
60
67
  @file_item = FileItem.new(params[:file_item])
61
68
 
62
69
  respond_to do |format|
@@ -77,7 +84,7 @@ module Saphira
77
84
 
78
85
  respond_to do |format|
79
86
  if @file_item.update_attributes(params[:file_item])
80
- format.html { redirect_to @file_item, :notice => 'File item was successfully updated.' }
87
+ format.html { redirect_to (params[:redirect_to] || @file_item), :notice => 'File item was successfully updated.' }
81
88
  format.json { head :ok }
82
89
  else
83
90
  format.html { render :action => "edit_#{@file_item.item_type}" }
@@ -0,0 +1,41 @@
1
+ module Saphira
2
+ class ImageVariantSettingsController < ApplicationController
3
+ # GET /file_items/1/image_variant_settings/1
4
+ # GET /file_items/1/image_variant_settings/1.json
5
+ def show
6
+ @file_item = FileItem.find_by_path(params[:file_item_id])
7
+ @image_variant = ImageVariant.find(params[:id])
8
+
9
+ respond_to do |format|
10
+ format.html { }
11
+ format.json { render :json => @file_item }
12
+ end
13
+ end
14
+
15
+ # GET /file_items/1/image_variant_settings/1/edit
16
+ def edit
17
+ @file_item = FileItem.find_by_path(params[:file_item_id])
18
+
19
+ respond_to do |format|
20
+ format.html { }
21
+ format.json { render :json => @file_item }
22
+ end
23
+ end
24
+
25
+ # PUT /file_items/1/image_variant_settings/1
26
+ # PUT /file_items/1/image_variant_settings/1.json
27
+ def update
28
+ @file_item = FileItem.find_by_path(params[:file_item_id])
29
+
30
+ respond_to do |format|
31
+ if @file_item.update_attributes(params[:file_item])
32
+ format.html { redirect_to @file_item, :notice => 'File item was successfully updated.' }
33
+ format.json { head :ok }
34
+ else
35
+ format.html { }
36
+ format.json { render :json => @file_item.errors, :status => :unprocessable_entity }
37
+ end
38
+ end
39
+ end
40
+ end
41
+ end
@@ -0,0 +1,85 @@
1
+ module Saphira
2
+ class ImageVariantsController < ApplicationController
3
+ # GET /image_variants
4
+ # GET /image_variants.json
5
+ def index
6
+ @image_variants = ImageVariant.all
7
+
8
+ respond_to do |format|
9
+ format.html # index.html.erb
10
+ format.json { render json: @image_variants }
11
+ end
12
+ end
13
+
14
+ # GET /image_variants/1
15
+ # GET /image_variants/1.json
16
+ def show
17
+ @image_variant = ImageVariant.find(params[:id])
18
+
19
+ respond_to do |format|
20
+ format.html # show.html.erb
21
+ format.json { render json: @image_variant }
22
+ end
23
+ end
24
+
25
+ # GET /image_variants/new
26
+ # GET /image_variants/new.json
27
+ def new
28
+ @image_variant = ImageVariant.new
29
+
30
+ respond_to do |format|
31
+ format.html # new.html.erb
32
+ format.json { render json: @image_variant }
33
+ end
34
+ end
35
+
36
+ # GET /image_variants/1/edit
37
+ def edit
38
+ @image_variant = ImageVariant.find(params[:id])
39
+ end
40
+
41
+ # POST /image_variants
42
+ # POST /image_variants.json
43
+ def create
44
+ @image_variant = ImageVariant.new(params[:image_variant])
45
+
46
+ respond_to do |format|
47
+ if @image_variant.save
48
+ format.html { redirect_to @image_variant, notice: 'Image variant was successfully created.' }
49
+ format.json { render json: @image_variant, status: :created, location: @image_variant }
50
+ else
51
+ format.html { render action: "new" }
52
+ format.json { render json: @image_variant.errors, status: :unprocessable_entity }
53
+ end
54
+ end
55
+ end
56
+
57
+ # PUT /image_variants/1
58
+ # PUT /image_variants/1.json
59
+ def update
60
+ @image_variant = ImageVariant.find(params[:id])
61
+
62
+ respond_to do |format|
63
+ if @image_variant.update_attributes(params[:image_variant])
64
+ format.html { redirect_to @image_variant, notice: 'Image variant was successfully updated.' }
65
+ format.json { head :ok }
66
+ else
67
+ format.html { render action: "edit" }
68
+ format.json { render json: @image_variant.errors, status: :unprocessable_entity }
69
+ end
70
+ end
71
+ end
72
+
73
+ # DELETE /image_variants/1
74
+ # DELETE /image_variants/1.json
75
+ def destroy
76
+ @image_variant = ImageVariant.find(params[:id])
77
+ @image_variant.destroy
78
+
79
+ respond_to do |format|
80
+ format.html { redirect_to image_variants_url }
81
+ format.json { head :ok }
82
+ end
83
+ end
84
+ end
85
+ end
@@ -0,0 +1,4 @@
1
+ module Saphira
2
+ module ImageVariantSettingsHelper
3
+ end
4
+ end
@@ -0,0 +1,4 @@
1
+ module Saphira
2
+ module ImageVariantsHelper
3
+ end
4
+ end
@@ -9,6 +9,9 @@ module Saphira
9
9
 
10
10
  validates_presence_of :name
11
11
  validates_uniqueness_of :name, :scope => :parent_id
12
+ before_validation do
13
+ self.name = self.file_name if self.name.blank?
14
+ end
12
15
 
13
16
  acts_as_nested_set
14
17
  friendly_id :name, :use => :scoped, :scope => :parent_id
@@ -16,12 +19,20 @@ module Saphira
16
19
  file_accessor :file do
17
20
  after_assign do |img|
18
21
  if (img.image?)
22
+ # set the mime type
19
23
  case img.mime_type
20
24
  when 'image/jpeg'
21
25
  exifr = EXIFR::JPEG.new(img.path.to_s)
22
26
  when 'image/tiff'
23
27
  exifr = EXIFR::TIFF.new(img.path.to_s)
24
28
  end
29
+
30
+ # set the size, this can be refactured using dragonfly if the with method
31
+ # of the analyzer is fixed (see https://github.com/markevans/dragonfly/issues/122)
32
+ mm_image = MiniMagick::Image.open(img.path)
33
+ self.field_width = mm_image[:width]
34
+ self.field_height = mm_image[:height]
35
+
25
36
  # http://www.dcresource.com/reviews/exif_key.html
26
37
  if exifr
27
38
  self.attr_set :field_image_capture_date, exifr.date_time_original
@@ -76,6 +87,38 @@ module Saphira
76
87
  self.dynamic_attributes[name.to_sym]
77
88
  end
78
89
 
90
+ def image_variant(id)
91
+ raise "the given file is no image" unless file.image?
92
+ variant = ImageVariant.find(id)
93
+ raise "no variant with id #{id} found" unless variant
94
+ file.manipulate(self.pre_manipulation(id) + ' ' + variant.manipulation)
95
+ end
96
+
97
+ def pre_manipulation(id)
98
+ self.attr_get("pre_manipulation_#{id}") || ''
99
+ end
100
+
101
+ def method_missing(method_name, *args, &block)
102
+ case method_name
103
+ when /^field_([a-zA-Z0-9_]+)$/
104
+ attr_get($1)
105
+ when /^field_([a-zA-Z0-9_]+)=$/
106
+ attr_set($1, args[0])
107
+ else
108
+ super
109
+ end
110
+ end
111
+
112
+ # Overrides update_attributes to take dynamic attributes into account
113
+ def update_attributes(attributes)
114
+ attributes.each do |key, value|
115
+ if key.match(/^field_([a-zA-Z0-9_]+)$/)
116
+ attr_set($1, attributes.delete(key))
117
+ end
118
+ end
119
+ super(attributes)
120
+ end
121
+
79
122
  def to_param
80
123
  self.path.empty? ? super : self.path
81
124
  end
@@ -0,0 +1,4 @@
1
+ module Saphira
2
+ class ImageVariant < ActiveRecord::Base
3
+ end
4
+ end