spree 0.8.5 → 0.9.0

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of spree might be problematic. Click here for more details.

Files changed (914) hide show
  1. data/CHANGELOG +97 -4
  2. data/CONTRIBUTORS +62 -29
  3. data/LICENSE +1 -1
  4. data/README.markdown +1 -1
  5. data/app/controllers/admin/base_controller.rb +10 -1
  6. data/app/controllers/admin/configurations_controller.rb +19 -8
  7. data/app/controllers/admin/coupons_controller.rb +17 -0
  8. data/app/controllers/admin/creditcard_payments_controller.rb +4 -8
  9. data/app/controllers/admin/images_controller.rb +42 -3
  10. data/app/controllers/admin/orders_controller.rb +12 -12
  11. data/app/controllers/admin/products_controller.rb +12 -32
  12. data/app/controllers/admin/prototypes_controller.rb +3 -1
  13. data/app/controllers/admin/reports_controller.rb +6 -6
  14. data/app/controllers/admin/shipments_controller.rb +12 -1
  15. data/app/controllers/admin/shipping_methods_controller.rb +17 -17
  16. data/app/controllers/admin/shipping_rates_controller.rb +20 -0
  17. data/app/controllers/admin/tax_rates_controller.rb +28 -0
  18. data/{vendor/extensions/tax_calculator/app → app}/controllers/admin/tax_settings_controller.rb +1 -1
  19. data/app/controllers/admin/taxons_controller.rb +18 -72
  20. data/app/controllers/admin/users_controller.rb +6 -6
  21. data/app/controllers/admin/zones_controller.rb +4 -4
  22. data/app/controllers/application.rb +3 -3
  23. data/app/controllers/checkouts_controller.rb +158 -0
  24. data/app/controllers/content_controller.rb +1 -8
  25. data/app/controllers/orders_controller.rb +11 -23
  26. data/app/controllers/products_controller.rb +24 -23
  27. data/app/controllers/spree/base_controller.rb +47 -3
  28. data/app/controllers/states_controller.rb +4 -5
  29. data/app/controllers/taxons_controller.rb +13 -9
  30. data/app/controllers/user_sessions_controller.rb +3 -1
  31. data/app/controllers/users_controller.rb +3 -7
  32. data/app/helpers/admin/base_helper.rb +74 -6
  33. data/app/helpers/admin/calculators_helper.rb +2 -0
  34. data/app/helpers/admin/orders_helper.rb +1 -1
  35. data/{vendor/extensions/tax_calculator/app → app}/helpers/admin/tax_rates_helper.rb +0 -0
  36. data/app/helpers/admin/taxonomies_helper.rb +0 -59
  37. data/app/helpers/application_helper.rb +1 -2
  38. data/app/helpers/checkouts_helper.rb +7 -0
  39. data/app/helpers/products_helper.rb +15 -15
  40. data/app/helpers/spree/base_helper.rb +27 -5
  41. data/app/helpers/taxons_helper.rb +9 -9
  42. data/app/metal/create_admin_user.rb +21 -0
  43. data/app/models/address.rb +42 -2
  44. data/app/models/adjustment.rb +37 -0
  45. data/app/models/app_configuration.rb +10 -1
  46. data/app/models/calculator.rb +41 -0
  47. data/app/models/calculator/flat_percent_item_total.rb +19 -0
  48. data/app/models/calculator/flat_rate.rb +18 -0
  49. data/app/models/calculator/flexi_rate.rb +33 -0
  50. data/app/models/calculator/per_item.rb +18 -0
  51. data/app/models/calculator/price_bucket.rb +31 -0
  52. data/app/models/calculator/sales_tax.rb +48 -0
  53. data/app/models/calculator/vat.rb +63 -0
  54. data/app/models/charge.rb +37 -0
  55. data/app/models/checkout.rb +48 -0
  56. data/app/models/country.rb +11 -1
  57. data/app/models/coupon.rb +27 -0
  58. data/app/models/credit.rb +27 -0
  59. data/app/models/creditcard.rb +5 -5
  60. data/app/models/creditcard_payment.rb +13 -5
  61. data/app/models/image.rb +23 -1
  62. data/app/models/inventory_unit.rb +4 -3
  63. data/app/models/line_item.rb +10 -4
  64. data/app/models/order.rb +125 -65
  65. data/app/models/order_mailer.rb +1 -1
  66. data/app/models/order_observer.rb +15 -0
  67. data/app/models/product.rb +101 -87
  68. data/app/models/shipment.rb +20 -14
  69. data/app/models/shipping_category.rb +2 -0
  70. data/app/models/shipping_method.rb +19 -6
  71. data/app/models/shipping_rate.rb +6 -0
  72. data/app/models/state.rb +8 -2
  73. data/app/models/state_event.rb +7 -0
  74. data/app/models/tax_category.rb +2 -0
  75. data/{vendor/extensions/tax_calculator/app → app}/models/tax_rate.rb +9 -3
  76. data/app/models/taxon.rb +21 -15
  77. data/app/models/user.rb +17 -18
  78. data/app/models/user_mailer.rb +1 -1
  79. data/app/models/variant.rb +51 -60
  80. data/app/models/zone.rb +38 -23
  81. data/app/views/admin/configurations/index.html.erb +12 -0
  82. data/app/views/admin/coupons/_form.html.erb +24 -0
  83. data/app/views/admin/coupons/edit.html.erb +8 -0
  84. data/app/views/admin/coupons/index.html.erb +38 -0
  85. data/app/views/admin/coupons/new.html.erb +9 -0
  86. data/app/views/admin/creditcard_payments/new.html.erb +1 -1
  87. data/app/views/admin/general_settings/edit.html.erb +1 -1
  88. data/app/views/admin/general_settings/show.html.erb +2 -4
  89. data/app/views/admin/images/_form.html.erb +12 -0
  90. data/app/views/admin/images/edit.html.erb +19 -0
  91. data/app/views/admin/images/index.html.erb +63 -0
  92. data/app/views/admin/images/new.html.erb +20 -8
  93. data/app/views/admin/inventory_settings/show.html.erb +2 -2
  94. data/app/views/admin/mail_settings/edit.html.erb +13 -4
  95. data/app/views/admin/mail_settings/show.html.erb +7 -0
  96. data/app/views/admin/option_types/index.html.erb +1 -1
  97. data/app/views/admin/orders/index.html.erb +41 -54
  98. data/app/views/admin/orders/show.html.erb +19 -2
  99. data/app/views/admin/products/_form.html.erb +29 -16
  100. data/app/views/admin/products/index.html.erb +12 -17
  101. data/app/views/admin/products/new.html.erb +5 -5
  102. data/app/views/admin/properties/index.html.erb +1 -1
  103. data/app/views/admin/prototypes/index.html.erb +1 -1
  104. data/app/views/admin/reports/sales_total.html.erb +4 -4
  105. data/app/views/admin/shared/_address.html.erb +3 -1
  106. data/app/views/admin/shared/_calculator_fields.html.erb +15 -0
  107. data/app/views/admin/shared/_edit_resource_links.html.erb +1 -1
  108. data/app/views/admin/shared/_form_address.html.erb +8 -2
  109. data/app/views/admin/shared/_new_resource_links.html.erb +1 -1
  110. data/app/views/admin/shared/_order_details.html.erb +3 -36
  111. data/app/views/admin/shared/_order_tabs.html.erb +2 -2
  112. data/app/views/admin/shared/_product_tabs.html.erb +25 -12
  113. data/app/views/admin/shared/_report_criteria.html.erb +3 -7
  114. data/app/views/admin/shipments/_form.html.erb +11 -1
  115. data/app/views/admin/shipping_categories/index.html.erb +1 -1
  116. data/app/views/admin/shipping_methods/_form.html.erb +3 -5
  117. data/app/views/admin/shipping_methods/edit.html.erb +2 -2
  118. data/app/views/admin/shipping_methods/index.html.erb +3 -3
  119. data/app/views/admin/shipping_rates/_form.html.erb +12 -0
  120. data/app/views/admin/shipping_rates/edit.html.erb +8 -0
  121. data/app/views/admin/shipping_rates/index.html.erb +30 -0
  122. data/app/views/admin/shipping_rates/new.html.erb +10 -0
  123. data/app/views/admin/tax_categories/index.html.erb +1 -1
  124. data/app/views/admin/tax_rates/_form.html.erb +16 -0
  125. data/{vendor/extensions/tax_calculator/app → app}/views/admin/tax_rates/edit.html.erb +2 -2
  126. data/{vendor/extensions/tax_calculator/app → app}/views/admin/tax_rates/index.html.erb +4 -4
  127. data/{vendor/extensions/tax_calculator/app → app}/views/admin/tax_rates/new.html.erb +0 -0
  128. data/{vendor/extensions/tax_calculator/app → app}/views/admin/tax_settings/edit.html.erb +3 -3
  129. data/{vendor/extensions/tax_calculator/app → app}/views/admin/tax_settings/show.html.erb +1 -1
  130. data/app/views/admin/taxonomies/_js_head.html.erb +13 -0
  131. data/app/views/admin/taxonomies/_list.html.erb +3 -3
  132. data/app/views/admin/taxonomies/_taxon.html.erb +12 -0
  133. data/app/views/admin/taxonomies/edit.html.erb +17 -7
  134. data/app/views/admin/users/index.html.erb +7 -9
  135. data/app/views/admin/variants/_form.html.erb +1 -1
  136. data/app/views/admin/variants/index.html.erb +2 -2
  137. data/app/views/admin/zones/index.html.erb +4 -4
  138. data/app/views/checkouts/_billing.html.erb +66 -0
  139. data/app/views/checkouts/_confirmation.html.erb +11 -0
  140. data/app/views/checkouts/_form.html.erb +20 -0
  141. data/app/views/checkouts/_payment.html.erb +45 -0
  142. data/app/views/{orders → checkouts}/_registration.html.erb +4 -4
  143. data/app/views/checkouts/_shipping.html.erb +68 -0
  144. data/app/views/checkouts/_shipping_method.html.erb +19 -0
  145. data/app/views/checkouts/_summary.html.erb +36 -0
  146. data/app/views/checkouts/edit.html.erb +13 -0
  147. data/app/views/checkouts/new.html.erb +13 -0
  148. data/app/views/layouts/admin.html.erb +15 -5
  149. data/app/views/layouts/application.html.erb +3 -11
  150. data/{vendor/plugins/resource_controller/test/app/views/layouts/application.rhtml → app/views/layouts/checkouts.html.erb} +2 -2
  151. data/app/views/order_mailer/cancel.html.erb +4 -3
  152. data/app/views/order_mailer/confirm.html.erb +5 -4
  153. data/app/views/orders/_form.html.erb +4 -1
  154. data/app/views/orders/_google_order.html.erb +2 -2
  155. data/app/views/orders/_line_item.html.erb +6 -3
  156. data/app/views/orders/edit.html.erb +3 -3
  157. data/app/views/orders/new.html.erb +2 -2
  158. data/app/views/products/_cart_form.html.erb +45 -14
  159. data/app/views/products/_thumbnails.html.erb +34 -6
  160. data/app/views/products/index.html.erb +6 -2
  161. data/app/views/products/show.html.erb +1 -1
  162. data/app/views/shared/_edit_resource_links.html.erb +1 -1
  163. data/app/views/shared/_filters.html.erb +52 -0
  164. data/app/views/shared/_footer.html.erb +1 -1
  165. data/app/views/shared/_head.html.erb +6 -0
  166. data/app/views/shared/_login.html.erb +2 -2
  167. data/app/views/shared/_new_resource_links.html.erb +1 -1
  168. data/app/views/shared/_order_details.html.erb +46 -36
  169. data/app/views/shared/_taxonomies.html.erb +5 -6
  170. data/app/views/states/index.js.erb +1 -1
  171. data/app/views/taxons/show.html.erb +1 -1
  172. data/bin/spree +43 -2
  173. data/config/boot.rb +2 -2
  174. data/config/environment.rb +13 -5
  175. data/config/environments/test.rb +6 -2
  176. data/config/initializers/locales.rb +20 -8
  177. data/config/initializers/paperclip.rb +20 -0
  178. data/config/initializers/spree.rb +12 -2
  179. data/config/locales/da.yml +614 -0
  180. data/config/locales/da_rails.yml +197 -0
  181. data/config/locales/de-CH.yml +614 -0
  182. data/config/locales/de-CH_rails.yml +142 -0
  183. data/config/locales/de.yml +95 -4
  184. data/config/locales/en-GB.yml +112 -21
  185. data/config/locales/en-GB_rails.yml +84 -42
  186. data/config/locales/en-US.yml +103 -12
  187. data/config/locales/es.yml +95 -4
  188. data/config/locales/fi.yml +614 -0
  189. data/config/locales/fi_rails.yml +143 -0
  190. data/config/locales/fr-FR.yml +95 -4
  191. data/config/locales/fr-FR_rails.yml +1 -1
  192. data/config/locales/il.yml +614 -0
  193. data/config/locales/il_rails.yml +103 -0
  194. data/config/locales/it.yml +102 -11
  195. data/config/locales/jp.yml +614 -0
  196. data/config/locales/jp_rails.yml +135 -0
  197. data/config/locales/mx.yml +614 -0
  198. data/config/locales/mx_rails.yml +181 -0
  199. data/config/locales/nb-NO.yml +95 -4
  200. data/config/locales/nl-BE.yml +95 -4
  201. data/config/locales/nl-NL.yml +614 -0
  202. data/config/locales/nl-NL_rails.yml +172 -0
  203. data/config/locales/pl.yml +102 -11
  204. data/config/locales/pt-BR.yml +101 -10
  205. data/config/locales/pt-PT.yml +95 -4
  206. data/config/locales/ru-RU.yml +414 -323
  207. data/config/locales/ru-RU_rails.yml +1 -1
  208. data/config/locales/th.yml +614 -0
  209. data/config/locales/th_rails.yml +195 -0
  210. data/config/routes.rb +10 -6
  211. data/config/schedule.rb +27 -0
  212. data/config/spree_permissions.yml +8 -7
  213. data/db/default/zone_members.yml +2 -14
  214. data/{vendor/extensions/tax_calculator/db → db}/migrate/20080620100001_create_tax_rates.rb +0 -0
  215. data/{vendor/extensions/tax_calculator/db → db}/migrate/20080704192456_update_tax_rates_add_zones_etc.rb +0 -0
  216. data/db/migrate/20090401223217_create_eu_vat_zone_again.rb +1 -1
  217. data/db/migrate/20090404192723_add_maestro_fields.rb +12 -0
  218. data/db/migrate/20090406091357_add_alternative_phone.rb +9 -0
  219. data/db/migrate/20090525000325_remove_address_orphans.rb +15 -0
  220. data/db/migrate/20090603153927_create_checkouts.rb +71 -0
  221. data/db/migrate/20090617181106_change_txn_type_to_int.rb +18 -0
  222. data/db/migrate/20090618203233_create_charges.rb +61 -0
  223. data/db/migrate/20090626235303_create_credits.rb +22 -0
  224. data/db/migrate/20090705101511_add_image_dimensions.rb +12 -0
  225. data/db/migrate/20090708175306_create_coupons.rb +16 -0
  226. data/db/migrate/20090708175317_create_discounts.rb +14 -0
  227. data/db/migrate/20090714094201_add_default_addresses_to_user.rb +11 -0
  228. data/db/migrate/20090715172345_create_calculators.rb +22 -0
  229. data/db/migrate/20090731085008_add_charge_source_to_charge.rb +11 -0
  230. data/db/migrate/20090803072025_create_shipping_rates.rb +12 -0
  231. data/db/migrate/20090804090559_create_calculators_for_tax_rates.rb +16 -0
  232. data/db/migrate/20090805131937_drop_credits_and_discounts.rb +9 -0
  233. data/db/migrate/20090805185015_remove_tax_type.rb +13 -0
  234. data/db/migrate/20090806063212_rename_charges_to_adjustments.rb +24 -0
  235. data/db/migrate/20090806160214_rename_base_to_source.rb +11 -0
  236. data/db/migrate/20090809170304_remove_checkout_shipping_address_and_method.rb +15 -0
  237. data/db/migrate/20090809193131_add_is_master_to_variants.rb +43 -0
  238. data/db/migrate/20090809201209_drop_master_price_from_products.rb +13 -0
  239. data/db/migrate/20090809231957_update_legacy_calculators.rb +9 -0
  240. data/db/migrate/20090823005402_coupon_starts_at.rb +13 -0
  241. data/db/migrate/20090828114732_add_queued_mail.rb +12 -0
  242. data/db/migrate/20090908141056_adjust_percent_calc_settings.rb +9 -0
  243. data/db/migrate/migrate/20080620100001_create_tax_rates.rb +13 -0
  244. data/db/migrate/migrate/20080704192456_update_tax_rates_add_zones_etc.rb +17 -0
  245. data/db/sample/adjustments.yml +20 -0
  246. data/db/sample/assets.yml +219 -11
  247. data/db/sample/calculators.yml +16 -0
  248. data/db/sample/checkouts.yml +8 -0
  249. data/db/sample/coupons.yml +4 -0
  250. data/db/sample/creditcards.yml +0 -1
  251. data/db/sample/orders.yml +0 -7
  252. data/db/sample/preferences.yml +20 -0
  253. data/db/sample/products.yml +0 -9
  254. data/db/sample/shipping_methods.yml +3 -10
  255. data/db/sample/variants.yml +13 -0
  256. data/db/schema.rb +73 -23
  257. data/db/seeds.rb +8 -3
  258. data/generate +4 -0
  259. data/lib/generators/extension/extension_generator.rb +1 -1
  260. data/lib/generators/extension/templates/Rakefile +1 -1
  261. data/lib/generators/extension/templates/extension.rb +22 -2
  262. data/lib/generators/extension_migration/extension_migration_generator.rb +3 -3
  263. data/lib/generators/instance/instance_generator.rb +4 -2
  264. data/lib/plugins/extension_patches/lib/asset_copy.rb +1 -50
  265. data/lib/plugins/monkey_patches/lib/monkey_patches.rb +2 -2
  266. data/lib/product_filters.rb +174 -0
  267. data/lib/product_scopes.rb +76 -0
  268. data/lib/spree.rb +2 -2
  269. data/lib/spree/config.rb +1 -1
  270. data/lib/spree/extension_loader.rb +10 -1
  271. data/lib/spree/file_utilz.rb +71 -0
  272. data/lib/spree/initializer.rb +13 -1
  273. data/lib/spree/setup.rb +7 -1
  274. data/lib/tasks/consistency.rake +30 -0
  275. data/lib/tasks/database.rake +1 -7
  276. data/lib/tasks/extensions.rake +24 -8
  277. data/lib/tasks/framework.rake +0 -1
  278. data/lib/tasks/release.rake +22 -11
  279. data/lib/tasks/sample/products/1009/large/ror_baseball_jersey_green.png +0 -0
  280. data/lib/tasks/sample/products/1009/mini/ror_baseball_jersey_green.png +0 -0
  281. data/lib/tasks/sample/products/1009/original/ror_baseball_jersey_green.png +0 -0
  282. data/lib/tasks/sample/products/1009/product/ror_baseball_jersey_green.png +0 -0
  283. data/lib/tasks/sample/products/1009/small/ror_baseball_jersey_green.png +0 -0
  284. data/lib/tasks/sample/products/1010/large/ror_baseball_jersey_back_green.png +0 -0
  285. data/lib/tasks/sample/products/1010/mini/ror_baseball_jersey_back_green.png +0 -0
  286. data/lib/tasks/sample/products/1010/original/ror_baseball_jersey_back_green.png +0 -0
  287. data/lib/tasks/sample/products/1010/product/ror_baseball_jersey_back_green.png +0 -0
  288. data/lib/tasks/sample/products/1010/small/ror_baseball_jersey_back_green.png +0 -0
  289. data/lib/tasks/sample/products/1011/large/ror_baseball_jersey_green.png +0 -0
  290. data/lib/tasks/sample/products/1011/mini/ror_baseball_jersey_green.png +0 -0
  291. data/lib/tasks/sample/products/1011/original/ror_baseball_jersey_green.png +0 -0
  292. data/lib/tasks/sample/products/1011/product/ror_baseball_jersey_green.png +0 -0
  293. data/lib/tasks/sample/products/1011/small/ror_baseball_jersey_green.png +0 -0
  294. data/lib/tasks/sample/products/1012/large/ror_baseball_jersey_back_green.png +0 -0
  295. data/lib/tasks/sample/products/1012/mini/ror_baseball_jersey_back_green.png +0 -0
  296. data/lib/tasks/sample/products/1012/original/ror_baseball_jersey_back_green.png +0 -0
  297. data/lib/tasks/sample/products/1012/product/ror_baseball_jersey_back_green.png +0 -0
  298. data/lib/tasks/sample/products/1012/small/ror_baseball_jersey_back_green.png +0 -0
  299. data/lib/tasks/sample/products/1013/large/ror_baseball_jersey_green.png +0 -0
  300. data/lib/tasks/sample/products/1013/mini/ror_baseball_jersey_green.png +0 -0
  301. data/lib/tasks/sample/products/1013/original/ror_baseball_jersey_green.png +0 -0
  302. data/lib/tasks/sample/products/1013/product/ror_baseball_jersey_green.png +0 -0
  303. data/lib/tasks/sample/products/1013/small/ror_baseball_jersey_green.png +0 -0
  304. data/lib/tasks/sample/products/1014/large/ror_baseball_jersey_back_green.png +0 -0
  305. data/lib/tasks/sample/products/1014/mini/ror_baseball_jersey_back_green.png +0 -0
  306. data/lib/tasks/sample/products/1014/original/ror_baseball_jersey_back_green.png +0 -0
  307. data/lib/tasks/sample/products/1014/product/ror_baseball_jersey_back_green.png +0 -0
  308. data/lib/tasks/sample/products/1014/small/ror_baseball_jersey_back_green.png +0 -0
  309. data/lib/tasks/sample/products/1015/large/ror_baseball_jersey_blue.png +0 -0
  310. data/lib/tasks/sample/products/1015/mini/ror_baseball_jersey_blue.png +0 -0
  311. data/lib/tasks/sample/products/1015/original/ror_baseball_jersey_blue.png +0 -0
  312. data/lib/tasks/sample/products/1015/product/ror_baseball_jersey_blue.png +0 -0
  313. data/lib/tasks/sample/products/1015/small/ror_baseball_jersey_blue.png +0 -0
  314. data/lib/tasks/sample/products/1016/large/ror_baseball_jersey_back_blue.png +0 -0
  315. data/lib/tasks/sample/products/1016/mini/ror_baseball_jersey_back_blue.png +0 -0
  316. data/lib/tasks/sample/products/1016/original/ror_baseball_jersey_back_blue.png +0 -0
  317. data/lib/tasks/sample/products/1016/product/ror_baseball_jersey_back_blue.png +0 -0
  318. data/lib/tasks/sample/products/1016/small/ror_baseball_jersey_back_blue.png +0 -0
  319. data/lib/tasks/sample/products/1017/large/ror_baseball_jersey_blue.png +0 -0
  320. data/lib/tasks/sample/products/1017/mini/ror_baseball_jersey_blue.png +0 -0
  321. data/lib/tasks/sample/products/1017/original/ror_baseball_jersey_blue.png +0 -0
  322. data/lib/tasks/sample/products/1017/product/ror_baseball_jersey_blue.png +0 -0
  323. data/lib/tasks/sample/products/1017/small/ror_baseball_jersey_blue.png +0 -0
  324. data/lib/tasks/sample/products/1018/large/ror_baseball_jersey_back_blue.png +0 -0
  325. data/lib/tasks/sample/products/1018/mini/ror_baseball_jersey_back_blue.png +0 -0
  326. data/lib/tasks/sample/products/1018/original/ror_baseball_jersey_back_blue.png +0 -0
  327. data/lib/tasks/sample/products/1018/product/ror_baseball_jersey_back_blue.png +0 -0
  328. data/lib/tasks/sample/products/1018/small/ror_baseball_jersey_back_blue.png +0 -0
  329. data/lib/tasks/sample/products/1019/large/ror_baseball_jersey_blue.png +0 -0
  330. data/lib/tasks/sample/products/1019/mini/ror_baseball_jersey_blue.png +0 -0
  331. data/lib/tasks/sample/products/1019/original/ror_baseball_jersey_blue.png +0 -0
  332. data/lib/tasks/sample/products/1019/product/ror_baseball_jersey_blue.png +0 -0
  333. data/lib/tasks/sample/products/1019/small/ror_baseball_jersey_blue.png +0 -0
  334. data/lib/tasks/sample/products/1020/large/ror_baseball_jersey_back_blue.png +0 -0
  335. data/lib/tasks/sample/products/1020/mini/ror_baseball_jersey_back_blue.png +0 -0
  336. data/lib/tasks/sample/products/1020/original/ror_baseball_jersey_back_blue.png +0 -0
  337. data/lib/tasks/sample/products/1020/product/ror_baseball_jersey_back_blue.png +0 -0
  338. data/lib/tasks/sample/products/1020/small/ror_baseball_jersey_back_blue.png +0 -0
  339. data/lib/tasks/sample/products/1021/large/ror_baseball_jersey_red.png +0 -0
  340. data/lib/tasks/sample/products/1021/mini/ror_baseball_jersey_red.png +0 -0
  341. data/lib/tasks/sample/products/1021/original/ror_baseball_jersey_red.png +0 -0
  342. data/lib/tasks/sample/products/1021/product/ror_baseball_jersey_red.png +0 -0
  343. data/lib/tasks/sample/products/1021/small/ror_baseball_jersey_red.png +0 -0
  344. data/lib/tasks/sample/products/1022/large/ror_baseball_jersey_back_red.png +0 -0
  345. data/lib/tasks/sample/products/1022/mini/ror_baseball_jersey_back_red.png +0 -0
  346. data/lib/tasks/sample/products/1022/original/ror_baseball_jersey_back_red.png +0 -0
  347. data/lib/tasks/sample/products/1022/product/ror_baseball_jersey_back_red.png +0 -0
  348. data/lib/tasks/sample/products/1022/small/ror_baseball_jersey_back_red.png +0 -0
  349. data/lib/tasks/sample/products/1023/large/ror_baseball_jersey_red.png +0 -0
  350. data/lib/tasks/sample/products/1023/mini/ror_baseball_jersey_red.png +0 -0
  351. data/lib/tasks/sample/products/1023/original/ror_baseball_jersey_red.png +0 -0
  352. data/lib/tasks/sample/products/1023/product/ror_baseball_jersey_red.png +0 -0
  353. data/lib/tasks/sample/products/1023/small/ror_baseball_jersey_red.png +0 -0
  354. data/lib/tasks/sample/products/1024/large/ror_baseball_jersey_back_red.png +0 -0
  355. data/lib/tasks/sample/products/1024/mini/ror_baseball_jersey_back_red.png +0 -0
  356. data/lib/tasks/sample/products/1024/original/ror_baseball_jersey_back_red.png +0 -0
  357. data/lib/tasks/sample/products/1024/product/ror_baseball_jersey_back_red.png +0 -0
  358. data/lib/tasks/sample/products/1024/small/ror_baseball_jersey_back_red.png +0 -0
  359. data/lib/tasks/sample/products/1025/large/ror_baseball_jersey_red.png +0 -0
  360. data/lib/tasks/sample/products/1025/mini/ror_baseball_jersey_red.png +0 -0
  361. data/lib/tasks/sample/products/1025/original/ror_baseball_jersey_red.png +0 -0
  362. data/lib/tasks/sample/products/1025/product/ror_baseball_jersey_red.png +0 -0
  363. data/lib/tasks/sample/products/1025/small/ror_baseball_jersey_red.png +0 -0
  364. data/lib/tasks/sample/products/1026/large/ror_baseball_jersey_back_red.png +0 -0
  365. data/lib/tasks/sample/products/1026/mini/ror_baseball_jersey_back_red.png +0 -0
  366. data/lib/tasks/sample/products/1026/original/ror_baseball_jersey_back_red.png +0 -0
  367. data/lib/tasks/sample/products/1026/product/ror_baseball_jersey_back_red.png +0 -0
  368. data/lib/tasks/sample/products/1026/small/ror_baseball_jersey_back_red.png +0 -0
  369. data/lib/tasks/translation.rake +1 -1
  370. data/lib/tasks/upgrade.rake +2 -9
  371. data/public/images/menu-current.png +0 -0
  372. data/public/images/progress.gif +0 -0
  373. data/public/javascripts/calculator.js +13 -0
  374. data/public/javascripts/checkout.js +163 -34
  375. data/public/javascripts/jquery.alerts/images/help.gif +0 -0
  376. data/public/javascripts/jquery.alerts/images/important.gif +0 -0
  377. data/public/javascripts/jquery.alerts/images/info.gif +0 -0
  378. data/public/javascripts/jquery.alerts/images/title.gif +0 -0
  379. data/public/javascripts/jquery.alerts/jquery.alerts.css +57 -0
  380. data/public/javascripts/jquery.alerts/jquery.alerts.js +235 -0
  381. data/public/javascripts/jquery.alerts/jquery.alerts.spree.css +30 -0
  382. data/public/javascripts/jquery.validate.min.js +16 -0
  383. data/public/javascripts/jsTree/source/_lib.js +126 -0
  384. data/public/javascripts/jsTree/source/themes/default/context.gif +0 -0
  385. data/public/javascripts/jsTree/source/themes/default/create.png +0 -0
  386. data/public/javascripts/jsTree/source/themes/default/dot.gif +0 -0
  387. data/public/javascripts/jsTree/source/themes/default/f.png +0 -0
  388. data/public/javascripts/jsTree/source/themes/default/fminus.gif +0 -0
  389. data/public/javascripts/jsTree/source/themes/default/fminus_rtl.gif +0 -0
  390. data/public/javascripts/jsTree/source/themes/default/fplus.gif +0 -0
  391. data/public/javascripts/jsTree/source/themes/default/fplus_rtl.gif +0 -0
  392. data/public/javascripts/jsTree/source/themes/default/lastli.gif +0 -0
  393. data/public/javascripts/jsTree/source/themes/default/lastli_rtl.gif +0 -0
  394. data/public/javascripts/jsTree/source/themes/default/li.gif +0 -0
  395. data/public/javascripts/jsTree/source/themes/default/remove.png +0 -0
  396. data/public/javascripts/jsTree/source/themes/default/rename.png +0 -0
  397. data/public/javascripts/jsTree/source/themes/default/style.css +44 -0
  398. data/public/javascripts/jsTree/source/themes/default/throbber.gif +0 -0
  399. data/public/javascripts/jsTree/source/themes/marker.gif +0 -0
  400. data/public/javascripts/jsTree/source/themes/marker_rtl.gif +0 -0
  401. data/public/javascripts/jsTree/source/themes/plus.gif +0 -0
  402. data/public/javascripts/jsTree/source/themes/remove.png +0 -0
  403. data/public/javascripts/jsTree/source/themes/spree/context.gif +0 -0
  404. data/public/javascripts/jsTree/source/themes/spree/create.png +0 -0
  405. data/public/javascripts/jsTree/source/themes/spree/dot.gif +0 -0
  406. data/public/javascripts/jsTree/source/themes/spree/f.png +0 -0
  407. data/public/javascripts/jsTree/source/themes/spree/fminus.gif +0 -0
  408. data/public/javascripts/jsTree/source/themes/spree/fminus_rtl.gif +0 -0
  409. data/public/javascripts/jsTree/source/themes/spree/fplus.gif +0 -0
  410. data/public/javascripts/jsTree/source/themes/spree/fplus_rtl.gif +0 -0
  411. data/public/javascripts/jsTree/source/themes/spree/lastli.gif +0 -0
  412. data/public/javascripts/jsTree/source/themes/spree/li.gif +0 -0
  413. data/public/javascripts/jsTree/source/themes/spree/remove.png +0 -0
  414. data/public/javascripts/jsTree/source/themes/spree/rename.png +0 -0
  415. data/public/javascripts/jsTree/source/themes/spree/style.css +39 -0
  416. data/public/javascripts/jsTree/source/themes/spree/throbber.gif +0 -0
  417. data/public/javascripts/jsTree/source/tree_component.css +62 -0
  418. data/public/javascripts/jsTree/source/tree_component.js +2315 -0
  419. data/public/javascripts/jsTree/source/tree_component.min.js +14 -0
  420. data/public/javascripts/spree.js +9 -0
  421. data/public/javascripts/taxonomy.js +202 -0
  422. data/public/stylesheets/admin/admin.css +36 -3
  423. data/public/stylesheets/compiled/screen.css +393 -306
  424. data/public/stylesheets/sass/_buttons.sass +59 -0
  425. data/public/stylesheets/sass/_cart.sass +21 -0
  426. data/public/stylesheets/sass/_checkout.sass +173 -0
  427. data/public/stylesheets/sass/_colors.sass +11 -0
  428. data/public/stylesheets/sass/_layout.sass +63 -0
  429. data/public/stylesheets/sass/_messages.sass +28 -0
  430. data/public/stylesheets/sass/_mixins.sass +17 -0
  431. data/public/stylesheets/sass/_navigation.sass +97 -0
  432. data/public/stylesheets/sass/_prices.sass +13 -0
  433. data/public/stylesheets/sass/_product_detail.sass +27 -0
  434. data/public/stylesheets/sass/_product_thumbnail.sass +58 -0
  435. data/public/stylesheets/sass/_registration.sass +9 -0
  436. data/public/stylesheets/sass/screen.sass +12 -555
  437. data/public/stylesheets/scaffold.css +54 -0
  438. data/spec/controllers/orders_controller_spec.rb +3 -2
  439. data/spec/models/address_spec.rb +2 -1
  440. data/spec/models/shipping_order_spec.rb +8 -6
  441. data/spec/models/zone_spec.rb +1 -1
  442. data/spec/preference_factory.rb +1 -1
  443. data/test/factories/address_factory.rb +20 -0
  444. data/test/factories/adjustments_factory.rb +53 -0
  445. data/test/factories/checkout_factory.rb +15 -0
  446. data/test/factories/country_factory.rb +5 -0
  447. data/test/factories/coupon_factory.rb +5 -0
  448. data/test/factories/creditcard_factory.rb +12 -0
  449. data/test/factories/creditcard_payment_factory.rb +11 -0
  450. data/test/factories/inventory_unit_factory.rb +2 -0
  451. data/test/factories/line_item_factory.rb +8 -0
  452. data/test/factories/options_factory.rb +10 -0
  453. data/test/factories/order_factory.rb +6 -0
  454. data/test/factories/preference_factory.rb +5 -0
  455. data/test/factories/product_factory.rb +13 -0
  456. data/test/factories/role_factory.rb +5 -0
  457. data/test/factories/shipment_factory.rb +6 -0
  458. data/test/factories/shipping_category_factory.rb +5 -0
  459. data/test/factories/shipping_method_factory.rb +13 -0
  460. data/test/factories/tax_category_factory.rb +8 -0
  461. data/test/factories/tax_rate_factory.rb +4 -0
  462. data/test/factories/taxon_factory.rb +16 -0
  463. data/test/factories/taxonomy_factory.rb +5 -0
  464. data/test/factories/user_factory.rb +11 -0
  465. data/test/factories/variant_factory.rb +13 -0
  466. data/test/factories/zone_factory.rb +10 -0
  467. data/test/fixtures/countries.yml +4 -0
  468. data/test/fixtures/gateway_configurations.yml +2 -0
  469. data/test/fixtures/gateways.yml +4 -0
  470. data/test/fixtures/states.yml +204 -0
  471. data/test/functional/calculators_controller_test.rb +8 -0
  472. data/test/functional/checkouts_controller_test.rb +77 -0
  473. data/test/functional/products_controller_test.rb +12 -0
  474. data/test/functional/users_controller_test.rb +25 -0
  475. data/test/test_helper.rb +66 -0
  476. data/test/unit/address_test.rb +39 -0
  477. data/test/unit/charge_test.rb +90 -0
  478. data/test/unit/checkout_test.rb +10 -0
  479. data/test/unit/country_test.rb +6 -0
  480. data/test/unit/coupon_test.rb +56 -0
  481. data/test/unit/credit_test.rb +61 -0
  482. data/test/unit/creditcard_payment_test.rb +28 -0
  483. data/test/unit/creditcard_test.rb +44 -0
  484. data/test/unit/factories_test.rb +29 -0
  485. data/test/unit/flat_percent_item_total_test.rb +28 -0
  486. data/test/unit/flat_rate_calculators_test.rb +13 -0
  487. data/test/unit/has_calculator_test.rb +22 -0
  488. data/test/unit/helpers/calculators_helper_test.rb +4 -0
  489. data/test/unit/helpers/checkouts_helper_test.rb +26 -0
  490. data/test/unit/helpers/products_helper_test.rb +32 -0
  491. data/test/unit/helpers/spree/base_helper_test.rb +43 -0
  492. data/test/unit/incomplete_checkout_test.rb +68 -0
  493. data/test/unit/inventory_unit_test.rb +20 -0
  494. data/test/unit/line_item_test.rb +73 -0
  495. data/test/unit/order_test.rb +80 -0
  496. data/test/unit/per_item_calculator_test.rb +14 -0
  497. data/test/unit/preference_test.rb +148 -0
  498. data/test/unit/product_test.rb +279 -0
  499. data/test/unit/sales_tax_calculator_test.rb +46 -0
  500. data/test/unit/shipping_method_test.rb +21 -0
  501. data/test/unit/state_event_test.rb +40 -0
  502. data/test/unit/state_test.rb +7 -0
  503. data/test/unit/tax_rate_test.rb +9 -0
  504. data/test/unit/variant_test.rb +128 -0
  505. data/test/unit/vat_calculator_test.rb +60 -0
  506. data/vendor/extensions/calculators/README.markdown +4 -0
  507. data/vendor/extensions/calculators/calculators_extension.rb +31 -0
  508. data/vendor/extensions/localization/public/images/flags/{dk.png → da.png} +0 -0
  509. data/vendor/extensions/localization/public/images/flags/de_CH.png +0 -0
  510. data/vendor/extensions/payment_gateway/README_PAYPAL.markdown +1 -1
  511. data/vendor/extensions/payment_gateway/db/migrate/20090517173727_add_currency_code_option_to_paypal_gateway.rb +13 -0
  512. data/vendor/extensions/payment_gateway/lib/spree/payment_gateway.rb +22 -12
  513. data/vendor/plugins/acts_as_adjacency_list/lib/active_record/acts/adjacency_list.rb +13 -20
  514. data/vendor/plugins/delegate_belongs_to/README +1 -0
  515. data/vendor/plugins/delegate_belongs_to/Rakefile +21 -0
  516. data/vendor/plugins/delegate_belongs_to/init.rb +2 -0
  517. data/vendor/plugins/delegate_belongs_to/lib/delegate_belongs_to.rb +95 -0
  518. data/vendor/plugins/delegate_belongs_to/spec/app_root/app/controllers/application.rb +2 -0
  519. data/vendor/plugins/delegate_belongs_to/spec/app_root/app/models/contact.rb +5 -0
  520. data/vendor/plugins/delegate_belongs_to/spec/app_root/app/models/user_default.rb +2 -0
  521. data/vendor/plugins/delegate_belongs_to/spec/app_root/app/models/user_mixed.rb +2 -0
  522. data/vendor/plugins/delegate_belongs_to/spec/app_root/app/models/user_no_default.rb +2 -0
  523. data/vendor/plugins/{resource_controller/test → delegate_belongs_to/spec/app_root}/config/boot.rb +14 -9
  524. data/vendor/plugins/delegate_belongs_to/spec/app_root/config/database.yml +21 -0
  525. data/vendor/plugins/delegate_belongs_to/spec/app_root/config/environment.rb +13 -0
  526. data/{public/favicon.ico → vendor/plugins/delegate_belongs_to/spec/app_root/config/environments/in_memory.rb} +0 -0
  527. data/vendor/plugins/{resource_controller/test/app/views/tags/index.rjs → delegate_belongs_to/spec/app_root/config/environments/mysql.rb} +0 -0
  528. data/vendor/plugins/delegate_belongs_to/spec/app_root/config/environments/postgresql.rb +0 -0
  529. data/vendor/plugins/delegate_belongs_to/spec/app_root/config/environments/sqlite.rb +0 -0
  530. data/vendor/plugins/delegate_belongs_to/spec/app_root/config/environments/sqlite3.rb +0 -0
  531. data/vendor/plugins/delegate_belongs_to/spec/app_root/config/routes.rb +4 -0
  532. data/vendor/plugins/delegate_belongs_to/spec/app_root/db/migrate/01_create_users.rb +22 -0
  533. data/vendor/plugins/delegate_belongs_to/spec/app_root/db/migrate/02_create_contacts.rb +12 -0
  534. data/vendor/plugins/delegate_belongs_to/spec/app_root/lib/console_with_fixtures.rb +4 -0
  535. data/vendor/plugins/delegate_belongs_to/spec/app_root/script/console +7 -0
  536. data/vendor/plugins/delegate_belongs_to/spec/model/with_defaults_spec.rb +30 -0
  537. data/vendor/plugins/delegate_belongs_to/spec/model/with_mixed_spec.rb +29 -0
  538. data/vendor/plugins/delegate_belongs_to/spec/model/with_no_defaults_spec.rb +30 -0
  539. data/vendor/plugins/delegate_belongs_to/spec/spec_helper.rb +68 -0
  540. data/vendor/plugins/has_calculator/README +7 -0
  541. data/vendor/plugins/has_calculator/init.rb +2 -0
  542. data/vendor/plugins/has_calculator/lib/has_calculator.rb +52 -0
  543. data/vendor/plugins/mail_queue/README +40 -0
  544. data/vendor/plugins/mail_queue/Rakefile +22 -0
  545. data/vendor/plugins/mail_queue/init.rb +1 -0
  546. data/vendor/plugins/mail_queue/install.rb +1 -0
  547. data/vendor/plugins/mail_queue/lib/mail_queue.rb +48 -0
  548. data/vendor/plugins/mail_queue/lib/queued_mail.rb +5 -0
  549. data/vendor/plugins/mail_queue/lib/test_mail_queue_mailer.rb +19 -0
  550. data/vendor/plugins/mail_queue/lib/test_mail_queue_mailer/notify.rhtml +1 -0
  551. data/vendor/plugins/mail_queue/tasks/mailer_queue_tasks.rake +4 -0
  552. data/vendor/plugins/mail_queue/test/mailer_queue_test.rb +29 -0
  553. data/vendor/plugins/paperclip/README.rdoc +126 -11
  554. data/vendor/plugins/paperclip/Rakefile +35 -24
  555. data/vendor/plugins/paperclip/lib/paperclip.rb +141 -67
  556. data/vendor/plugins/paperclip/lib/paperclip/attachment.rb +233 -117
  557. data/vendor/plugins/paperclip/lib/paperclip/callback_compatability.rb +33 -0
  558. data/vendor/plugins/paperclip/lib/paperclip/geometry.rb +4 -3
  559. data/vendor/plugins/paperclip/lib/paperclip/interpolations.rb +105 -0
  560. data/vendor/plugins/paperclip/lib/paperclip/iostream.rb +16 -1
  561. data/vendor/plugins/paperclip/lib/paperclip/matchers.rb +4 -0
  562. data/vendor/plugins/paperclip/lib/paperclip/matchers/have_attached_file_matcher.rb +49 -0
  563. data/vendor/plugins/paperclip/lib/paperclip/matchers/validate_attachment_content_type_matcher.rb +66 -0
  564. data/vendor/plugins/paperclip/lib/paperclip/matchers/validate_attachment_presence_matcher.rb +48 -0
  565. data/vendor/plugins/paperclip/lib/paperclip/matchers/validate_attachment_size_matcher.rb +83 -0
  566. data/vendor/plugins/paperclip/lib/paperclip/processor.rb +49 -0
  567. data/vendor/plugins/paperclip/lib/paperclip/storage.rb +54 -25
  568. data/vendor/plugins/paperclip/lib/paperclip/thumbnail.rb +13 -31
  569. data/vendor/plugins/paperclip/lib/paperclip/upfile.rb +11 -0
  570. data/vendor/plugins/paperclip/paperclip.gemspec +37 -0
  571. data/vendor/plugins/paperclip/shoulda_macros/paperclip.rb +58 -22
  572. data/vendor/plugins/paperclip/tasks/paperclip_tasks.rake +1 -1
  573. data/vendor/plugins/paperclip/test/attachment_test.rb +460 -54
  574. data/vendor/plugins/paperclip/test/database.yml +0 -1
  575. data/vendor/plugins/paperclip/test/fixtures/s3.yml +4 -0
  576. data/vendor/plugins/paperclip/test/fixtures/twopage.pdf +0 -0
  577. data/vendor/plugins/paperclip/test/geometry_test.rb +22 -13
  578. data/vendor/plugins/paperclip/test/helper.rb +46 -3
  579. data/vendor/plugins/paperclip/test/integration_test.rb +140 -52
  580. data/vendor/plugins/paperclip/test/interpolations_test.rb +120 -0
  581. data/vendor/plugins/paperclip/test/iostream_test.rb +32 -21
  582. data/vendor/plugins/paperclip/test/matchers/have_attached_file_matcher_test.rb +21 -0
  583. data/vendor/plugins/paperclip/test/matchers/validate_attachment_content_type_matcher_test.rb +30 -0
  584. data/vendor/plugins/paperclip/test/matchers/validate_attachment_presence_matcher_test.rb +21 -0
  585. data/vendor/plugins/paperclip/test/matchers/validate_attachment_size_matcher_test.rb +50 -0
  586. data/vendor/plugins/paperclip/test/paperclip_test.rb +148 -36
  587. data/vendor/plugins/paperclip/test/processor_test.rb +10 -0
  588. data/vendor/plugins/paperclip/test/storage_test.rb +126 -16
  589. data/vendor/plugins/paperclip/test/thumbnail_test.rb +51 -19
  590. metadata +586 -622
  591. data/app/views/admin/products/_images.html.erb +0 -42
  592. data/app/views/admin/taxonomies/_yui_head.html.erb +0 -17
  593. data/app/views/orders/_billing.html.erb +0 -53
  594. data/app/views/orders/_checkout_form.html.erb +0 -14
  595. data/app/views/orders/_confirmation.html.erb +0 -11
  596. data/app/views/orders/_payment.html.erb +0 -30
  597. data/app/views/orders/_shipping.html.erb +0 -54
  598. data/app/views/orders/_shipping_method.html.erb +0 -10
  599. data/app/views/orders/checkout.html.erb +0 -15
  600. data/config/initializers/searchlogic.rb +0 -6
  601. data/db/sample/images/ror_bag.jpg +0 -0
  602. data/db/sample/images/ror_baseball_jersey.jpg +0 -0
  603. data/db/sample/images/ror_jr_spaghetti.jpg +0 -0
  604. data/db/sample/images/ror_mug.jpg +0 -0
  605. data/db/sample/images/ror_ringer_tshirt.jpg +0 -0
  606. data/db/sample/images/ror_stein.jpg +0 -0
  607. data/db/sample/images/ror_tote.jpg +0 -0
  608. data/db/sample/zone_members.yml +0 -16
  609. data/db/sample/zones.yml +0 -6
  610. data/lib/flat_rate.rb +0 -10
  611. data/lib/spree/checkout.rb +0 -74
  612. data/public/assets/products/1/mini/ror_tote.jpeg +0 -0
  613. data/public/assets/products/1/original/ror_tote.jpeg +0 -0
  614. data/public/assets/products/1/product/ror_tote.jpeg +0 -0
  615. data/public/assets/products/1/small/ror_tote.jpeg +0 -0
  616. data/public/assets/products/10/mini/ror_ringer_back.jpeg +0 -0
  617. data/public/assets/products/10/original/ror_ringer_back.jpeg +0 -0
  618. data/public/assets/products/10/product/ror_ringer_back.jpeg +0 -0
  619. data/public/assets/products/10/small/ror_ringer_back.jpeg +0 -0
  620. data/public/assets/products/1004/mini/apache_baseball.png +0 -0
  621. data/public/assets/products/1004/original/apache_baseball.png +0 -0
  622. data/public/assets/products/1004/product/apache_baseball.png +0 -0
  623. data/public/assets/products/1004/small/apache_baseball.png +0 -0
  624. data/public/assets/products/1008/mini/ruby_baseball.png +0 -0
  625. data/public/assets/products/1008/original/ruby_baseball.png +0 -0
  626. data/public/assets/products/1008/product/ruby_baseball.png +0 -0
  627. data/public/assets/products/1008/small/ruby_baseball.png +0 -0
  628. data/public/assets/products/11/mini/ror_stein.jpeg +0 -0
  629. data/public/assets/products/11/original/ror_stein.jpeg +0 -0
  630. data/public/assets/products/11/product/ror_stein.jpeg +0 -0
  631. data/public/assets/products/11/small/ror_stein.jpeg +0 -0
  632. data/public/assets/products/12/mini/ror_stein_back.jpeg +0 -0
  633. data/public/assets/products/12/original/ror_stein_back.jpeg +0 -0
  634. data/public/assets/products/12/product/ror_stein_back.jpeg +0 -0
  635. data/public/assets/products/12/small/ror_stein_back.jpeg +0 -0
  636. data/public/assets/products/2/mini/ror_tote_back.jpeg +0 -0
  637. data/public/assets/products/2/original/ror_tote_back.jpeg +0 -0
  638. data/public/assets/products/2/product/ror_tote_back.jpeg +0 -0
  639. data/public/assets/products/2/small/ror_tote_back.jpeg +0 -0
  640. data/public/assets/products/3/mini/ror_bag.jpeg +0 -0
  641. data/public/assets/products/3/original/ror_bag.jpeg +0 -0
  642. data/public/assets/products/3/product/ror_bag.jpeg +0 -0
  643. data/public/assets/products/3/small/ror_bag.jpeg +0 -0
  644. data/public/assets/products/4/mini/ror_baseball.jpeg +0 -0
  645. data/public/assets/products/4/original/ror_baseball.jpeg +0 -0
  646. data/public/assets/products/4/product/ror_baseball.jpeg +0 -0
  647. data/public/assets/products/4/small/ror_baseball.jpeg +0 -0
  648. data/public/assets/products/5/mini/ror_baseball_back.jpeg +0 -0
  649. data/public/assets/products/5/original/ror_baseball_back.jpeg +0 -0
  650. data/public/assets/products/5/product/ror_baseball_back.jpeg +0 -0
  651. data/public/assets/products/5/small/ror_baseball_back.jpeg +0 -0
  652. data/public/assets/products/6/mini/ror_jr_spaghetti.jpeg +0 -0
  653. data/public/assets/products/6/original/ror_jr_spaghetti.jpeg +0 -0
  654. data/public/assets/products/6/product/ror_jr_spaghetti.jpeg +0 -0
  655. data/public/assets/products/6/small/ror_jr_spaghetti.jpeg +0 -0
  656. data/public/assets/products/7/mini/ror_mug.jpeg +0 -0
  657. data/public/assets/products/7/original/ror_mug.jpeg +0 -0
  658. data/public/assets/products/7/product/ror_mug.jpeg +0 -0
  659. data/public/assets/products/7/small/ror_mug.jpeg +0 -0
  660. data/public/assets/products/8/mini/ror_mug_back.jpeg +0 -0
  661. data/public/assets/products/8/original/ror_mug_back.jpeg +0 -0
  662. data/public/assets/products/8/product/ror_mug_back.jpeg +0 -0
  663. data/public/assets/products/8/small/ror_mug_back.jpeg +0 -0
  664. data/public/assets/products/9/mini/ror_ringer.jpeg +0 -0
  665. data/public/assets/products/9/original/ror_ringer.jpeg +0 -0
  666. data/public/assets/products/9/product/ror_ringer.jpeg +0 -0
  667. data/public/assets/products/9/small/ror_ringer.jpeg +0 -0
  668. data/public/javascripts/jquery.validate.pack.js +0 -15
  669. data/public/javascripts/spree-yui.js +0 -693
  670. data/public/javascripts/yui-includes.js +0 -57
  671. data/public/stylesheets/admin/david-admin.css +0 -210
  672. data/spec/controllers/admin/shipments_controller_spec.rb +0 -30
  673. data/spec/helpers/admin/configurations_helper_spec.rb +0 -11
  674. data/spec/helpers/admin/mail_settings_helper_spec.rb +0 -11
  675. data/spec/helpers/products_helper_spec.rb +0 -12
  676. data/spec/helpers/spree/base_helper_spec.rb +0 -30
  677. data/spec/models/country_spec.rb +0 -29
  678. data/spec/models/line_item_spec.rb +0 -78
  679. data/spec/models/preference_spec.rb +0 -185
  680. data/spec/models/product_spec.rb +0 -207
  681. data/spec/models/shipping_method_spec.rb +0 -59
  682. data/spec/models/state_event_spec.rb +0 -12
  683. data/spec/models/state_spec.rb +0 -28
  684. data/spec/models/variant_spec.rb +0 -98
  685. data/vendor/extensions/flat_rate_shipping/README.markdown +0 -3
  686. data/vendor/extensions/flat_rate_shipping/Rakefile +0 -120
  687. data/vendor/extensions/flat_rate_shipping/flat_rate_shipping_extension.rb +0 -11
  688. data/vendor/extensions/flat_rate_shipping/lib/flat_rate_shipping_configuration.rb +0 -7
  689. data/vendor/extensions/flat_rate_shipping/lib/spree/flat_rate_shipping/calculator.rb +0 -9
  690. data/vendor/extensions/flat_rate_shipping/lib/spree/flat_rate_shipping/config.rb +0 -22
  691. data/vendor/extensions/flat_rate_shipping/lib/tasks/flat_rate_shipping_extension_tasks.rake +0 -29
  692. data/vendor/extensions/flat_rate_shipping/spec/spec.opts +0 -6
  693. data/vendor/extensions/flat_rate_shipping/spec/spec_helper.rb +0 -37
  694. data/vendor/extensions/tax_calculator/README.markdown +0 -8
  695. data/vendor/extensions/tax_calculator/Rakefile +0 -120
  696. data/vendor/extensions/tax_calculator/app/controllers/admin/tax_rates_controller.rb +0 -27
  697. data/vendor/extensions/tax_calculator/app/views/admin/tax_rates/_form.html.erb +0 -20
  698. data/vendor/extensions/tax_calculator/config/locales/de.yml +0 -30
  699. data/vendor/extensions/tax_calculator/config/locales/en-GB.yml +0 -30
  700. data/vendor/extensions/tax_calculator/config/locales/en-US.yml +0 -32
  701. data/vendor/extensions/tax_calculator/config/locales/es.yml +0 -30
  702. data/vendor/extensions/tax_calculator/config/locales/it.yml +0 -30
  703. data/vendor/extensions/tax_calculator/config/locales/nb-NO.yml +0 -30
  704. data/vendor/extensions/tax_calculator/config/locales/pl.yml +0 -30
  705. data/vendor/extensions/tax_calculator/config/locales/pt-BR.yml +0 -30
  706. data/vendor/extensions/tax_calculator/config/routes.rb +0 -4
  707. data/vendor/extensions/tax_calculator/lib/spree/sales_tax_calculator.rb +0 -31
  708. data/vendor/extensions/tax_calculator/lib/spree/tax/config.rb +0 -22
  709. data/vendor/extensions/tax_calculator/lib/spree/tax_calculator.rb +0 -18
  710. data/vendor/extensions/tax_calculator/lib/spree/vat_calculator.rb +0 -42
  711. data/vendor/extensions/tax_calculator/lib/tasks/tax_calculator_extension_tasks.rake +0 -18
  712. data/vendor/extensions/tax_calculator/lib/tax_configuration.rb +0 -7
  713. data/vendor/extensions/tax_calculator/spec/controllers/tax_calculator_spec.rb +0 -12
  714. data/vendor/extensions/tax_calculator/spec/helpers/admin/tax_rates_helper_spec.rb +0 -6
  715. data/vendor/extensions/tax_calculator/spec/helpers/products_helper_spec.rb +0 -88
  716. data/vendor/extensions/tax_calculator/spec/models/sales_tax_calculator_spec.rb +0 -53
  717. data/vendor/extensions/tax_calculator/spec/models/tax_calculator_spec.rb +0 -58
  718. data/vendor/extensions/tax_calculator/spec/models/tax_rate_spec.rb +0 -17
  719. data/vendor/extensions/tax_calculator/spec/models/vat_calculator_spec.rb +0 -56
  720. data/vendor/extensions/tax_calculator/spec/spec.opts +0 -6
  721. data/vendor/extensions/tax_calculator/spec/spec_helper.rb +0 -42
  722. data/vendor/extensions/tax_calculator/tax_calculator_extension.rb +0 -41
  723. data/vendor/plugins/resource_controller/test/Rakefile +0 -10
  724. data/vendor/plugins/resource_controller/test/app/controllers/accounts_controller.rb +0 -6
  725. data/vendor/plugins/resource_controller/test/app/controllers/application.rb +0 -7
  726. data/vendor/plugins/resource_controller/test/app/controllers/cms/options_controller.rb +0 -3
  727. data/vendor/plugins/resource_controller/test/app/controllers/cms/personnel_controller.rb +0 -2
  728. data/vendor/plugins/resource_controller/test/app/controllers/cms/photos_controller.rb +0 -6
  729. data/vendor/plugins/resource_controller/test/app/controllers/cms/products_controller.rb +0 -3
  730. data/vendor/plugins/resource_controller/test/app/controllers/comments_controller.rb +0 -3
  731. data/vendor/plugins/resource_controller/test/app/controllers/images_controller.rb +0 -4
  732. data/vendor/plugins/resource_controller/test/app/controllers/options_controller.rb +0 -8
  733. data/vendor/plugins/resource_controller/test/app/controllers/people_controller.rb +0 -9
  734. data/vendor/plugins/resource_controller/test/app/controllers/photos_controller.rb +0 -11
  735. data/vendor/plugins/resource_controller/test/app/controllers/posts_controller.rb +0 -10
  736. data/vendor/plugins/resource_controller/test/app/controllers/projects_controller.rb +0 -3
  737. data/vendor/plugins/resource_controller/test/app/controllers/somethings_controller.rb +0 -3
  738. data/vendor/plugins/resource_controller/test/app/controllers/tags_controller.rb +0 -13
  739. data/vendor/plugins/resource_controller/test/app/controllers/users_controller.rb +0 -12
  740. data/vendor/plugins/resource_controller/test/app/helpers/accounts_helper.rb +0 -2
  741. data/vendor/plugins/resource_controller/test/app/helpers/application_helper.rb +0 -3
  742. data/vendor/plugins/resource_controller/test/app/helpers/cms/products_helper.rb +0 -2
  743. data/vendor/plugins/resource_controller/test/app/helpers/comments_helper.rb +0 -2
  744. data/vendor/plugins/resource_controller/test/app/helpers/images_helper.rb +0 -2
  745. data/vendor/plugins/resource_controller/test/app/helpers/options_helper.rb +0 -2
  746. data/vendor/plugins/resource_controller/test/app/helpers/people_helper.rb +0 -2
  747. data/vendor/plugins/resource_controller/test/app/helpers/photos_helper.rb +0 -2
  748. data/vendor/plugins/resource_controller/test/app/helpers/posts_helper.rb +0 -2
  749. data/vendor/plugins/resource_controller/test/app/helpers/projects_helper.rb +0 -2
  750. data/vendor/plugins/resource_controller/test/app/helpers/somethings_helper.rb +0 -2
  751. data/vendor/plugins/resource_controller/test/app/helpers/tags_helper.rb +0 -2
  752. data/vendor/plugins/resource_controller/test/app/helpers/users_helper.rb +0 -2
  753. data/vendor/plugins/resource_controller/test/app/models/account.rb +0 -4
  754. data/vendor/plugins/resource_controller/test/app/models/comment.rb +0 -3
  755. data/vendor/plugins/resource_controller/test/app/models/image.rb +0 -3
  756. data/vendor/plugins/resource_controller/test/app/models/option.rb +0 -3
  757. data/vendor/plugins/resource_controller/test/app/models/personnel.rb +0 -3
  758. data/vendor/plugins/resource_controller/test/app/models/photo.rb +0 -5
  759. data/vendor/plugins/resource_controller/test/app/models/post.rb +0 -3
  760. data/vendor/plugins/resource_controller/test/app/models/product.rb +0 -3
  761. data/vendor/plugins/resource_controller/test/app/models/project.rb +0 -2
  762. data/vendor/plugins/resource_controller/test/app/models/something.rb +0 -2
  763. data/vendor/plugins/resource_controller/test/app/models/tag.rb +0 -3
  764. data/vendor/plugins/resource_controller/test/app/models/user.rb +0 -3
  765. data/vendor/plugins/resource_controller/test/app/views/accounts/_form.html.erb +0 -4
  766. data/vendor/plugins/resource_controller/test/app/views/accounts/edit.html.erb +0 -14
  767. data/vendor/plugins/resource_controller/test/app/views/accounts/new.html.erb +0 -12
  768. data/vendor/plugins/resource_controller/test/app/views/accounts/show.html.erb +0 -5
  769. data/vendor/plugins/resource_controller/test/app/views/cms/options/edit.rhtml +0 -17
  770. data/vendor/plugins/resource_controller/test/app/views/cms/options/index.rhtml +0 -20
  771. data/vendor/plugins/resource_controller/test/app/views/cms/options/new.rhtml +0 -16
  772. data/vendor/plugins/resource_controller/test/app/views/cms/options/show.rhtml +0 -8
  773. data/vendor/plugins/resource_controller/test/app/views/cms/photos/edit.rhtml +0 -17
  774. data/vendor/plugins/resource_controller/test/app/views/cms/photos/index.rhtml +0 -20
  775. data/vendor/plugins/resource_controller/test/app/views/cms/photos/new.rhtml +0 -16
  776. data/vendor/plugins/resource_controller/test/app/views/cms/photos/show.rhtml +0 -8
  777. data/vendor/plugins/resource_controller/test/app/views/cms/products/edit.rhtml +0 -17
  778. data/vendor/plugins/resource_controller/test/app/views/cms/products/index.rhtml +0 -20
  779. data/vendor/plugins/resource_controller/test/app/views/cms/products/new.rhtml +0 -16
  780. data/vendor/plugins/resource_controller/test/app/views/cms/products/show.rhtml +0 -8
  781. data/vendor/plugins/resource_controller/test/app/views/comments/edit.rhtml +0 -27
  782. data/vendor/plugins/resource_controller/test/app/views/comments/index.rhtml +0 -24
  783. data/vendor/plugins/resource_controller/test/app/views/comments/new.rhtml +0 -26
  784. data/vendor/plugins/resource_controller/test/app/views/comments/show.rhtml +0 -18
  785. data/vendor/plugins/resource_controller/test/app/views/images/_form.html.erb +0 -4
  786. data/vendor/plugins/resource_controller/test/app/views/images/edit.html.erb +0 -14
  787. data/vendor/plugins/resource_controller/test/app/views/images/new.html.erb +0 -12
  788. data/vendor/plugins/resource_controller/test/app/views/layouts/comments.rhtml +0 -17
  789. data/vendor/plugins/resource_controller/test/app/views/layouts/options.rhtml +0 -17
  790. data/vendor/plugins/resource_controller/test/app/views/layouts/people.rhtml +0 -17
  791. data/vendor/plugins/resource_controller/test/app/views/layouts/photos.rhtml +0 -17
  792. data/vendor/plugins/resource_controller/test/app/views/layouts/projects.rhtml +0 -17
  793. data/vendor/plugins/resource_controller/test/app/views/layouts/somethings.rhtml +0 -17
  794. data/vendor/plugins/resource_controller/test/app/views/layouts/tags.rhtml +0 -17
  795. data/vendor/plugins/resource_controller/test/app/views/options/_form.html.erb +0 -8
  796. data/vendor/plugins/resource_controller/test/app/views/options/edit.html.erb +0 -16
  797. data/vendor/plugins/resource_controller/test/app/views/options/index.html.erb +0 -21
  798. data/vendor/plugins/resource_controller/test/app/views/options/new.html.erb +0 -12
  799. data/vendor/plugins/resource_controller/test/app/views/options/show.html.erb +0 -10
  800. data/vendor/plugins/resource_controller/test/app/views/people/edit.rhtml +0 -17
  801. data/vendor/plugins/resource_controller/test/app/views/people/index.rhtml +0 -20
  802. data/vendor/plugins/resource_controller/test/app/views/people/new.rhtml +0 -16
  803. data/vendor/plugins/resource_controller/test/app/views/people/show.rhtml +0 -8
  804. data/vendor/plugins/resource_controller/test/app/views/photos/edit.rhtml +0 -17
  805. data/vendor/plugins/resource_controller/test/app/views/photos/index.rhtml +0 -20
  806. data/vendor/plugins/resource_controller/test/app/views/photos/new.rhtml +0 -16
  807. data/vendor/plugins/resource_controller/test/app/views/photos/show.rhtml +0 -8
  808. data/vendor/plugins/resource_controller/test/app/views/posts/edit.rhtml +0 -22
  809. data/vendor/plugins/resource_controller/test/app/views/posts/index.rhtml +0 -22
  810. data/vendor/plugins/resource_controller/test/app/views/posts/new.rhtml +0 -21
  811. data/vendor/plugins/resource_controller/test/app/views/posts/show.rhtml +0 -13
  812. data/vendor/plugins/resource_controller/test/app/views/projects/edit.rhtml +0 -17
  813. data/vendor/plugins/resource_controller/test/app/views/projects/index.rhtml +0 -20
  814. data/vendor/plugins/resource_controller/test/app/views/projects/new.rhtml +0 -16
  815. data/vendor/plugins/resource_controller/test/app/views/projects/show.rhtml +0 -8
  816. data/vendor/plugins/resource_controller/test/app/views/somethings/edit.rhtml +0 -17
  817. data/vendor/plugins/resource_controller/test/app/views/somethings/index.rhtml +0 -20
  818. data/vendor/plugins/resource_controller/test/app/views/somethings/new.rhtml +0 -16
  819. data/vendor/plugins/resource_controller/test/app/views/somethings/show.rhtml +0 -8
  820. data/vendor/plugins/resource_controller/test/app/views/tags/edit.rhtml +0 -17
  821. data/vendor/plugins/resource_controller/test/app/views/tags/index.rhtml +0 -20
  822. data/vendor/plugins/resource_controller/test/app/views/tags/new.rhtml +0 -16
  823. data/vendor/plugins/resource_controller/test/app/views/tags/show.rhtml +0 -8
  824. data/vendor/plugins/resource_controller/test/app/views/users/edit.rhtml +0 -17
  825. data/vendor/plugins/resource_controller/test/app/views/users/index.rhtml +0 -20
  826. data/vendor/plugins/resource_controller/test/app/views/users/new.rhtml +0 -16
  827. data/vendor/plugins/resource_controller/test/app/views/users/show.rhtml +0 -8
  828. data/vendor/plugins/resource_controller/test/config/database.yml +0 -9
  829. data/vendor/plugins/resource_controller/test/config/environment.rb +0 -47
  830. data/vendor/plugins/resource_controller/test/config/environments/development.rb +0 -21
  831. data/vendor/plugins/resource_controller/test/config/environments/test.rb +0 -19
  832. data/vendor/plugins/resource_controller/test/config/initializers/inflections.rb +0 -14
  833. data/vendor/plugins/resource_controller/test/config/routes.rb +0 -61
  834. data/vendor/plugins/resource_controller/test/db/migrate/001_create_posts.rb +0 -12
  835. data/vendor/plugins/resource_controller/test/db/migrate/002_create_products.rb +0 -11
  836. data/vendor/plugins/resource_controller/test/db/migrate/003_create_comments.rb +0 -13
  837. data/vendor/plugins/resource_controller/test/db/migrate/004_create_options.rb +0 -13
  838. data/vendor/plugins/resource_controller/test/db/migrate/005_create_photos.rb +0 -11
  839. data/vendor/plugins/resource_controller/test/db/migrate/006_create_tags.rb +0 -17
  840. data/vendor/plugins/resource_controller/test/db/migrate/007_create_somethings.rb +0 -11
  841. data/vendor/plugins/resource_controller/test/db/migrate/008_create_accounts.rb +0 -11
  842. data/vendor/plugins/resource_controller/test/db/migrate/009_add_account_id_to_photos.rb +0 -9
  843. data/vendor/plugins/resource_controller/test/db/migrate/010_create_projects.rb +0 -11
  844. data/vendor/plugins/resource_controller/test/db/migrate/011_create_images.rb +0 -12
  845. data/vendor/plugins/resource_controller/test/db/migrate/012_create_users.rb +0 -11
  846. data/vendor/plugins/resource_controller/test/db/migrate/013_create_personnel.rb +0 -11
  847. data/vendor/plugins/resource_controller/test/db/migrate/014_add_personnel_id_to_photos.rb +0 -9
  848. data/vendor/plugins/resource_controller/test/db/schema.rb +0 -78
  849. data/vendor/plugins/resource_controller/test/script/console +0 -3
  850. data/vendor/plugins/resource_controller/test/script/destroy +0 -3
  851. data/vendor/plugins/resource_controller/test/script/generate +0 -3
  852. data/vendor/plugins/resource_controller/test/script/server +0 -3
  853. data/vendor/plugins/resource_controller/test/test/fixtures/accounts.yml +0 -7
  854. data/vendor/plugins/resource_controller/test/test/fixtures/comments.yml +0 -11
  855. data/vendor/plugins/resource_controller/test/test/fixtures/images.yml +0 -6
  856. data/vendor/plugins/resource_controller/test/test/fixtures/options.yml +0 -9
  857. data/vendor/plugins/resource_controller/test/test/fixtures/personnel.yml +0 -5
  858. data/vendor/plugins/resource_controller/test/test/fixtures/photos.yml +0 -9
  859. data/vendor/plugins/resource_controller/test/test/fixtures/photos_tags.yml +0 -3
  860. data/vendor/plugins/resource_controller/test/test/fixtures/posts.yml +0 -9
  861. data/vendor/plugins/resource_controller/test/test/fixtures/products.yml +0 -7
  862. data/vendor/plugins/resource_controller/test/test/fixtures/projects.yml +0 -7
  863. data/vendor/plugins/resource_controller/test/test/fixtures/somethings.yml +0 -7
  864. data/vendor/plugins/resource_controller/test/test/fixtures/tags.yml +0 -7
  865. data/vendor/plugins/resource_controller/test/test/fixtures/users.yml +0 -5
  866. data/vendor/plugins/resource_controller/test/test/functional/cms/options_controller_test.rb +0 -23
  867. data/vendor/plugins/resource_controller/test/test/functional/cms/photos_controller_test.rb +0 -43
  868. data/vendor/plugins/resource_controller/test/test/functional/cms/products_controller_test.rb +0 -23
  869. data/vendor/plugins/resource_controller/test/test/functional/comments_controller_test.rb +0 -26
  870. data/vendor/plugins/resource_controller/test/test/functional/images_controller_test.rb +0 -37
  871. data/vendor/plugins/resource_controller/test/test/functional/people_controller_test.rb +0 -34
  872. data/vendor/plugins/resource_controller/test/test/functional/photos_controller_test.rb +0 -130
  873. data/vendor/plugins/resource_controller/test/test/functional/posts_controller_test.rb +0 -34
  874. data/vendor/plugins/resource_controller/test/test/functional/projects_controller_test.rb +0 -18
  875. data/vendor/plugins/resource_controller/test/test/functional/somethings_controller_test.rb +0 -28
  876. data/vendor/plugins/resource_controller/test/test/functional/tags_controller_test.rb +0 -64
  877. data/vendor/plugins/resource_controller/test/test/functional/users_controller_test.rb +0 -24
  878. data/vendor/plugins/resource_controller/test/test/test_helper.rb +0 -12
  879. data/vendor/plugins/resource_controller/test/test/unit/accessors_test.rb +0 -110
  880. data/vendor/plugins/resource_controller/test/test/unit/account_test.rb +0 -7
  881. data/vendor/plugins/resource_controller/test/test/unit/action_options_test.rb +0 -109
  882. data/vendor/plugins/resource_controller/test/test/unit/base_test.rb +0 -11
  883. data/vendor/plugins/resource_controller/test/test/unit/comment_test.rb +0 -10
  884. data/vendor/plugins/resource_controller/test/test/unit/failable_action_options_test.rb +0 -77
  885. data/vendor/plugins/resource_controller/test/test/unit/helpers/current_objects_test.rb +0 -133
  886. data/vendor/plugins/resource_controller/test/test/unit/helpers/internal_test.rb +0 -106
  887. data/vendor/plugins/resource_controller/test/test/unit/helpers/nested_test.rb +0 -86
  888. data/vendor/plugins/resource_controller/test/test/unit/helpers/singleton_current_objects_test.rb +0 -68
  889. data/vendor/plugins/resource_controller/test/test/unit/helpers/singleton_nested_test.rb +0 -77
  890. data/vendor/plugins/resource_controller/test/test/unit/helpers/singleton_urls_test.rb +0 -67
  891. data/vendor/plugins/resource_controller/test/test/unit/helpers/urls_test.rb +0 -75
  892. data/vendor/plugins/resource_controller/test/test/unit/helpers_test.rb +0 -25
  893. data/vendor/plugins/resource_controller/test/test/unit/image_test.rb +0 -7
  894. data/vendor/plugins/resource_controller/test/test/unit/option_test.rb +0 -10
  895. data/vendor/plugins/resource_controller/test/test/unit/photo_test.rb +0 -10
  896. data/vendor/plugins/resource_controller/test/test/unit/post_test.rb +0 -10
  897. data/vendor/plugins/resource_controller/test/test/unit/project_test.rb +0 -10
  898. data/vendor/plugins/resource_controller/test/test/unit/response_collector_test.rb +0 -49
  899. data/vendor/plugins/resource_controller/test/test/unit/something_test.rb +0 -10
  900. data/vendor/plugins/resource_controller/test/test/unit/tag_test.rb +0 -10
  901. data/vendor/plugins/resource_controller/test/test/unit/urligence_test.rb +0 -203
  902. data/vendor/plugins/resource_controller/test/vendor/plugins/shoulda/Rakefile +0 -32
  903. data/vendor/plugins/resource_controller/test/vendor/plugins/shoulda/bin/convert_to_should_syntax +0 -40
  904. data/vendor/plugins/resource_controller/test/vendor/plugins/shoulda/init.rb +0 -3
  905. data/vendor/plugins/resource_controller/test/vendor/plugins/shoulda/lib/shoulda.rb +0 -43
  906. data/vendor/plugins/resource_controller/test/vendor/plugins/shoulda/lib/shoulda/active_record_helpers.rb +0 -580
  907. data/vendor/plugins/resource_controller/test/vendor/plugins/shoulda/lib/shoulda/color.rb +0 -77
  908. data/vendor/plugins/resource_controller/test/vendor/plugins/shoulda/lib/shoulda/controller_tests/controller_tests.rb +0 -467
  909. data/vendor/plugins/resource_controller/test/vendor/plugins/shoulda/lib/shoulda/controller_tests/formats/html.rb +0 -201
  910. data/vendor/plugins/resource_controller/test/vendor/plugins/shoulda/lib/shoulda/controller_tests/formats/xml.rb +0 -170
  911. data/vendor/plugins/resource_controller/test/vendor/plugins/shoulda/lib/shoulda/gem/proc_extensions.rb +0 -14
  912. data/vendor/plugins/resource_controller/test/vendor/plugins/shoulda/lib/shoulda/gem/shoulda.rb +0 -239
  913. data/vendor/plugins/resource_controller/test/vendor/plugins/shoulda/lib/shoulda/general.rb +0 -118
  914. data/vendor/plugins/resource_controller/test/vendor/plugins/shoulda/lib/shoulda/private_helpers.rb +0 -22
@@ -0,0 +1,33 @@
1
+ module Paperclip
2
+ # This module is intended as a compatability shim for the differences in
3
+ # callbacks between Rails 2.0 and Rails 2.1.
4
+ module CallbackCompatability
5
+ def self.included(base)
6
+ base.extend(ClassMethods)
7
+ base.send(:include, InstanceMethods)
8
+ end
9
+
10
+ module ClassMethods
11
+ # The implementation of this method is taken from the Rails 1.2.6 source,
12
+ # from rails/activerecord/lib/active_record/callbacks.rb, line 192.
13
+ def define_callbacks(*args)
14
+ args.each do |method|
15
+ self.class_eval <<-"end_eval"
16
+ def self.#{method}(*callbacks, &block)
17
+ callbacks << block if block_given?
18
+ write_inheritable_array(#{method.to_sym.inspect}, callbacks)
19
+ end
20
+ end_eval
21
+ end
22
+ end
23
+ end
24
+
25
+ module InstanceMethods
26
+ # The callbacks in < 2.1 don't worry about the extra options or the
27
+ # block, so just run what we have available.
28
+ def run_callbacks(meth, opts = nil, &blk)
29
+ callback(meth)
30
+ end
31
+ end
32
+ end
33
+ end
@@ -16,7 +16,7 @@ module Paperclip
16
16
  def self.from_file file
17
17
  file = file.path if file.respond_to? "path"
18
18
  geometry = begin
19
- Paperclip.run("identify", %Q[-format "%wx%h" "#{file}"])
19
+ Paperclip.run("identify", %Q[-format "%wx%h" "#{file}"[0]])
20
20
  rescue PaperclipCommandLineError
21
21
  ""
22
22
  end
@@ -26,7 +26,7 @@ module Paperclip
26
26
 
27
27
  # Parses a "WxH" formatted string, where W is the width and H is the height.
28
28
  def self.parse string
29
- if match = (string && string.match(/\b(\d*)x?(\d*)\b([\>\<\#\@\%^!])?/))
29
+ if match = (string && string.match(/\b(\d*)x?(\d*)\b([\>\<\#\@\%^!])?/i))
30
30
  Geometry.new(*match[1,3])
31
31
  end
32
32
  end
@@ -65,7 +65,8 @@ module Paperclip
65
65
  def to_s
66
66
  s = ""
67
67
  s << width.to_i.to_s if width > 0
68
- s << "x#{height.to_i}#{modifier}" if height > 0
68
+ s << "x#{height.to_i}" if height > 0
69
+ s << modifier.to_s
69
70
  s
70
71
  end
71
72
 
@@ -0,0 +1,105 @@
1
+ module Paperclip
2
+ # This module contains all the methods that are available for interpolation
3
+ # in paths and urls. To add your own (or override an existing one), you
4
+ # can either open this module and define it, or call the
5
+ # Paperclip.interpolates method.
6
+ module Interpolations
7
+ extend self
8
+
9
+ # Hash assignment of interpolations. Included only for compatability,
10
+ # and is not intended for normal use.
11
+ def self.[]= name, block
12
+ define_method(name, &block)
13
+ end
14
+
15
+ # Hash access of interpolations. Included only for compatability,
16
+ # and is not intended for normal use.
17
+ def self.[] name
18
+ method(name)
19
+ end
20
+
21
+ # Returns a sorted list of all interpolations.
22
+ def self.all
23
+ self.instance_methods(false).sort
24
+ end
25
+
26
+ # Perform the actual interpolation. Takes the pattern to interpolate
27
+ # and the arguments to pass, which are the attachment and style name.
28
+ def self.interpolate pattern, *args
29
+ all.reverse.inject( pattern.dup ) do |result, tag|
30
+ result.gsub(/:#{tag}/) do |match|
31
+ send( tag, *args )
32
+ end
33
+ end
34
+ end
35
+
36
+ # Returns the filename, the same way as ":basename.:extension" would.
37
+ def filename attachment, style
38
+ "#{basename(attachment, style)}.#{extension(attachment, style)}"
39
+ end
40
+
41
+ # Returns the interpolated URL. Will raise an error if the url itself
42
+ # contains ":url" to prevent infinite recursion. This interpolation
43
+ # is used in the default :path to ease default specifications.
44
+ def url attachment, style
45
+ raise InfiniteInterpolationError if attachment.options[:url].include?(":url")
46
+ attachment.url(style, false)
47
+ end
48
+
49
+ # Returns the timestamp as defined by the <attachment>_updated_at field
50
+ def timestamp attachment, style
51
+ attachment.instance_read(:updated_at).to_s
52
+ end
53
+
54
+ # Returns the RAILS_ROOT constant.
55
+ def rails_root attachment, style
56
+ RAILS_ROOT
57
+ end
58
+
59
+ # Returns the RAILS_ENV constant.
60
+ def rails_env attachment, style
61
+ RAILS_ENV
62
+ end
63
+
64
+ # Returns the underscored, pluralized version of the class name.
65
+ # e.g. "users" for the User class.
66
+ def class attachment, style
67
+ attachment.instance.class.to_s.underscore.pluralize
68
+ end
69
+
70
+ # Returns the basename of the file. e.g. "file" for "file.jpg"
71
+ def basename attachment, style
72
+ attachment.original_filename.gsub(/#{File.extname(attachment.original_filename)}$/, "")
73
+ end
74
+
75
+ # Returns the extension of the file. e.g. "jpg" for "file.jpg"
76
+ # If the style has a format defined, it will return the format instead
77
+ # of the actual extension.
78
+ def extension attachment, style
79
+ ((style = attachment.styles[style]) && style[:format]) ||
80
+ File.extname(attachment.original_filename).gsub(/^\.+/, "")
81
+ end
82
+
83
+ # Returns the id of the instance.
84
+ def id attachment, style
85
+ attachment.instance.id
86
+ end
87
+
88
+ # Returns the id of the instance in a split path form. e.g. returns
89
+ # 000/001/234 for an id of 1234.
90
+ def id_partition attachment, style
91
+ ("%09d" % attachment.instance.id).scan(/\d{3}/).join("/")
92
+ end
93
+
94
+ # Returns the pluralized form of the attachment name. e.g.
95
+ # "avatars" for an attachment of :avatar
96
+ def attachment attachment, style
97
+ attachment.name.to_s.downcase.pluralize
98
+ end
99
+
100
+ # Returns the style, or the default style if nil is supplied.
101
+ def style attachment, style
102
+ style || attachment.default_style
103
+ end
104
+ end
105
+ end
@@ -30,7 +30,7 @@ module IOStream
30
30
  end
31
31
  end
32
32
 
33
- class IO
33
+ class IO #:nodoc:
34
34
  include IOStream
35
35
  end
36
36
 
@@ -41,3 +41,18 @@ end
41
41
  end
42
42
  end
43
43
  end
44
+
45
+ # Corrects a bug in Windows when asking for Tempfile size.
46
+ if defined? Tempfile
47
+ class Tempfile
48
+ def size
49
+ if @tmpfile
50
+ @tmpfile.fsync
51
+ @tmpfile.flush
52
+ @tmpfile.stat.size
53
+ else
54
+ 0
55
+ end
56
+ end
57
+ end
58
+ end
@@ -0,0 +1,4 @@
1
+ require 'paperclip/matchers/have_attached_file_matcher'
2
+ require 'paperclip/matchers/validate_attachment_presence_matcher'
3
+ require 'paperclip/matchers/validate_attachment_content_type_matcher'
4
+ require 'paperclip/matchers/validate_attachment_size_matcher'
@@ -0,0 +1,49 @@
1
+ module Paperclip
2
+ module Shoulda
3
+ module Matchers
4
+ def have_attached_file name
5
+ HaveAttachedFileMatcher.new(name)
6
+ end
7
+
8
+ class HaveAttachedFileMatcher
9
+ def initialize attachment_name
10
+ @attachment_name = attachment_name
11
+ end
12
+
13
+ def matches? subject
14
+ @subject = subject
15
+ responds? && has_column? && included?
16
+ end
17
+
18
+ def failure_message
19
+ "Should have an attachment named #{@attachment_name}"
20
+ end
21
+
22
+ def negative_failure_message
23
+ "Should not have an attachment named #{@attachment_name}"
24
+ end
25
+
26
+ def description
27
+ "have an attachment named #{@attachment_name}"
28
+ end
29
+
30
+ protected
31
+
32
+ def responds?
33
+ methods = @subject.instance_methods
34
+ methods.include?("#{@attachment_name}") &&
35
+ methods.include?("#{@attachment_name}=") &&
36
+ methods.include?("#{@attachment_name}?")
37
+ end
38
+
39
+ def has_column?
40
+ @subject.column_names.include?("#{@attachment_name}_file_name")
41
+ end
42
+
43
+ def included?
44
+ @subject.ancestors.include?(Paperclip::InstanceMethods)
45
+ end
46
+ end
47
+ end
48
+ end
49
+ end
@@ -0,0 +1,66 @@
1
+ module Paperclip
2
+ module Shoulda
3
+ module Matchers
4
+ def validate_attachment_content_type name
5
+ ValidateAttachmentContentTypeMatcher.new(name)
6
+ end
7
+
8
+ class ValidateAttachmentContentTypeMatcher
9
+ def initialize attachment_name
10
+ @attachment_name = attachment_name
11
+ end
12
+
13
+ def allowing *types
14
+ @allowed_types = types.flatten
15
+ self
16
+ end
17
+
18
+ def rejecting *types
19
+ @rejected_types = types.flatten
20
+ self
21
+ end
22
+
23
+ def matches? subject
24
+ @subject = subject
25
+ @allowed_types && @rejected_types &&
26
+ allowed_types_allowed? && rejected_types_rejected?
27
+ end
28
+
29
+ def failure_message
30
+ "Content types #{@allowed_types.join(", ")} should be accepted" +
31
+ " and #{@rejected_types.join(", ")} rejected by #{@attachment_name}"
32
+ end
33
+
34
+ def negative_failure_message
35
+ "Content types #{@allowed_types.join(", ")} should be rejected" +
36
+ " and #{@rejected_types.join(", ")} accepted by #{@attachment_name}"
37
+ end
38
+
39
+ def description
40
+ "validate the content types allowed on attachment #{@attachment_name}"
41
+ end
42
+
43
+ protected
44
+
45
+ def allow_types?(types)
46
+ types.all? do |type|
47
+ file = StringIO.new(".")
48
+ file.content_type = type
49
+ attachment = @subject.new.attachment_for(@attachment_name)
50
+ attachment.assign(file)
51
+ attachment.errors[:content_type].nil?
52
+ end
53
+ end
54
+
55
+ def allowed_types_allowed?
56
+ allow_types?(@allowed_types)
57
+ end
58
+
59
+ def rejected_types_rejected?
60
+ not allow_types?(@rejected_types)
61
+ end
62
+ end
63
+ end
64
+ end
65
+ end
66
+
@@ -0,0 +1,48 @@
1
+ module Paperclip
2
+ module Shoulda
3
+ module Matchers
4
+ def validate_attachment_presence name
5
+ ValidateAttachmentPresenceMatcher.new(name)
6
+ end
7
+
8
+ class ValidateAttachmentPresenceMatcher
9
+ def initialize attachment_name
10
+ @attachment_name = attachment_name
11
+ end
12
+
13
+ def matches? subject
14
+ @subject = subject
15
+ error_when_not_valid? && no_error_when_valid?
16
+ end
17
+
18
+ def failure_message
19
+ "Attachment #{@attachment_name} should be required"
20
+ end
21
+
22
+ def negative_failure_message
23
+ "Attachment #{@attachment_name} should not be required"
24
+ end
25
+
26
+ def description
27
+ "require presence of attachment #{@attachment_name}"
28
+ end
29
+
30
+ protected
31
+
32
+ def error_when_not_valid?
33
+ @attachment = @subject.new.send(@attachment_name)
34
+ @attachment.assign(nil)
35
+ not @attachment.errors[:presence].nil?
36
+ end
37
+
38
+ def no_error_when_valid?
39
+ @file = StringIO.new(".")
40
+ @attachment = @subject.new.send(@attachment_name)
41
+ @attachment.assign(@file)
42
+ @attachment.errors[:presence].nil?
43
+ end
44
+ end
45
+ end
46
+ end
47
+ end
48
+
@@ -0,0 +1,83 @@
1
+ module Paperclip
2
+ module Shoulda
3
+ module Matchers
4
+ def validate_attachment_size name
5
+ ValidateAttachmentSizeMatcher.new(name)
6
+ end
7
+
8
+ class ValidateAttachmentSizeMatcher
9
+ def initialize attachment_name
10
+ @attachment_name = attachment_name
11
+ @low, @high = 0, (1.0/0)
12
+ end
13
+
14
+ def less_than size
15
+ @high = size
16
+ self
17
+ end
18
+
19
+ def greater_than size
20
+ @low = size
21
+ self
22
+ end
23
+
24
+ def in range
25
+ @low, @high = range.first, range.last
26
+ self
27
+ end
28
+
29
+ def matches? subject
30
+ @subject = subject
31
+ lower_than_low? && higher_than_low? && lower_than_high? && higher_than_high?
32
+ end
33
+
34
+ def failure_message
35
+ "Attachment #{@attachment_name} must be between #{@low} and #{@high} bytes"
36
+ end
37
+
38
+ def negative_failure_message
39
+ "Attachment #{@attachment_name} cannot be between #{@low} and #{@high} bytes"
40
+ end
41
+
42
+ def description
43
+ "validate the size of attachment #{@attachment_name}"
44
+ end
45
+
46
+ protected
47
+
48
+ def override_method object, method, &replacement
49
+ (class << object; self; end).class_eval do
50
+ define_method(method, &replacement)
51
+ end
52
+ end
53
+
54
+ def passes_validation_with_size(new_size)
55
+ file = StringIO.new(".")
56
+ override_method(file, :size){ new_size }
57
+ attachment = @subject.new.attachment_for(@attachment_name)
58
+ attachment.assign(file)
59
+ attachment.errors[:size].nil?
60
+ end
61
+
62
+ def lower_than_low?
63
+ not passes_validation_with_size(@low - 1)
64
+ end
65
+
66
+ def higher_than_low?
67
+ passes_validation_with_size(@low + 1)
68
+ end
69
+
70
+ def lower_than_high?
71
+ return true if @high == (1.0/0)
72
+ passes_validation_with_size(@high - 1)
73
+ end
74
+
75
+ def higher_than_high?
76
+ return true if @high == (1.0/0)
77
+ not passes_validation_with_size(@high + 1)
78
+ end
79
+ end
80
+ end
81
+ end
82
+ end
83
+