goca-spree-core 3.1.14.rails.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (594) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +3 -0
  3. data/LICENSE +26 -0
  4. data/Rakefile +15 -0
  5. data/app/assets/images/logo/spree_50.png +0 -0
  6. data/app/assets/images/noimage/large.png +0 -0
  7. data/app/assets/images/noimage/mini.png +0 -0
  8. data/app/assets/images/noimage/product.png +0 -0
  9. data/app/assets/images/noimage/small.png +0 -0
  10. data/app/assets/javascripts/spree.js.coffee.erb +59 -0
  11. data/app/controllers/spree/base_controller.rb +15 -0
  12. data/app/helpers/spree/base_helper.rb +123 -0
  13. data/app/helpers/spree/products_helper.rb +91 -0
  14. data/app/mailers/spree/base_mailer.rb +27 -0
  15. data/app/mailers/spree/order_mailer.rb +17 -0
  16. data/app/mailers/spree/reimbursement_mailer.rb +10 -0
  17. data/app/mailers/spree/shipment_mailer.rb +10 -0
  18. data/app/mailers/spree/test_mailer.rb +8 -0
  19. data/app/models/concerns/spree/adjustment_source.rb +53 -0
  20. data/app/models/concerns/spree/calculated_adjustments.rb +34 -0
  21. data/app/models/concerns/spree/default_price.rb +40 -0
  22. data/app/models/concerns/spree/display_money.rb +32 -0
  23. data/app/models/concerns/spree/named_type.rb +12 -0
  24. data/app/models/concerns/spree/ransackable_attributes.rb +24 -0
  25. data/app/models/concerns/spree/user_address.rb +30 -0
  26. data/app/models/concerns/spree/user_api_authentication.rb +19 -0
  27. data/app/models/concerns/spree/user_methods.rb +57 -0
  28. data/app/models/concerns/spree/user_payment_source.rb +19 -0
  29. data/app/models/concerns/spree/user_reporting.rb +22 -0
  30. data/app/models/concerns/spree/vat_price_calculation.rb +47 -0
  31. data/app/models/friendly_id/slug_decorator.rb +3 -0
  32. data/app/models/spree/ability.rb +80 -0
  33. data/app/models/spree/address.rb +145 -0
  34. data/app/models/spree/adjustable/adjuster/base.rb +25 -0
  35. data/app/models/spree/adjustable/adjuster/promotion.rb +41 -0
  36. data/app/models/spree/adjustable/adjuster/tax.rb +26 -0
  37. data/app/models/spree/adjustable/adjustments_updater.rb +47 -0
  38. data/app/models/spree/adjustable/promotion_accumulator.rb +75 -0
  39. data/app/models/spree/adjustment.rb +104 -0
  40. data/app/models/spree/app_configuration.rb +74 -0
  41. data/app/models/spree/asset.rb +6 -0
  42. data/app/models/spree/base.rb +24 -0
  43. data/app/models/spree/calculator/default_tax.rb +59 -0
  44. data/app/models/spree/calculator/flat_percent_item_total.rb +22 -0
  45. data/app/models/spree/calculator/flat_rate.rb +20 -0
  46. data/app/models/spree/calculator/flexi_rate.rb +33 -0
  47. data/app/models/spree/calculator/free_shipping.rb +22 -0
  48. data/app/models/spree/calculator/percent_on_line_item.rb +15 -0
  49. data/app/models/spree/calculator/percent_per_item.rb +50 -0
  50. data/app/models/spree/calculator/price_sack.rb +29 -0
  51. data/app/models/spree/calculator/returns/default_refund_amount.rb +36 -0
  52. data/app/models/spree/calculator/shipping/flat_percent_item_total.rb +22 -0
  53. data/app/models/spree/calculator/shipping/flat_rate.rb +18 -0
  54. data/app/models/spree/calculator/shipping/flexi_rate.rb +35 -0
  55. data/app/models/spree/calculator/shipping/per_item.rb +22 -0
  56. data/app/models/spree/calculator/shipping/price_sack.rb +28 -0
  57. data/app/models/spree/calculator/tiered_flat_rate.rb +37 -0
  58. data/app/models/spree/calculator/tiered_percent.rb +44 -0
  59. data/app/models/spree/calculator.rb +47 -0
  60. data/app/models/spree/classification.rb +15 -0
  61. data/app/models/spree/country.rb +40 -0
  62. data/app/models/spree/credit_card.rb +166 -0
  63. data/app/models/spree/customer_return.rb +67 -0
  64. data/app/models/spree/exchange.rb +46 -0
  65. data/app/models/spree/gateway/bogus.rb +91 -0
  66. data/app/models/spree/gateway/bogus_simple.rb +26 -0
  67. data/app/models/spree/gateway.rb +80 -0
  68. data/app/models/spree/image.rb +43 -0
  69. data/app/models/spree/inventory_unit.rb +105 -0
  70. data/app/models/spree/legacy_user.rb +13 -0
  71. data/app/models/spree/line_item.rb +158 -0
  72. data/app/models/spree/log_entry.rb +17 -0
  73. data/app/models/spree/option_type.rb +32 -0
  74. data/app/models/spree/option_type_prototype.rb +9 -0
  75. data/app/models/spree/option_value.rb +26 -0
  76. data/app/models/spree/option_value_variant.rb +6 -0
  77. data/app/models/spree/order/checkout.rb +336 -0
  78. data/app/models/spree/order/currency_updater.rb +40 -0
  79. data/app/models/spree/order/payments.rb +66 -0
  80. data/app/models/spree/order/store_credit.rb +96 -0
  81. data/app/models/spree/order.rb +685 -0
  82. data/app/models/spree/order_contents.rb +120 -0
  83. data/app/models/spree/order_inventory.rb +103 -0
  84. data/app/models/spree/order_merger.rb +65 -0
  85. data/app/models/spree/order_promotion.rb +6 -0
  86. data/app/models/spree/order_updater.rb +177 -0
  87. data/app/models/spree/payment/gateway_options.rb +90 -0
  88. data/app/models/spree/payment/processing.rb +175 -0
  89. data/app/models/spree/payment.rb +276 -0
  90. data/app/models/spree/payment_capture_event.rb +9 -0
  91. data/app/models/spree/payment_method/check.rb +43 -0
  92. data/app/models/spree/payment_method/store_credit.rb +130 -0
  93. data/app/models/spree/payment_method.rb +71 -0
  94. data/app/models/spree/preference.rb +5 -0
  95. data/app/models/spree/preferences/configuration.rb +71 -0
  96. data/app/models/spree/preferences/preferable.rb +133 -0
  97. data/app/models/spree/preferences/preferable_class_methods.rb +51 -0
  98. data/app/models/spree/preferences/scoped_store.rb +33 -0
  99. data/app/models/spree/preferences/store.rb +98 -0
  100. data/app/models/spree/price.rb +53 -0
  101. data/app/models/spree/product/scopes.rb +271 -0
  102. data/app/models/spree/product.rb +384 -0
  103. data/app/models/spree/product_option_type.rb +12 -0
  104. data/app/models/spree/product_promotion_rule.rb +9 -0
  105. data/app/models/spree/product_property.rb +28 -0
  106. data/app/models/spree/promotion/actions/create_adjustment.rb +21 -0
  107. data/app/models/spree/promotion/actions/create_item_adjustments.rb +24 -0
  108. data/app/models/spree/promotion/actions/create_line_items.rb +62 -0
  109. data/app/models/spree/promotion/actions/free_shipping.rb +18 -0
  110. data/app/models/spree/promotion/rules/first_order.rb +37 -0
  111. data/app/models/spree/promotion/rules/item_total.rb +61 -0
  112. data/app/models/spree/promotion/rules/one_use_per_user.rb +24 -0
  113. data/app/models/spree/promotion/rules/option_value.rb +50 -0
  114. data/app/models/spree/promotion/rules/product.rb +65 -0
  115. data/app/models/spree/promotion/rules/taxon.rb +70 -0
  116. data/app/models/spree/promotion/rules/user.rb +30 -0
  117. data/app/models/spree/promotion/rules/user_logged_in.rb +18 -0
  118. data/app/models/spree/promotion.rb +198 -0
  119. data/app/models/spree/promotion_action.rb +25 -0
  120. data/app/models/spree/promotion_action_line_item.rb +6 -0
  121. data/app/models/spree/promotion_category.rb +6 -0
  122. data/app/models/spree/promotion_handler/cart.rb +51 -0
  123. data/app/models/spree/promotion_handler/coupon.rb +107 -0
  124. data/app/models/spree/promotion_handler/free_shipping.rb +33 -0
  125. data/app/models/spree/promotion_handler/page.rb +24 -0
  126. data/app/models/spree/promotion_rule.rb +43 -0
  127. data/app/models/spree/promotion_rule_taxon.rb +9 -0
  128. data/app/models/spree/promotion_rule_user.rb +9 -0
  129. data/app/models/spree/property.rb +23 -0
  130. data/app/models/spree/property_prototype.rb +9 -0
  131. data/app/models/spree/prototype.rb +14 -0
  132. data/app/models/spree/prototype_taxon.rb +9 -0
  133. data/app/models/spree/refund.rb +89 -0
  134. data/app/models/spree/refund_reason.rb +13 -0
  135. data/app/models/spree/reimbursement/credit.rb +25 -0
  136. data/app/models/spree/reimbursement/reimbursement_type_engine.rb +56 -0
  137. data/app/models/spree/reimbursement/reimbursement_type_validator.rb +15 -0
  138. data/app/models/spree/reimbursement.rb +164 -0
  139. data/app/models/spree/reimbursement_performer.rb +43 -0
  140. data/app/models/spree/reimbursement_tax_calculator.rb +44 -0
  141. data/app/models/spree/reimbursement_type/credit.rb +13 -0
  142. data/app/models/spree/reimbursement_type/exchange.rb +9 -0
  143. data/app/models/spree/reimbursement_type/original_payment.rb +13 -0
  144. data/app/models/spree/reimbursement_type/reimbursement_helpers.rb +67 -0
  145. data/app/models/spree/reimbursement_type/store_credit.rb +28 -0
  146. data/app/models/spree/reimbursement_type.rb +16 -0
  147. data/app/models/spree/return_authorization.rb +98 -0
  148. data/app/models/spree/return_authorization_reason.rb +7 -0
  149. data/app/models/spree/return_item/eligibility_validator/base_validator.rb +24 -0
  150. data/app/models/spree/return_item/eligibility_validator/default.rb +30 -0
  151. data/app/models/spree/return_item/eligibility_validator/inventory_shipped.rb +16 -0
  152. data/app/models/spree/return_item/eligibility_validator/no_reimbursements.rb +16 -0
  153. data/app/models/spree/return_item/eligibility_validator/order_completed.rb +16 -0
  154. data/app/models/spree/return_item/eligibility_validator/rma_required.rb +17 -0
  155. data/app/models/spree/return_item/eligibility_validator/time_since_purchase.rb +16 -0
  156. data/app/models/spree/return_item/exchange_variant_eligibility/same_option_value.rb +34 -0
  157. data/app/models/spree/return_item/exchange_variant_eligibility/same_product.rb +9 -0
  158. data/app/models/spree/return_item.rb +236 -0
  159. data/app/models/spree/returns_calculator.rb +8 -0
  160. data/app/models/spree/role.rb +8 -0
  161. data/app/models/spree/role_user.rb +6 -0
  162. data/app/models/spree/shipment.rb +419 -0
  163. data/app/models/spree/shipment_handler.rb +43 -0
  164. data/app/models/spree/shipping_calculator.rb +22 -0
  165. data/app/models/spree/shipping_category.rb +11 -0
  166. data/app/models/spree/shipping_method.rb +69 -0
  167. data/app/models/spree/shipping_method_category.rb +6 -0
  168. data/app/models/spree/shipping_method_zone.rb +6 -0
  169. data/app/models/spree/shipping_rate.rb +44 -0
  170. data/app/models/spree/state.rb +41 -0
  171. data/app/models/spree/state_change.rb +10 -0
  172. data/app/models/spree/stock/adjuster.rb +27 -0
  173. data/app/models/spree/stock/availability_validator.rb +30 -0
  174. data/app/models/spree/stock/content_item.rb +54 -0
  175. data/app/models/spree/stock/coordinator.rb +65 -0
  176. data/app/models/spree/stock/differentiator.rb +44 -0
  177. data/app/models/spree/stock/estimator.rb +70 -0
  178. data/app/models/spree/stock/inventory_unit_builder.rb +22 -0
  179. data/app/models/spree/stock/package.rb +104 -0
  180. data/app/models/spree/stock/packer.rb +48 -0
  181. data/app/models/spree/stock/prioritizer.rb +47 -0
  182. data/app/models/spree/stock/quantifier.rb +29 -0
  183. data/app/models/spree/stock/splitter/backordered.rb +23 -0
  184. data/app/models/spree/stock/splitter/base.rb +28 -0
  185. data/app/models/spree/stock/splitter/shipping_category.rb +32 -0
  186. data/app/models/spree/stock/splitter/weight.rb +34 -0
  187. data/app/models/spree/stock_item.rb +90 -0
  188. data/app/models/spree/stock_location.rb +115 -0
  189. data/app/models/spree/stock_movement.rb +35 -0
  190. data/app/models/spree/stock_transfer.rb +50 -0
  191. data/app/models/spree/store.rb +48 -0
  192. data/app/models/spree/store_credit.rb +252 -0
  193. data/app/models/spree/store_credit_category.rb +22 -0
  194. data/app/models/spree/store_credit_event.rb +38 -0
  195. data/app/models/spree/store_credit_type.rb +6 -0
  196. data/app/models/spree/tax_category.rb +18 -0
  197. data/app/models/spree/tax_rate.rb +110 -0
  198. data/app/models/spree/taxon.rb +102 -0
  199. data/app/models/spree/taxonomy.rb +24 -0
  200. data/app/models/spree/tracker.rb +19 -0
  201. data/app/models/spree/validations/db_maximum_length_validator.rb +23 -0
  202. data/app/models/spree/variant.rb +312 -0
  203. data/app/models/spree/zone.rb +190 -0
  204. data/app/models/spree/zone_member.rb +12 -0
  205. data/app/validators/db_maximum_length_validator.rb +11 -0
  206. data/app/views/layouts/spree/base_mailer.html.erb +41 -0
  207. data/app/views/spree/admin/orders/customer_details/_autocomplete.js.erb +19 -0
  208. data/app/views/spree/order_mailer/_adjustment.html.erb +8 -0
  209. data/app/views/spree/order_mailer/_subtotal.html.erb +8 -0
  210. data/app/views/spree/order_mailer/_total.html.erb +8 -0
  211. data/app/views/spree/order_mailer/cancel_email.html.erb +30 -0
  212. data/app/views/spree/order_mailer/cancel_email.text.erb +16 -0
  213. data/app/views/spree/order_mailer/confirm_email.html.erb +70 -0
  214. data/app/views/spree/order_mailer/confirm_email.text.erb +38 -0
  215. data/app/views/spree/reimbursement_mailer/reimbursement_email.text.erb +22 -0
  216. data/app/views/spree/shared/_base_mailer_footer.html.erb +20 -0
  217. data/app/views/spree/shared/_base_mailer_header.html.erb +29 -0
  218. data/app/views/spree/shared/_base_mailer_stylesheets.html.erb +777 -0
  219. data/app/views/spree/shared/_error_messages.html.erb +11 -0
  220. data/app/views/spree/shared/_mailer_line_item.html.erb +12 -0
  221. data/app/views/spree/shipment_mailer/shipped_email.html.erb +41 -0
  222. data/app/views/spree/shipment_mailer/shipped_email.text.erb +16 -0
  223. data/app/views/spree/test_mailer/test_email.html.erb +40 -0
  224. data/app/views/spree/test_mailer/test_email.text.erb +4 -0
  225. data/config/initializers/assets.rb +1 -0
  226. data/config/initializers/friendly_id.rb +88 -0
  227. data/config/initializers/premailer_assets.rb +1 -0
  228. data/config/initializers/premailer_rails.rb +3 -0
  229. data/config/initializers/user_class_extensions.rb +10 -0
  230. data/config/locales/en.yml +1499 -0
  231. data/config/routes.rb +8 -0
  232. data/db/default/spree/countries.rb +29 -0
  233. data/db/default/spree/default_reimbursement_type.rb +1 -0
  234. data/db/default/spree/roles.rb +2 -0
  235. data/db/default/spree/states.rb +28 -0
  236. data/db/default/spree/stores.rb +9 -0
  237. data/db/default/spree/zones.rb +11 -0
  238. data/db/migrate/20120831092320_spree_one_two.rb +481 -0
  239. data/db/migrate/20120831092359_spree_promo_one_two.rb +45 -0
  240. data/db/migrate/20120905145253_add_tax_rate_label.rb +5 -0
  241. data/db/migrate/20120905151823_add_toggle_tax_rate_display.rb +5 -0
  242. data/db/migrate/20120929093553_remove_unused_preference_columns.rb +8 -0
  243. data/db/migrate/20121009142519_add_lock_version_to_variant.rb +5 -0
  244. data/db/migrate/20121010142909_add_states_required_to_countries.rb +5 -0
  245. data/db/migrate/20121012071449_add_on_demand_to_product_and_variant.rb +6 -0
  246. data/db/migrate/20121017010007_remove_not_null_constraint_from_products_on_hand.rb +11 -0
  247. data/db/migrate/20121031162139_split_prices_from_variants.rb +31 -0
  248. data/db/migrate/20121107003422_remove_not_null_from_spree_prices_amount.rb +9 -0
  249. data/db/migrate/20121107184631_add_currency_to_line_items.rb +5 -0
  250. data/db/migrate/20121107194006_add_currency_to_orders.rb +5 -0
  251. data/db/migrate/20121109173623_add_cost_currency_to_variants.rb +5 -0
  252. data/db/migrate/20121111231553_remove_display_on_from_payment_methods.rb +5 -0
  253. data/db/migrate/20121124203911_add_position_to_taxonomies.rb +5 -0
  254. data/db/migrate/20121126040517_add_last_ip_to_spree_orders.rb +5 -0
  255. data/db/migrate/20121213162028_add_state_to_spree_adjustments.rb +6 -0
  256. data/db/migrate/20130114053446_add_display_on_to_spree_payment_methods.rb +9 -0
  257. data/db/migrate/20130120201805_add_position_to_product_properties.spree.rb +6 -0
  258. data/db/migrate/20130203232234_add_identifier_to_spree_payments.rb +5 -0
  259. data/db/migrate/20130207155350_add_order_id_index_to_payments.rb +9 -0
  260. data/db/migrate/20130208032954_add_primary_to_spree_products_taxons.rb +5 -0
  261. data/db/migrate/20130211190146_create_spree_stock_items.rb +14 -0
  262. data/db/migrate/20130211191120_create_spree_stock_locations.rb +11 -0
  263. data/db/migrate/20130213191427_create_default_stock.rb +33 -0
  264. data/db/migrate/20130222032153_add_order_id_index_to_shipments.rb +5 -0
  265. data/db/migrate/20130226032817_change_meta_description_on_spree_products_to_text.rb +5 -0
  266. data/db/migrate/20130226191231_add_stock_location_id_to_spree_shipments.rb +5 -0
  267. data/db/migrate/20130227143905_add_pending_to_inventory_unit.rb +6 -0
  268. data/db/migrate/20130228164411_remove_on_demand_from_product_and_variant.rb +6 -0
  269. data/db/migrate/20130228210442_create_shipping_method_zone.rb +21 -0
  270. data/db/migrate/20130301162745_remove_shipping_category_id_from_shipping_method.rb +5 -0
  271. data/db/migrate/20130301162924_create_shipping_method_categories.rb +13 -0
  272. data/db/migrate/20130301205200_add_tracking_url_to_spree_shipping_methods.rb +5 -0
  273. data/db/migrate/20130304162240_create_spree_shipping_rates.rb +24 -0
  274. data/db/migrate/20130304192936_remove_category_match_attributes_from_shipping_method.rb +7 -0
  275. data/db/migrate/20130305143310_create_stock_movements.rb +12 -0
  276. data/db/migrate/20130306181701_add_address_fields_to_stock_location.rb +22 -0
  277. data/db/migrate/20130306191917_add_active_field_to_stock_locations.rb +5 -0
  278. data/db/migrate/20130306195650_add_backorderable_to_stock_item.rb +5 -0
  279. data/db/migrate/20130307161754_add_default_quantity_to_stock_movement.rb +5 -0
  280. data/db/migrate/20130318151756_add_source_and_destination_to_stock_movements.rb +8 -0
  281. data/db/migrate/20130319062004_change_orders_total_precision.rb +8 -0
  282. data/db/migrate/20130319063911_change_spree_payments_amount_precision.rb +7 -0
  283. data/db/migrate/20130319064308_change_spree_return_authorization_amount_precision.rb +7 -0
  284. data/db/migrate/20130319082943_change_adjustments_amount_precision.rb +7 -0
  285. data/db/migrate/20130319183250_add_originator_to_stock_movement.rb +7 -0
  286. data/db/migrate/20130319190507_drop_source_and_destination_from_stock_movement.rb +15 -0
  287. data/db/migrate/20130325163316_migrate_inventory_unit_sold_to_on_hand.rb +9 -0
  288. data/db/migrate/20130326175857_add_stock_location_to_rma.rb +5 -0
  289. data/db/migrate/20130328130308_update_shipment_state_for_canceled_orders.rb +15 -0
  290. data/db/migrate/20130328195253_add_seo_metas_to_taxons.rb +9 -0
  291. data/db/migrate/20130329134939_remove_stock_item_and_variant_lock.rb +14 -0
  292. data/db/migrate/20130413230529_add_name_to_spree_credit_cards.rb +5 -0
  293. data/db/migrate/20130414000512_update_name_fields_on_spree_credit_cards.rb +13 -0
  294. data/db/migrate/20130417120034_add_index_to_source_columns_on_adjustments.rb +5 -0
  295. data/db/migrate/20130417120035_update_adjustment_states.rb +16 -0
  296. data/db/migrate/20130417123427_add_shipping_rates_to_shipments.rb +15 -0
  297. data/db/migrate/20130418125341_create_spree_stock_transfers.rb +14 -0
  298. data/db/migrate/20130423110707_drop_products_count_on_hand.rb +5 -0
  299. data/db/migrate/20130423223847_set_default_shipping_rate_cost.rb +5 -0
  300. data/db/migrate/20130509115210_add_number_to_stock_transfer.rb +23 -0
  301. data/db/migrate/20130514151929_add_sku_index_to_spree_variants.rb +5 -0
  302. data/db/migrate/20130515180736_add_backorderable_default_to_spree_stock_location.rb +5 -0
  303. data/db/migrate/20130516151222_add_propage_all_variants_to_spree_stock_location.rb +5 -0
  304. data/db/migrate/20130611054351_rename_shipping_methods_zones_to_spree_shipping_methods_zones.rb +5 -0
  305. data/db/migrate/20130611185927_add_user_id_index_to_spree_orders.rb +5 -0
  306. data/db/migrate/20130618041418_add_updated_at_to_spree_countries.rb +9 -0
  307. data/db/migrate/20130619012236_add_updated_at_to_spree_states.rb +9 -0
  308. data/db/migrate/20130626232741_add_cvv_result_code_and_cvv_result_message_to_spree_payments.rb +6 -0
  309. data/db/migrate/20130628021056_add_unique_index_to_permalink_on_spree_products.rb +5 -0
  310. data/db/migrate/20130628022817_add_unique_index_to_orders_shipments_and_stock_transfers.rb +7 -0
  311. data/db/migrate/20130708052307_add_deleted_at_to_spree_tax_rates.rb +5 -0
  312. data/db/migrate/20130711200933_remove_lock_version_from_inventory_units.rb +6 -0
  313. data/db/migrate/20130718042445_add_cost_price_to_line_item.rb +5 -0
  314. data/db/migrate/20130718233855_set_backorderable_to_default_to_false.rb +6 -0
  315. data/db/migrate/20130725031716_add_created_by_id_to_spree_orders.rb +5 -0
  316. data/db/migrate/20130729214043_index_completed_at_on_spree_orders.rb +5 -0
  317. data/db/migrate/20130802014537_add_tax_category_id_to_spree_line_items.rb +5 -0
  318. data/db/migrate/20130802022321_migrate_tax_categories_to_line_items.rb +10 -0
  319. data/db/migrate/20130806022521_drop_spree_mail_methods.rb +12 -0
  320. data/db/migrate/20130806145853_set_default_stock_location_on_shipments.rb +8 -0
  321. data/db/migrate/20130807024301_upgrade_adjustments.rb +40 -0
  322. data/db/migrate/20130807024302_rename_adjustment_fields.rb +14 -0
  323. data/db/migrate/20130809164245_add_admin_name_column_to_spree_shipping_methods.rb +5 -0
  324. data/db/migrate/20130809164330_add_admin_name_column_to_spree_stock_locations.rb +5 -0
  325. data/db/migrate/20130813004002_add_shipment_total_to_spree_orders.rb +5 -0
  326. data/db/migrate/20130813140619_expand_order_number_size.rb +9 -0
  327. data/db/migrate/20130813232134_rename_activators_to_promotions.rb +5 -0
  328. data/db/migrate/20130815000406_add_adjustment_total_to_line_items.rb +5 -0
  329. data/db/migrate/20130815024413_add_adjustment_total_to_shipments.rb +5 -0
  330. data/db/migrate/20130826062534_add_depth_to_spree_taxons.rb +16 -0
  331. data/db/migrate/20130828234942_add_tax_total_to_line_items_shipments_and_orders.rb +8 -0
  332. data/db/migrate/20130830001033_add_shipping_category_to_shipping_methods_and_products.rb +15 -0
  333. data/db/migrate/20130830001159_migrate_old_shipping_calculators.rb +19 -0
  334. data/db/migrate/20130903183026_add_code_to_spree_promotion_rules.rb +5 -0
  335. data/db/migrate/20130909115621_change_states_required_for_countries.rb +9 -0
  336. data/db/migrate/20130915032339_add_deleted_at_to_spree_stock_items.rb +5 -0
  337. data/db/migrate/20130917024658_remove_promotions_event_name_field.rb +5 -0
  338. data/db/migrate/20130924040529_add_promo_total_to_line_items_and_shipments_and_orders.rb +7 -0
  339. data/db/migrate/20131001013410_remove_unused_credit_card_fields.rb +16 -0
  340. data/db/migrate/20131026154747_add_track_inventory_to_variant.rb +5 -0
  341. data/db/migrate/20131107132123_add_tax_category_to_variants.rb +6 -0
  342. data/db/migrate/20131113035136_add_channel_to_spree_orders.rb +5 -0
  343. data/db/migrate/20131118043959_add_included_to_adjustments.rb +5 -0
  344. data/db/migrate/20131118050234_rename_tax_total_fields.rb +11 -0
  345. data/db/migrate/20131118183431_add_line_item_id_to_spree_inventory_units.rb +21 -0
  346. data/db/migrate/20131120234456_add_updated_at_to_variants.rb +5 -0
  347. data/db/migrate/20131127001002_add_position_to_classifications.rb +5 -0
  348. data/db/migrate/20131211112807_create_spree_orders_promotions.rb +8 -0
  349. data/db/migrate/20131211192741_unique_shipping_method_categories.rb +24 -0
  350. data/db/migrate/20131218054603_add_item_count_to_spree_orders.rb +5 -0
  351. data/db/migrate/20140106065820_remove_value_type_from_spree_preferences.rb +8 -0
  352. data/db/migrate/20140106224208_rename_permalink_to_slug_for_products.rb +5 -0
  353. data/db/migrate/20140120160805_add_index_to_variant_id_and_currency_on_prices.rb +5 -0
  354. data/db/migrate/20140124023232_rename_activator_id_in_rules_and_actions_to_promotion_id.rb +6 -0
  355. data/db/migrate/20140129024326_add_deleted_at_to_spree_prices.rb +5 -0
  356. data/db/migrate/20140203161722_add_approver_id_and_approved_at_to_orders.rb +6 -0
  357. data/db/migrate/20140204115338_add_confirmation_delivered_to_spree_orders.rb +5 -0
  358. data/db/migrate/20140204192230_add_auto_capture_to_payment_methods.rb +5 -0
  359. data/db/migrate/20140205120320_create_spree_payment_capture_events.rb +12 -0
  360. data/db/migrate/20140205144710_add_uncaptured_amount_to_payments.rb +5 -0
  361. data/db/migrate/20140205181631_default_variant_weight_to_zero.rb +11 -0
  362. data/db/migrate/20140207085910_add_tax_category_id_to_shipping_methods.rb +5 -0
  363. data/db/migrate/20140207093021_add_tax_rate_id_to_shipping_rates.rb +5 -0
  364. data/db/migrate/20140211040159_add_pre_tax_amount_to_line_items_and_shipments.rb +6 -0
  365. data/db/migrate/20140213184916_add_more_indexes.rb +13 -0
  366. data/db/migrate/20140219060952_add_considered_risky_to_orders.rb +5 -0
  367. data/db/migrate/20140227112348_add_preference_store_to_everything.rb +8 -0
  368. data/db/migrate/20140307235515_add_user_id_to_spree_credit_cards.rb +13 -0
  369. data/db/migrate/20140309023735_migrate_old_preferences.rb +23 -0
  370. data/db/migrate/20140309024355_create_spree_stores.rb +25 -0
  371. data/db/migrate/20140309033438_create_store_from_preferences.rb +37 -0
  372. data/db/migrate/20140315053743_add_timestamps_to_spree_assets.rb +6 -0
  373. data/db/migrate/20140318191500_create_spree_taxons_promotion_rules.rb +8 -0
  374. data/db/migrate/20140331100557_add_additional_store_fields.rb +8 -0
  375. data/db/migrate/20140410141842_add_many_missing_indexes.rb +18 -0
  376. data/db/migrate/20140410150358_correct_some_polymorphic_index_and_add_more_missing.rb +66 -0
  377. data/db/migrate/20140415041315_add_user_id_created_by_id_index_to_order.rb +5 -0
  378. data/db/migrate/20140508151342_change_spree_price_amount_precision.rb +8 -0
  379. data/db/migrate/20140518174634_add_token_to_spree_orders.rb +5 -0
  380. data/db/migrate/20140530024945_move_order_token_from_tokenized_permission.rb +29 -0
  381. data/db/migrate/20140601011216_set_shipment_total_for_users_upgrading.rb +10 -0
  382. data/db/migrate/20140604135309_drop_credit_card_first_name_and_last_name.rb +6 -0
  383. data/db/migrate/20140609201656_add_deleted_at_to_spree_promotion_actions.rb +6 -0
  384. data/db/migrate/20140616202624_remove_uncaptured_amount_from_spree_payments.rb +5 -0
  385. data/db/migrate/20140625214618_create_spree_refunds.rb +12 -0
  386. data/db/migrate/20140702140656_create_spree_return_authorization_inventory_unit.rb +12 -0
  387. data/db/migrate/20140707125621_rename_return_authorization_inventory_unit_to_return_items.rb +5 -0
  388. data/db/migrate/20140709160534_backfill_line_item_pre_tax_amount.rb +10 -0
  389. data/db/migrate/20140710041921_recreate_spree_return_authorizations.rb +55 -0
  390. data/db/migrate/20140710181204_add_amount_fields_to_return_items.rb +7 -0
  391. data/db/migrate/20140710190048_drop_return_authorization_amount.rb +5 -0
  392. data/db/migrate/20140713140455_create_spree_return_authorization_reasons.rb +28 -0
  393. data/db/migrate/20140713140527_create_spree_refund_reasons.rb +14 -0
  394. data/db/migrate/20140713142214_rename_return_authorization_reason.rb +5 -0
  395. data/db/migrate/20140715182625_create_spree_promotion_categories.rb +11 -0
  396. data/db/migrate/20140716204111_drop_received_at_on_return_items.rb +9 -0
  397. data/db/migrate/20140716212330_add_reception_and_acceptance_status_to_return_items.rb +6 -0
  398. data/db/migrate/20140717155155_create_default_refund_reason.rb +9 -0
  399. data/db/migrate/20140717185932_add_default_to_spree_stock_locations.rb +7 -0
  400. data/db/migrate/20140718133010_create_spree_customer_returns.rb +9 -0
  401. data/db/migrate/20140718133349_add_customer_return_id_to_return_item.rb +6 -0
  402. data/db/migrate/20140718195325_create_friendly_id_slugs.rb +15 -0
  403. data/db/migrate/20140723004419_rename_spree_refund_return_authorization_id.rb +5 -0
  404. data/db/migrate/20140723152808_increase_return_item_pre_tax_amount_precision.rb +13 -0
  405. data/db/migrate/20140723214541_copy_product_slugs_to_slug_history.rb +15 -0
  406. data/db/migrate/20140725131539_create_spree_reimbursements.rb +21 -0
  407. data/db/migrate/20140728225422_add_promotionable_to_spree_products.rb +5 -0
  408. data/db/migrate/20140729133613_add_exchange_inventory_unit_foreign_keys.rb +7 -0
  409. data/db/migrate/20140730155938_add_acceptance_status_errors_to_return_item.rb +5 -0
  410. data/db/migrate/20140731150017_create_spree_reimbursement_types.rb +20 -0
  411. data/db/migrate/20140804185157_add_default_to_shipment_cost.rb +10 -0
  412. data/db/migrate/20140805171035_add_default_to_spree_credit_cards.rb +5 -0
  413. data/db/migrate/20140805171219_make_existing_credit_cards_default.rb +10 -0
  414. data/db/migrate/20140806144901_add_type_to_reimbursement_type.rb +9 -0
  415. data/db/migrate/20140808184039_create_spree_reimbursement_credits.rb +10 -0
  416. data/db/migrate/20140827170513_add_meta_title_to_spree_products.rb +7 -0
  417. data/db/migrate/20140911173301_add_kind_to_zone.rb +11 -0
  418. data/db/migrate/20140924164824_add_code_to_spree_tax_categories.rb +5 -0
  419. data/db/migrate/20140927193717_default_pre_tax_amount_should_be_zero.rb +6 -0
  420. data/db/migrate/20141002191113_add_code_to_spree_shipping_methods.rb +5 -0
  421. data/db/migrate/20141007230328_add_cancel_audit_fields_to_spree_orders.rb +6 -0
  422. data/db/migrate/20141009204607_add_store_id_to_orders.rb +8 -0
  423. data/db/migrate/20141012083513_create_spree_taxons_prototypes.rb +8 -0
  424. data/db/migrate/20141021194502_add_state_lock_version_to_order.rb +5 -0
  425. data/db/migrate/20141023005240_add_counter_cache_from_spree_variants_to_spree_stock_items.rb +13 -0
  426. data/db/migrate/20141101231208_fix_adjustment_order_presence.rb +13 -0
  427. data/db/migrate/20141105213646_update_classifications_positions.rb +9 -0
  428. data/db/migrate/20141120135441_add_guest_token_index_to_spree_orders.rb +5 -0
  429. data/db/migrate/20141215232040_remove_token_permissions_table.rb +6 -0
  430. data/db/migrate/20141215235502_remove_extra_products_slug_index.rb +5 -0
  431. data/db/migrate/20141217215630_update_product_slug_index.rb +6 -0
  432. data/db/migrate/20141218025915_rename_identifier_to_number_for_payment.rb +5 -0
  433. data/db/migrate/20150118210639_create_spree_store_credits.rb +24 -0
  434. data/db/migrate/20150118211500_create_spree_store_credit_categories.rb +8 -0
  435. data/db/migrate/20150118212051_create_spree_store_credit_events.rb +17 -0
  436. data/db/migrate/20150118212101_create_spree_store_credit_types.rb +10 -0
  437. data/db/migrate/20150121022521_remove_environment_from_payment_method.rb +6 -0
  438. data/db/migrate/20150122145607_add_resellable_to_return_items.rb +5 -0
  439. data/db/migrate/20150122202432_add_code_to_spree_promotion_categories.rb +5 -0
  440. data/db/migrate/20150128032538_remove_environment_from_tracker.rb +6 -0
  441. data/db/migrate/20150128060325_remove_spree_configurations.rb +16 -0
  442. data/db/migrate/20150216173445_add_index_to_spree_stock_items_variant_id.rb +13 -0
  443. data/db/migrate/20150309161154_ensure_payments_have_numbers.rb +9 -0
  444. data/db/migrate/20150314013438_add_missing_indexes_on_spree_tables.rb +67 -0
  445. data/db/migrate/20150317174308_remove_duplicated_indexes_from_multi_columns.rb +18 -0
  446. data/db/migrate/20150324104002_remove_user_index_from_spree_state_changes.rb +14 -0
  447. data/db/migrate/20150515211137_fix_adjustment_order_id.rb +70 -0
  448. data/db/migrate/20150522071831_add_position_to_spree_payment_methods.rb +5 -0
  449. data/db/migrate/20150522181728_add_deleted_at_to_friendly_id_slugs.rb +6 -0
  450. data/db/migrate/20150609093816_increase_scale_on_pre_tax_amounts.rb +16 -0
  451. data/db/migrate/20150626181949_add_taxable_adjustment_total_to_line_item.rb +19 -0
  452. data/db/migrate/20150627090949_migrate_payment_methods_display.rb +12 -0
  453. data/db/migrate/20150707204155_enable_acts_as_paranoid_on_calculators.rb +6 -0
  454. data/db/migrate/20150714154102_spree_payment_method_store_credits.rb +12 -0
  455. data/db/migrate/20150726141425_rename_has_and_belongs_to_associations_to_model_names.rb +18 -0
  456. data/db/migrate/20150727191614_spree_store_credit_types.rb +11 -0
  457. data/db/migrate/20150819154308_add_discontinued_to_products_and_variants.rb +68 -0
  458. data/db/migrate/20151220072838_remove_shipping_method_id_from_spree_orders.rb +13 -0
  459. data/db/migrate/20160207191757_add_id_column_to_earlier_habtm_tables.rb +16 -0
  460. data/db/migrate/20160219165458_add_indexes.rb +14 -0
  461. data/db/seeds.rb +5 -0
  462. data/lib/generators/spree/custom_user/custom_user_generator.rb +56 -0
  463. data/lib/generators/spree/custom_user/templates/authentication_helpers.rb.tt +36 -0
  464. data/lib/generators/spree/custom_user/templates/initializer.rb.tt +1 -0
  465. data/lib/generators/spree/custom_user/templates/migration.rb.tt +7 -0
  466. data/lib/generators/spree/dummy/dummy_generator.rb +140 -0
  467. data/lib/generators/spree/dummy/templates/initializers/custom_user.rb +1 -0
  468. data/lib/generators/spree/dummy/templates/initializers/devise.rb +3 -0
  469. data/lib/generators/spree/dummy/templates/rails/application.rb +10 -0
  470. data/lib/generators/spree/dummy/templates/rails/boot.rb +6 -0
  471. data/lib/generators/spree/dummy/templates/rails/database.yml +72 -0
  472. data/lib/generators/spree/dummy/templates/rails/routes.rb +2 -0
  473. data/lib/generators/spree/dummy/templates/rails/script/rails +6 -0
  474. data/lib/generators/spree/dummy/templates/rails/test.rb +35 -0
  475. data/lib/generators/spree/install/install_generator.rb +233 -0
  476. data/lib/generators/spree/install/templates/config/initializers/spree.rb +18 -0
  477. data/lib/generators/spree/install/templates/vendor/assets/javascripts/spree/backend/all.js +17 -0
  478. data/lib/generators/spree/install/templates/vendor/assets/javascripts/spree/frontend/all.js +17 -0
  479. data/lib/generators/spree/install/templates/vendor/assets/stylesheets/spree/backend/all.css +16 -0
  480. data/lib/generators/spree/install/templates/vendor/assets/stylesheets/spree/frontend/all.css +16 -0
  481. data/lib/spree/core/controller_helpers/auth.rb +84 -0
  482. data/lib/spree/core/controller_helpers/common.rb +74 -0
  483. data/lib/spree/core/controller_helpers/order.rb +103 -0
  484. data/lib/spree/core/controller_helpers/respond_with.rb +65 -0
  485. data/lib/spree/core/controller_helpers/search.rb +14 -0
  486. data/lib/spree/core/controller_helpers/store.rb +51 -0
  487. data/lib/spree/core/controller_helpers/strong_parameters.rb +42 -0
  488. data/lib/spree/core/delegate_belongs_to.rb +95 -0
  489. data/lib/spree/core/engine.rb +134 -0
  490. data/lib/spree/core/environment/calculators.rb +12 -0
  491. data/lib/spree/core/environment.rb +15 -0
  492. data/lib/spree/core/environment_extension.rb +25 -0
  493. data/lib/spree/core/importer/order.rb +284 -0
  494. data/lib/spree/core/importer/product.rb +62 -0
  495. data/lib/spree/core/importer.rb +9 -0
  496. data/lib/spree/core/number_generator.rb +52 -0
  497. data/lib/spree/core/product_duplicator.rb +74 -0
  498. data/lib/spree/core/product_filters.rb +194 -0
  499. data/lib/spree/core/routes.rb +46 -0
  500. data/lib/spree/core/search/base.rb +102 -0
  501. data/lib/spree/core/token_generator.rb +22 -0
  502. data/lib/spree/core/validators/email.rb +11 -0
  503. data/lib/spree/core/version.rb +5 -0
  504. data/lib/spree/core.rb +96 -0
  505. data/lib/spree/i18n/base.rb +17 -0
  506. data/lib/spree/i18n/initializer.rb +1 -0
  507. data/lib/spree/i18n.rb +37 -0
  508. data/lib/spree/localized_number.rb +22 -0
  509. data/lib/spree/migrations.rb +77 -0
  510. data/lib/spree/money.rb +61 -0
  511. data/lib/spree/permitted_attributes.rb +115 -0
  512. data/lib/spree/promo/environment.rb +9 -0
  513. data/lib/spree/responder.rb +45 -0
  514. data/lib/spree/testing_support/ability_helpers.rb +105 -0
  515. data/lib/spree/testing_support/authorization_helpers.rb +63 -0
  516. data/lib/spree/testing_support/bar_ability.rb +14 -0
  517. data/lib/spree/testing_support/caching.rb +47 -0
  518. data/lib/spree/testing_support/capybara_ext.rb +179 -0
  519. data/lib/spree/testing_support/common_rake.rb +39 -0
  520. data/lib/spree/testing_support/controller_requests.rb +93 -0
  521. data/lib/spree/testing_support/extension_rake.rb +10 -0
  522. data/lib/spree/testing_support/factories/address_factory.rb +22 -0
  523. data/lib/spree/testing_support/factories/adjustment_factory.rb +26 -0
  524. data/lib/spree/testing_support/factories/calculator_factory.rb +20 -0
  525. data/lib/spree/testing_support/factories/country_factory.rb +9 -0
  526. data/lib/spree/testing_support/factories/credit_card_factory.rb +10 -0
  527. data/lib/spree/testing_support/factories/customer_return_factory.rb +31 -0
  528. data/lib/spree/testing_support/factories/image_factory.rb +5 -0
  529. data/lib/spree/testing_support/factories/inventory_unit_factory.rb +10 -0
  530. data/lib/spree/testing_support/factories/line_item_factory.rb +12 -0
  531. data/lib/spree/testing_support/factories/options_factory.rb +13 -0
  532. data/lib/spree/testing_support/factories/order_factory.rb +91 -0
  533. data/lib/spree/testing_support/factories/payment_factory.rb +28 -0
  534. data/lib/spree/testing_support/factories/payment_method_factory.rb +23 -0
  535. data/lib/spree/testing_support/factories/price_factory.rb +7 -0
  536. data/lib/spree/testing_support/factories/product_factory.rb +36 -0
  537. data/lib/spree/testing_support/factories/product_option_type_factory.rb +6 -0
  538. data/lib/spree/testing_support/factories/product_property_factory.rb +6 -0
  539. data/lib/spree/testing_support/factories/promotion_category_factory.rb +6 -0
  540. data/lib/spree/testing_support/factories/promotion_factory.rb +52 -0
  541. data/lib/spree/testing_support/factories/promotion_rule_factory.rb +5 -0
  542. data/lib/spree/testing_support/factories/property_factory.rb +6 -0
  543. data/lib/spree/testing_support/factories/prototype_factory.rb +11 -0
  544. data/lib/spree/testing_support/factories/refund_factory.rb +22 -0
  545. data/lib/spree/testing_support/factories/reimbursement_factory.rb +16 -0
  546. data/lib/spree/testing_support/factories/reimbursement_type_factory.rb +7 -0
  547. data/lib/spree/testing_support/factories/return_authorization_factory.rb +20 -0
  548. data/lib/spree/testing_support/factories/return_item_factory.rb +14 -0
  549. data/lib/spree/testing_support/factories/role_factory.rb +9 -0
  550. data/lib/spree/testing_support/factories/shipment_factory.rb +23 -0
  551. data/lib/spree/testing_support/factories/shipping_category_factory.rb +5 -0
  552. data/lib/spree/testing_support/factories/shipping_method_factory.rb +21 -0
  553. data/lib/spree/testing_support/factories/state_factory.rb +13 -0
  554. data/lib/spree/testing_support/factories/stock_factory.rb +31 -0
  555. data/lib/spree/testing_support/factories/stock_item_factory.rb +9 -0
  556. data/lib/spree/testing_support/factories/stock_location_factory.rb +28 -0
  557. data/lib/spree/testing_support/factories/stock_movement_factory.rb +11 -0
  558. data/lib/spree/testing_support/factories/store_credit_category_factory.rb +9 -0
  559. data/lib/spree/testing_support/factories/store_credit_event_factory.rb +8 -0
  560. data/lib/spree/testing_support/factories/store_credit_factory.rb +17 -0
  561. data/lib/spree/testing_support/factories/store_credit_type_factory.rb +11 -0
  562. data/lib/spree/testing_support/factories/store_factory.rb +8 -0
  563. data/lib/spree/testing_support/factories/tax_category_factory.rb +6 -0
  564. data/lib/spree/testing_support/factories/tax_rate_factory.rb +8 -0
  565. data/lib/spree/testing_support/factories/taxon_factory.rb +7 -0
  566. data/lib/spree/testing_support/factories/taxonomy_factory.rb +5 -0
  567. data/lib/spree/testing_support/factories/tracker_factory.rb +6 -0
  568. data/lib/spree/testing_support/factories/user_factory.rb +22 -0
  569. data/lib/spree/testing_support/factories/variant_factory.rb +39 -0
  570. data/lib/spree/testing_support/factories/zone_factory.rb +25 -0
  571. data/lib/spree/testing_support/factories/zone_member_factory.rb +6 -0
  572. data/lib/spree/testing_support/factories.rb +19 -0
  573. data/lib/spree/testing_support/flash.rb +27 -0
  574. data/lib/spree/testing_support/i18n.rb +97 -0
  575. data/lib/spree/testing_support/microdata.rb +189 -0
  576. data/lib/spree/testing_support/order_walkthrough.rb +72 -0
  577. data/lib/spree/testing_support/preferences.rb +31 -0
  578. data/lib/spree/testing_support/url_helpers.rb +9 -0
  579. data/lib/spree_core.rb +1 -0
  580. data/lib/tasks/core.rake +169 -0
  581. data/lib/tasks/email.rake +10 -0
  582. data/lib/tasks/exchanges.rake +70 -0
  583. data/script/rails +9 -0
  584. data/spec/fixtures/microdata.html +22 -0
  585. data/spec/fixtures/microdata_itemref.html +15 -0
  586. data/spec/fixtures/microdata_no_itemscope.html +20 -0
  587. data/spec/fixtures/thinking-cat.jpg +0 -0
  588. data/spree_core.gemspec +47 -0
  589. data/vendor/assets/javascripts/jquery-migrate-1.0.0.js +498 -0
  590. data/vendor/assets/javascripts/jquery.payment.js +652 -0
  591. data/vendor/assets/javascripts/jsuri.js +2 -0
  592. data/vendor/assets/stylesheets/normalize.css +375 -0
  593. data/vendor/assets/stylesheets/skeleton.css +242 -0
  594. metadata +971 -0
data/config/routes.rb ADDED
@@ -0,0 +1,8 @@
1
+ Spree::Core::Engine.add_routes do
2
+ get '/forbidden', to: 'home#forbidden', as: :forbidden
3
+ # those routes are needed for mailers
4
+ root to: 'home#index'
5
+ resources :products, only: [:index, :show]
6
+ end
7
+
8
+ Spree::Core::Engine.draw_routes
@@ -0,0 +1,29 @@
1
+ require 'carmen'
2
+
3
+ connection = ActiveRecord::Base.connection
4
+ country_inserts = []
5
+
6
+ country_values = -> do
7
+ Carmen::Country.all.each do |country|
8
+ name = connection.quote country.name
9
+ iso3 = connection.quote country.alpha_3_code
10
+ iso = connection.quote country.alpha_2_code
11
+ iso_name = connection.quote country.name.upcase
12
+ numcode = connection.quote country.numeric_code
13
+ states_required = connection.quote country.subregions?
14
+
15
+ country_inserts << [name, iso3, iso, iso_name, numcode, states_required].join(", ")
16
+ end
17
+
18
+ country_inserts.join("), (")
19
+ end
20
+
21
+ columns = ["name", "iso3", "iso", "iso_name", "numcode", "states_required"]
22
+ columns = connection.adapter_name =~ /MySQL/i ? columns.join(", ") : "\"#{columns.join('", "')}\""
23
+
24
+ connection.execute <<-SQL
25
+ INSERT INTO spree_countries (#{columns})
26
+ VALUES (#{country_values.call});
27
+ SQL
28
+
29
+ Spree::Config[:default_country_id] = Spree::Country.find_by(iso: "US").id
@@ -0,0 +1 @@
1
+ Spree::RefundReason.find_or_create_by!(name: "Return processing", mutable: false)
@@ -0,0 +1,2 @@
1
+ Spree::Role.where(:name => "admin").first_or_create
2
+ Spree::Role.where(:name => "user").first_or_create
@@ -0,0 +1,28 @@
1
+ connection = ActiveRecord::Base.connection
2
+ state_inserts = []
3
+
4
+ state_values = -> do
5
+ Spree::Country.where(states_required: true).each do |country|
6
+ carmen_country = Carmen::Country.named(country.name)
7
+ carmen_country.subregions.each do |subregion|
8
+ name = connection.quote subregion.name
9
+ abbr = connection.quote subregion.code
10
+ country_id = connection.quote country.id
11
+
12
+ state_inserts << [name, abbr, country_id].join(", ")
13
+ end
14
+ end
15
+
16
+ state_inserts.map { |x| "(#{x})" }
17
+ end
18
+
19
+ columns = ["name", "abbr", "country_id"].map do |column|
20
+ connection.quote_column_name column
21
+ end.join(', ')
22
+
23
+ state_values.call.each_slice(500) do |state_values_batch|
24
+ connection.execute <<-SQL
25
+ INSERT INTO spree_states (#{columns})
26
+ VALUES #{state_values_batch.join(", ")};
27
+ SQL
28
+ end
@@ -0,0 +1,9 @@
1
+ # Possibly already created by a migration.
2
+ unless Spree::Store.where(code: 'spree').exists?
3
+ Spree::Store.new do |s|
4
+ s.code = 'spree'
5
+ s.name = 'Spree Demo Site'
6
+ s.url = 'example.com'
7
+ s.mail_from_address = 'spree@example.com'
8
+ end.save!
9
+ end
@@ -0,0 +1,11 @@
1
+ eu_vat = Spree::Zone.create!(name: "EU_VAT", description: "Countries that make up the EU VAT zone.", kind: 'country')
2
+ north_america = Spree::Zone.create!(name: "North America", description: "USA + Canada", kind: 'country')
3
+
4
+ %w(PL FI PT RO DE FR SK HU SI IE AT ES IT BE SE LV BG GB LT CY LU MT DK NL EE HR CZ GR).
5
+ each do |name|
6
+ eu_vat.zone_members.create!(zoneable: Spree::Country.find_by!(iso: name))
7
+ end
8
+
9
+ %w(US CA).each do |name|
10
+ north_america.zone_members.create!(zoneable: Spree::Country.find_by!(iso: name))
11
+ end
@@ -0,0 +1,481 @@
1
+ class SpreeOneTwo < ActiveRecord::Migration
2
+ def up
3
+ # This migration is just a compressed version of all the previous
4
+ # migrations for spree_core. Do not run it if one of the core tables
5
+ # already exists. Assume the best.
6
+ return if table_exists?(:spree_addresses)
7
+
8
+
9
+ create_table :spree_activators do |t|
10
+ t.string :description
11
+ t.datetime :expires_at
12
+ t.datetime :starts_at
13
+ t.string :name
14
+ t.string :event_name
15
+ t.string :type
16
+ t.integer :usage_limit
17
+ t.string :match_policy, :default => 'all'
18
+ t.string :code
19
+ t.boolean :advertise, :default => false
20
+ t.string :path
21
+ t.timestamps null: false
22
+ end
23
+
24
+ create_table :spree_addresses do |t|
25
+ t.string :firstname
26
+ t.string :lastname
27
+ t.string :address1
28
+ t.string :address2
29
+ t.string :city
30
+ t.string :zipcode
31
+ t.string :phone
32
+ t.string :state_name
33
+ t.string :alternative_phone
34
+ t.string :company
35
+ t.references :state
36
+ t.references :country
37
+ t.timestamps null: false
38
+ end
39
+
40
+ add_index :spree_addresses, [:firstname], :name => 'index_addresses_on_firstname'
41
+ add_index :spree_addresses, [:lastname], :name => 'index_addresses_on_lastname'
42
+
43
+ create_table :spree_adjustments do |t|
44
+ t.references :source, :polymorphic => true
45
+ t.references :adjustable, :polymorphic => true
46
+ t.references :originator, :polymorphic => true
47
+ t.decimal :amount, :precision => 8, :scale => 2
48
+ t.string :label
49
+ t.boolean :mandatory
50
+ t.boolean :locked
51
+ t.boolean :eligible, :default => true
52
+ t.timestamps null: false
53
+ end
54
+
55
+ add_index :spree_adjustments, [:adjustable_id], :name => 'index_adjustments_on_order_id'
56
+
57
+ create_table :spree_assets do |t|
58
+ t.references :viewable, :polymorphic => true
59
+ t.integer :attachment_width
60
+ t.integer :attachment_height
61
+ t.integer :attachment_file_size
62
+ t.integer :position
63
+ t.string :attachment_content_type
64
+ t.string :attachment_file_name
65
+ t.string :type, :limit => 75
66
+ t.datetime :attachment_updated_at
67
+ t.text :alt
68
+ end
69
+
70
+ add_index :spree_assets, [:viewable_id], :name => 'index_assets_on_viewable_id'
71
+ add_index :spree_assets, [:viewable_type, :type], :name => 'index_assets_on_viewable_type_and_type'
72
+
73
+ create_table :spree_calculators do |t|
74
+ t.string :type
75
+ t.references :calculable, :polymorphic => true
76
+ t.timestamps null: false
77
+ end
78
+
79
+ create_table :spree_configurations do |t|
80
+ t.string :name
81
+ t.string :type, :limit => 50
82
+ t.timestamps null: false
83
+ end
84
+
85
+ add_index :spree_configurations, [:name, :type], :name => 'index_spree_configurations_on_name_and_type'
86
+
87
+ create_table :spree_countries do |t|
88
+ t.string :iso_name
89
+ t.string :iso
90
+ t.string :iso3
91
+ t.string :name
92
+ t.integer :numcode
93
+ end
94
+
95
+ create_table :spree_credit_cards do |t|
96
+ t.string :month
97
+ t.string :year
98
+ t.string :cc_type
99
+ t.string :last_digits
100
+ t.string :first_name
101
+ t.string :last_name
102
+ t.string :start_month
103
+ t.string :start_year
104
+ t.string :issue_number
105
+ t.references :address
106
+ t.string :gateway_customer_profile_id
107
+ t.string :gateway_payment_profile_id
108
+ t.timestamps null: false
109
+ end
110
+
111
+ create_table :spree_gateways do |t|
112
+ t.string :type
113
+ t.string :name
114
+ t.text :description
115
+ t.boolean :active, :default => true
116
+ t.string :environment, :default => 'development'
117
+ t.string :server, :default => 'test'
118
+ t.boolean :test_mode, :default => true
119
+ t.timestamps null: false
120
+ end
121
+
122
+ create_table :spree_inventory_units do |t|
123
+ t.integer :lock_version, :default => 0
124
+ t.string :state
125
+ t.references :variant
126
+ t.references :order
127
+ t.references :shipment
128
+ t.references :return_authorization
129
+ t.timestamps null: false
130
+ end
131
+
132
+ add_index :spree_inventory_units, [:order_id], :name => 'index_inventory_units_on_order_id'
133
+ add_index :spree_inventory_units, [:shipment_id], :name => 'index_inventory_units_on_shipment_id'
134
+ add_index :spree_inventory_units, [:variant_id], :name => 'index_inventory_units_on_variant_id'
135
+
136
+ create_table :spree_line_items do |t|
137
+ t.references :variant
138
+ t.references :order
139
+ t.integer :quantity, :null => false
140
+ t.decimal :price, :precision => 8, :scale => 2, :null => false
141
+ t.timestamps null: false
142
+ end
143
+
144
+ add_index :spree_line_items, [:order_id], :name => 'index_spree_line_items_on_order_id'
145
+ add_index :spree_line_items, [:variant_id], :name => 'index_spree_line_items_on_variant_id'
146
+
147
+ create_table :spree_log_entries do |t|
148
+ t.references :source, :polymorphic => true
149
+ t.text :details
150
+ t.timestamps null: false
151
+ end
152
+
153
+ create_table :spree_mail_methods do |t|
154
+ t.string :environment
155
+ t.boolean :active, :default => true
156
+ t.timestamps null: false
157
+ end
158
+
159
+ create_table :spree_option_types do |t|
160
+ t.string :name, :limit => 100
161
+ t.string :presentation, :limit => 100
162
+ t.integer :position, :default => 0, :null => false
163
+ t.timestamps null: false
164
+ end
165
+
166
+ create_table :spree_option_types_prototypes, :id => false do |t|
167
+ t.references :prototype
168
+ t.references :option_type
169
+ end
170
+
171
+ create_table :spree_option_values do |t|
172
+ t.integer :position
173
+ t.string :name
174
+ t.string :presentation
175
+ t.references :option_type
176
+ t.timestamps null: false
177
+ end
178
+
179
+ create_table :spree_option_values_variants, :id => false do |t|
180
+ t.references :variant
181
+ t.references :option_value
182
+ end
183
+
184
+ add_index :spree_option_values_variants, [:variant_id, :option_value_id], :name => 'index_option_values_variants_on_variant_id_and_option_value_id'
185
+ add_index :spree_option_values_variants, [:variant_id], :name => 'index_spree_option_values_variants_on_variant_id'
186
+
187
+ create_table :spree_orders do |t|
188
+ t.string :number, :limit => 15
189
+ t.decimal :item_total, :precision => 8, :scale => 2, :default => 0.0, :null => false
190
+ t.decimal :total, :precision => 8, :scale => 2, :default => 0.0, :null => false
191
+ t.string :state
192
+ t.decimal :adjustment_total, :precision => 8, :scale => 2, :default => 0.0, :null => false
193
+ t.references :user
194
+ t.datetime :completed_at
195
+ t.references :bill_address
196
+ t.references :ship_address
197
+ t.decimal :payment_total, :precision => 8, :scale => 2, :default => 0.0
198
+ t.references :shipping_method
199
+ t.string :shipment_state
200
+ t.string :payment_state
201
+ t.string :email
202
+ t.text :special_instructions
203
+ t.timestamps null: false
204
+ end
205
+
206
+ add_index :spree_orders, [:number], :name => 'index_spree_orders_on_number'
207
+
208
+ create_table :spree_payment_methods do |t|
209
+ t.string :type
210
+ t.string :name
211
+ t.text :description
212
+ t.boolean :active, :default => true
213
+ t.string :environment, :default => 'development'
214
+ t.datetime :deleted_at
215
+ t.string :display_on
216
+ t.timestamps null: false
217
+ end
218
+
219
+ create_table :spree_payments do |t|
220
+ t.decimal :amount, :precision => 8, :scale => 2, :default => 0.0, :null => false
221
+ t.references :order
222
+ t.references :source, :polymorphic => true
223
+ t.references :payment_method
224
+ t.string :state
225
+ t.string :response_code
226
+ t.string :avs_response
227
+ t.timestamps null: false
228
+ end
229
+
230
+ create_table :spree_preferences do |t|
231
+ t.string :name, :limit => 100
232
+ t.references :owner, :polymorphic => true
233
+ t.text :value
234
+ t.string :key
235
+ t.string :value_type
236
+ t.timestamps null: false
237
+ end
238
+
239
+ add_index :spree_preferences, [:key], :name => 'index_spree_preferences_on_key', :unique => true
240
+
241
+ create_table :spree_product_option_types do |t|
242
+ t.integer :position
243
+ t.references :product
244
+ t.references :option_type
245
+ t.timestamps null: false
246
+ end
247
+
248
+ create_table :spree_product_properties do |t|
249
+ t.string :value
250
+ t.references :product
251
+ t.references :property
252
+ t.timestamps null: false
253
+ end
254
+
255
+ add_index :spree_product_properties, [:product_id], :name => 'index_product_properties_on_product_id'
256
+
257
+ create_table :spree_products do |t|
258
+ t.string :name, :default => '', :null => false
259
+ t.text :description
260
+ t.datetime :available_on
261
+ t.datetime :deleted_at
262
+ t.string :permalink
263
+ t.string :meta_description
264
+ t.string :meta_keywords
265
+ t.references :tax_category
266
+ t.references :shipping_category
267
+ t.integer :count_on_hand, :default => 0, :null => false
268
+ t.timestamps null: false
269
+ end
270
+
271
+ add_index :spree_products, [:available_on], :name => 'index_spree_products_on_available_on'
272
+ add_index :spree_products, [:deleted_at], :name => 'index_spree_products_on_deleted_at'
273
+ add_index :spree_products, [:name], :name => 'index_spree_products_on_name'
274
+ add_index :spree_products, [:permalink], :name => 'index_spree_products_on_permalink'
275
+
276
+ create_table :spree_products_taxons, :id => false do |t|
277
+ t.references :product
278
+ t.references :taxon
279
+ end
280
+
281
+ add_index :spree_products_taxons, [:product_id], :name => 'index_spree_products_taxons_on_product_id'
282
+ add_index :spree_products_taxons, [:taxon_id], :name => 'index_spree_products_taxons_on_taxon_id'
283
+
284
+ create_table :spree_properties do |t|
285
+ t.string :name
286
+ t.string :presentation, :null => false
287
+ t.timestamps null: false
288
+ end
289
+
290
+ create_table :spree_properties_prototypes, :id => false do |t|
291
+ t.references :prototype
292
+ t.references :property
293
+ end
294
+
295
+ create_table :spree_prototypes do |t|
296
+ t.string :name
297
+ t.timestamps null: false
298
+ end
299
+
300
+ create_table :spree_return_authorizations do |t|
301
+ t.string :number
302
+ t.string :state
303
+ t.decimal :amount, :precision => 8, :scale => 2, :default => 0.0, :null => false
304
+ t.references :order
305
+ t.text :reason
306
+ t.timestamps null: false
307
+ end
308
+
309
+ create_table :spree_roles do |t|
310
+ t.string :name
311
+ end
312
+
313
+ create_table :spree_roles_users, :id => false do |t|
314
+ t.references :role
315
+ t.references :user
316
+ end
317
+
318
+ add_index :spree_roles_users, [:role_id], :name => 'index_spree_roles_users_on_role_id'
319
+ add_index :spree_roles_users, [:user_id], :name => 'index_spree_roles_users_on_user_id'
320
+
321
+ create_table :spree_shipments do |t|
322
+ t.string :tracking
323
+ t.string :number
324
+ t.decimal :cost, :precision => 8, :scale => 2
325
+ t.datetime :shipped_at
326
+ t.references :order
327
+ t.references :shipping_method
328
+ t.references :address
329
+ t.string :state
330
+ t.timestamps null: false
331
+ end
332
+
333
+ add_index :spree_shipments, [:number], :name => 'index_shipments_on_number'
334
+
335
+ create_table :spree_shipping_categories do |t|
336
+ t.string :name
337
+ t.timestamps null: false
338
+ end
339
+
340
+ create_table :spree_shipping_methods do |t|
341
+ t.string :name
342
+ t.references :zone
343
+ t.string :display_on
344
+ t.references :shipping_category
345
+ t.boolean :match_none
346
+ t.boolean :match_all
347
+ t.boolean :match_one
348
+ t.datetime :deleted_at
349
+ t.timestamps null: false
350
+ end
351
+
352
+ create_table :spree_state_changes do |t|
353
+ t.string :name
354
+ t.string :previous_state
355
+ t.references :stateful
356
+ t.references :user
357
+ t.string :stateful_type
358
+ t.string :next_state
359
+ t.timestamps null: false
360
+ end
361
+
362
+ create_table :spree_states do |t|
363
+ t.string :name
364
+ t.string :abbr
365
+ t.references :country
366
+ end
367
+
368
+ create_table :spree_tax_categories do |t|
369
+ t.string :name
370
+ t.string :description
371
+ t.boolean :is_default, :default => false
372
+ t.datetime :deleted_at
373
+ t.timestamps null: false
374
+ end
375
+
376
+ create_table :spree_tax_rates do |t|
377
+ t.decimal :amount, :precision => 8, :scale => 5
378
+ t.references :zone
379
+ t.references :tax_category
380
+ t.boolean :included_in_price, :default => false
381
+ t.timestamps null: false
382
+ end
383
+
384
+ create_table :spree_taxonomies do |t|
385
+ t.string :name, :null => false
386
+ t.timestamps null: false
387
+ end
388
+
389
+ create_table :spree_taxons do |t|
390
+ t.references :parent
391
+ t.integer :position, :default => 0
392
+ t.string :name, :null => false
393
+ t.string :permalink
394
+ t.references :taxonomy
395
+ t.integer :lft
396
+ t.integer :rgt
397
+ t.string :icon_file_name
398
+ t.string :icon_content_type
399
+ t.integer :icon_file_size
400
+ t.datetime :icon_updated_at
401
+ t.text :description
402
+ t.timestamps null: false
403
+ end
404
+
405
+ add_index :spree_taxons, [:parent_id], :name => 'index_taxons_on_parent_id'
406
+ add_index :spree_taxons, [:permalink], :name => 'index_taxons_on_permalink'
407
+ add_index :spree_taxons, [:taxonomy_id], :name => 'index_taxons_on_taxonomy_id'
408
+
409
+ create_table :spree_tokenized_permissions, :force => true do |t|
410
+ t.references :permissable, :polymorphic => true
411
+ t.string :token
412
+ t.timestamps null: false
413
+ end
414
+
415
+ add_index :spree_tokenized_permissions, [:permissable_id, :permissable_type], :name => 'index_tokenized_name_and_type'
416
+
417
+ create_table :spree_trackers do |t|
418
+ t.string :environment
419
+ t.string :analytics_id
420
+ t.boolean :active, :default => true
421
+ t.timestamps null: false
422
+ end
423
+
424
+ create_table :spree_users do |t|
425
+ t.string :encrypted_password, :limit => 128
426
+ t.string :password_salt, :limit => 128
427
+ t.string :email
428
+ t.string :remember_token
429
+ t.string :persistence_token
430
+ t.string :reset_password_token
431
+ t.string :perishable_token
432
+ t.integer :sign_in_count, :default => 0, :null => false
433
+ t.integer :failed_attempts, :default => 0, :null => false
434
+ t.datetime :last_request_at
435
+ t.datetime :current_sign_in_at
436
+ t.datetime :last_sign_in_at
437
+ t.string :current_sign_in_ip
438
+ t.string :last_sign_in_ip
439
+ t.string :login
440
+ t.references :ship_address
441
+ t.references :bill_address
442
+ t.string :authentication_token
443
+ t.string :unlock_token
444
+ t.datetime :locked_at
445
+ t.datetime :remember_created_at
446
+ t.datetime :reset_password_sent_at
447
+ t.timestamps null: false
448
+ end
449
+
450
+ create_table :spree_variants do |t|
451
+ t.string :sku, :default => '', :null => false
452
+ t.decimal :price, :precision => 8, :scale => 2, :null => false
453
+ t.decimal :weight, :precision => 8, :scale => 2
454
+ t.decimal :height, :precision => 8, :scale => 2
455
+ t.decimal :width, :precision => 8, :scale => 2
456
+ t.decimal :depth, :precision => 8, :scale => 2
457
+ t.datetime :deleted_at
458
+ t.boolean :is_master, :default => false
459
+ t.references :product
460
+ t.integer :count_on_hand, :default => 0, :null => false
461
+ t.decimal :cost_price, :precision => 8, :scale => 2
462
+ t.integer :position
463
+ end
464
+
465
+ add_index :spree_variants, [:product_id], :name => 'index_spree_variants_on_product_id'
466
+
467
+ create_table :spree_zone_members do |t|
468
+ t.references :zoneable, :polymorphic => true
469
+ t.references :zone
470
+ t.timestamps null: false
471
+ end
472
+
473
+ create_table :spree_zones do |t|
474
+ t.string :name
475
+ t.string :description
476
+ t.boolean :default_tax, :default => false
477
+ t.integer :zone_members_count, :default => 0
478
+ t.timestamps null: false
479
+ end
480
+ end
481
+ end
@@ -0,0 +1,45 @@
1
+ class SpreePromoOneTwo < ActiveRecord::Migration
2
+ def up
3
+ # This migration is just a compressed migration for all previous versions of spree_promo
4
+ return if table_exists?(:spree_products_promotion_rules)
5
+
6
+ create_table :spree_products_promotion_rules, :id => false, :force => true do |t|
7
+ t.references :product
8
+ t.references :promotion_rule
9
+ end
10
+
11
+ add_index :spree_products_promotion_rules, [:product_id], :name => 'index_products_promotion_rules_on_product_id'
12
+ add_index :spree_products_promotion_rules, [:promotion_rule_id], :name => 'index_products_promotion_rules_on_promotion_rule_id'
13
+
14
+ create_table :spree_promotion_action_line_items, :force => true do |t|
15
+ t.references :promotion_action
16
+ t.references :variant
17
+ t.integer :quantity, :default => 1
18
+ end
19
+
20
+ create_table :spree_promotion_actions, :force => true do |t|
21
+ t.references :activator
22
+ t.integer :position
23
+ t.string :type
24
+ end
25
+
26
+ create_table :spree_promotion_rules, :force => true do |t|
27
+ t.references :activator
28
+ t.references :user
29
+ t.references :product_group
30
+ t.string :type
31
+ t.timestamps null: false
32
+ end
33
+
34
+ add_index :spree_promotion_rules, [:product_group_id], :name => 'index_promotion_rules_on_product_group_id'
35
+ add_index :spree_promotion_rules, [:user_id], :name => 'index_promotion_rules_on_user_id'
36
+
37
+ create_table :spree_promotion_rules_users, :id => false, :force => true do |t|
38
+ t.references :user
39
+ t.references :promotion_rule
40
+ end
41
+
42
+ add_index :spree_promotion_rules_users, [:promotion_rule_id], :name => 'index_promotion_rules_users_on_promotion_rule_id'
43
+ add_index :spree_promotion_rules_users, [:user_id], :name => 'index_promotion_rules_users_on_user_id'
44
+ end
45
+ end
@@ -0,0 +1,5 @@
1
+ class AddTaxRateLabel < ActiveRecord::Migration
2
+ def change
3
+ add_column :spree_tax_rates, :name, :string
4
+ end
5
+ end
@@ -0,0 +1,5 @@
1
+ class AddToggleTaxRateDisplay < ActiveRecord::Migration
2
+ def change
3
+ add_column :spree_tax_rates, :show_rate_in_label, :boolean, :default => true
4
+ end
5
+ end
@@ -0,0 +1,8 @@
1
+ class RemoveUnusedPreferenceColumns < ActiveRecord::Migration
2
+ def change
3
+ # Columns have already been removed if the application was upgraded from an older version, but must be removed from new apps.
4
+ remove_column :spree_preferences, :name if ActiveRecord::Base.connection.column_exists?(:spree_preferences, :name)
5
+ remove_column :spree_preferences, :owner_id if ActiveRecord::Base.connection.column_exists?(:spree_preferences, :owner_id)
6
+ remove_column :spree_preferences, :owner_type if ActiveRecord::Base.connection.column_exists?(:spree_preferences, :owner_type)
7
+ end
8
+ end
@@ -0,0 +1,5 @@
1
+ class AddLockVersionToVariant < ActiveRecord::Migration
2
+ def change
3
+ add_column :spree_variants, :lock_version, :integer, :default => 0
4
+ end
5
+ end
@@ -0,0 +1,5 @@
1
+ class AddStatesRequiredToCountries < ActiveRecord::Migration
2
+ def change
3
+ add_column :spree_countries, :states_required, :boolean,:default => true
4
+ end
5
+ end
@@ -0,0 +1,6 @@
1
+ class AddOnDemandToProductAndVariant < ActiveRecord::Migration
2
+ def change
3
+ add_column :spree_products, :on_demand, :boolean, :default => false
4
+ add_column :spree_variants, :on_demand, :boolean, :default => false
5
+ end
6
+ end
@@ -0,0 +1,11 @@
1
+ class RemoveNotNullConstraintFromProductsOnHand < ActiveRecord::Migration
2
+ def up
3
+ change_column :spree_products, :count_on_hand, :integer, :null => true
4
+ change_column :spree_variants, :count_on_hand, :integer, :null => true
5
+ end
6
+
7
+ def down
8
+ change_column :spree_products, :count_on_hand, :integer, :null => false
9
+ change_column :spree_variants, :count_on_hand, :integer, :null => false
10
+ end
11
+ end