piggybak_free_shipping_by_product 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (109) hide show
  1. checksums.yaml +7 -0
  2. data/MIT-LICENSE +20 -0
  3. data/README.rdoc +3 -0
  4. data/Rakefile +32 -0
  5. data/lib/piggybak_free_shipping_by_product.rb +6 -0
  6. data/lib/piggybak_free_shipping_by_product/engine.rb +13 -0
  7. data/lib/piggybak_free_shipping_by_product/free_shipping_by_product.rb +25 -0
  8. data/lib/piggybak_free_shipping_by_product/piggybak_orders_controller_decorator.rb +27 -0
  9. data/lib/piggybak_free_shipping_by_product/version.rb +3 -0
  10. data/test/dummy/README.rdoc +28 -0
  11. data/test/dummy/Rakefile +6 -0
  12. data/test/dummy/app/assets/javascripts/application.js +13 -0
  13. data/test/dummy/app/assets/stylesheets/application.css +15 -0
  14. data/test/dummy/app/controllers/application_controller.rb +5 -0
  15. data/test/dummy/app/helpers/application_helper.rb +2 -0
  16. data/test/dummy/app/models/image.rb +3 -0
  17. data/test/dummy/app/models/user.rb +4 -0
  18. data/test/dummy/app/views/layouts/application.html.erb +14 -0
  19. data/test/dummy/app/views/piggybak/orders/_user_details.html.erb +11 -0
  20. data/test/dummy/bin/bundle +3 -0
  21. data/test/dummy/bin/rails +4 -0
  22. data/test/dummy/bin/rake +4 -0
  23. data/test/dummy/config.ru +4 -0
  24. data/test/dummy/config/application.rb +23 -0
  25. data/test/dummy/config/boot.rb +5 -0
  26. data/test/dummy/config/database.yml +25 -0
  27. data/test/dummy/config/environment.rb +8 -0
  28. data/test/dummy/config/environments/development.rb +37 -0
  29. data/test/dummy/config/environments/production.rb +82 -0
  30. data/test/dummy/config/environments/test.rb +39 -0
  31. data/test/dummy/config/initializers/assets.rb +8 -0
  32. data/test/dummy/config/initializers/backtrace_silencers.rb +7 -0
  33. data/test/dummy/config/initializers/cookies_serializer.rb +3 -0
  34. data/test/dummy/config/initializers/devise.rb +256 -0
  35. data/test/dummy/config/initializers/filter_parameter_logging.rb +4 -0
  36. data/test/dummy/config/initializers/inflections.rb +16 -0
  37. data/test/dummy/config/initializers/mime_types.rb +4 -0
  38. data/test/dummy/config/initializers/session_store.rb +3 -0
  39. data/test/dummy/config/initializers/wrap_parameters.rb +14 -0
  40. data/test/dummy/config/locales/devise.en.yml +59 -0
  41. data/test/dummy/config/locales/en.yml +23 -0
  42. data/test/dummy/config/routes.rb +7 -0
  43. data/test/dummy/config/secrets.yml +22 -0
  44. data/test/dummy/db/migrate/20111221175014_create_roles_users.rb +8 -0
  45. data/test/dummy/db/migrate/20111231040339_devise_create_users.rb +33 -0
  46. data/test/dummy/db/migrate/20111231040340_create_rails_admin_histories_table.rb +18 -0
  47. data/test/dummy/db/migrate/20111231040354_create_images.rb +9 -0
  48. data/test/dummy/db/migrate/20111231041048_create_roles.rb +7 -0
  49. data/test/dummy/db/migrate/20111231052811_create_pages.rb +11 -0
  50. data/test/dummy/db/migrate/20111231055412_acts_as_taggable_on_migration.rb +30 -0
  51. data/test/dummy/db/migrate/20120102162414_create_countries.rb +10 -0
  52. data/test/dummy/db/migrate/20120102162415_create_states.rb +9 -0
  53. data/test/dummy/db/migrate/20120103020918_create_orders.rb +21 -0
  54. data/test/dummy/db/migrate/20120103020919_create_addresses.rb +15 -0
  55. data/test/dummy/db/migrate/20120103020920_create_line_items.rb +10 -0
  56. data/test/dummy/db/migrate/20120103020921_create_variants.rb +14 -0
  57. data/test/dummy/db/migrate/20120103020922_create_shipping_methods.rb +9 -0
  58. data/test/dummy/db/migrate/20120103020923_create_payment_methods.rb +11 -0
  59. data/test/dummy/db/migrate/20120103020924_create_payments.rb +19 -0
  60. data/test/dummy/db/migrate/20120103020925_create_shipments.rb +12 -0
  61. data/test/dummy/db/migrate/20120103020926_create_shipping_method_values.rb +9 -0
  62. data/test/dummy/db/migrate/20120103020927_create_payment_method_values.rb +9 -0
  63. data/test/dummy/db/migrate/20120103020928_create_tax_methods.rb +9 -0
  64. data/test/dummy/db/migrate/20120103020930_create_tax_method_values.rb +9 -0
  65. data/test/dummy/db/migrate/20120104020930_populate_countries_and_states.rb +30 -0
  66. data/test/dummy/db/migrate/20120106010846_create_credits.rb +14 -0
  67. data/test/dummy/db/migrate/20120106034634_create_posts.rb +14 -0
  68. data/test/dummy/db/migrate/20120107140039_add_active_to_countries.rb +11 -0
  69. data/test/dummy/db/migrate/20120111195717_drop_cc_fields.rb +11 -0
  70. data/test/dummy/db/migrate/20120627151032_add_price_to_line_item.piggybak_engine.rb +14 -0
  71. data/test/dummy/db/migrate/20120627175044_add_description_to_line_item.piggybak_engine.rb +14 -0
  72. data/test/dummy/db/migrate/20120829140525_add_masked_credit_card_numbers.piggybak_engine.rb +10 -0
  73. data/test/dummy/db/migrate/20120829140526_order_debugging.piggybak_engine.rb +12 -0
  74. data/test/dummy/db/migrate/20120829140527_create_order_notes.piggybak_engine.rb +11 -0
  75. data/test/dummy/db/migrate/20120829140528_modify_credits.piggybak_engine.rb +7 -0
  76. data/test/dummy/db/migrate/20120829140529_add_to_be_cancelled_to_orders.piggybak_engine.rb +6 -0
  77. data/test/dummy/db/migrate/20121008195802_rename_variants_to_sellables.piggybak_engine.rb +12 -0
  78. data/test/dummy/db/migrate/20121017151401_line_item_rearchitecture.piggybak_engine.rb +105 -0
  79. data/test/dummy/db/migrate/20121022161614_fix_sellable_price_scale.rb +9 -0
  80. data/test/dummy/db/migrate/20121022164235_convert_all_decimal_fields.rb +15 -0
  81. data/test/dummy/db/migrate/20121022202530_create_new_variants.piggybak_variants.rb +14 -0
  82. data/test/dummy/db/migrate/20121108204215_drop_sort_from_line_items.piggybak_engine.rb +10 -0
  83. data/test/dummy/db/migrate/20130516201046_change_user_agent_type.piggybak_engine.rb +10 -0
  84. data/test/dummy/db/migrate/20130516201047_add_confirmation_sent_to_orders.piggybak_engine.rb +6 -0
  85. data/test/dummy/db/migrate/20140325133841_upgrade_piggybak_tables.rb +19 -0
  86. data/test/dummy/db/schema.rb +245 -0
  87. data/test/dummy/db/test.sqlite3 +0 -0
  88. data/test/dummy/public/404.html +67 -0
  89. data/test/dummy/public/422.html +67 -0
  90. data/test/dummy/public/500.html +66 -0
  91. data/test/dummy/public/favicon.ico +0 -0
  92. data/test/dummy/test.sqlite3 +0 -0
  93. data/test/dummy/test/fixtures/images.yml +9 -0
  94. data/test/dummy/test/fixtures/piggybak_orders.yml +0 -0
  95. data/test/dummy/test/fixtures/piggybak_payment_methods.yml +5 -0
  96. data/test/dummy/test/fixtures/piggybak_sellables.yml +15 -0
  97. data/test/dummy/test/fixtures/piggybak_shipping_method_values.yml +17 -0
  98. data/test/dummy/test/fixtures/piggybak_shipping_methods.yml +17 -0
  99. data/test/dummy/tmp/cache/assets/test/sprockets/13fe41fee1fe35b49d145bcc06610705 +0 -0
  100. data/test/dummy/tmp/cache/assets/test/sprockets/204f3ed344cab052c25904aa340641c9 +0 -0
  101. data/test/dummy/tmp/cache/assets/test/sprockets/2f5173deea6c795b8fdde723bb4b63af +0 -0
  102. data/test/dummy/tmp/cache/assets/test/sprockets/3522e8667e0d6e452a01c6b40e7efa4d +0 -0
  103. data/test/dummy/tmp/cache/assets/test/sprockets/357970feca3ac29060c1e3861e2c0953 +0 -0
  104. data/test/dummy/tmp/cache/assets/test/sprockets/cffd775d018f68ce5dba1ee0d951a994 +0 -0
  105. data/test/dummy/tmp/cache/assets/test/sprockets/d771ace226fc8215a3572e0aa35bb0d6 +0 -0
  106. data/test/dummy/tmp/cache/assets/test/sprockets/f7cbd26ba1d28d48de824f0e94586655 +0 -0
  107. data/test/piggybak_free_shipping_by_product_test.rb +84 -0
  108. data/test/test_helper.rb +15 -0
  109. metadata +322 -0
@@ -0,0 +1,14 @@
1
+ # This migration comes from piggybak_engine (originally 20120627144001)
2
+ class AddPriceToLineItem < ActiveRecord::Migration
3
+ def up
4
+ add_column :line_items, :price, :decimal, :null => false, :default => 0.0
5
+
6
+ #Piggybak::LineItem.all.each do |line_item|
7
+ # line_item.update_attribute(:price, line_item.total/line_item.quantity)
8
+ #end
9
+ end
10
+
11
+ def down
12
+ remove_column :line_items, :price
13
+ end
14
+ end
@@ -0,0 +1,14 @@
1
+ # This migration comes from piggybak_engine (originally 20120627173754)
2
+ class AddDescriptionToLineItem < ActiveRecord::Migration
3
+ def up
4
+ add_column :line_items, :description, :string, :null => false, :default => ''
5
+
6
+ #Piggybak::LineItem.all.each do |line_item|
7
+ # line_item.update_attribute(:description, line_item.variant.description)
8
+ #end
9
+ end
10
+
11
+ def down
12
+ remove_column :line_items, :description
13
+ end
14
+ end
@@ -0,0 +1,10 @@
1
+ # This migration comes from piggybak_engine (originally 20120716191225)
2
+ class AddMaskedCreditCardNumbers < ActiveRecord::Migration
3
+ def up
4
+ add_column :payments, :masked_number, :string, :nil => false
5
+ end
6
+
7
+ def down
8
+ remove_column :payments, :masked_number
9
+ end
10
+ end
@@ -0,0 +1,12 @@
1
+ # This migration comes from piggybak_engine (originally 20120716195806)
2
+ class OrderDebugging < ActiveRecord::Migration
3
+ def up
4
+ add_column :orders, :ip_address, :string, :nil => false
5
+ add_column :orders, :user_agent, :string, :nil => false
6
+ end
7
+
8
+ def down
9
+ remove_column :orders, :ip_address
10
+ remove_column :orders, :user_agent
11
+ end
12
+ end
@@ -0,0 +1,11 @@
1
+ # This migration comes from piggybak_engine (originally 20120717022155)
2
+ class CreateOrderNotes < ActiveRecord::Migration
3
+ def change
4
+ create_table :order_notes do |t|
5
+ t.references :order, :null => false
6
+ t.references :user, :null => false
7
+ t.text :note
8
+ t.timestamps
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,7 @@
1
+ # This migration comes from piggybak_engine (originally 20120718142841)
2
+ class ModifyCredits < ActiveRecord::Migration
3
+ def change
4
+ rename_table :credits, :adjustments
5
+ add_column :adjustments, :note, :text
6
+ end
7
+ end
@@ -0,0 +1,6 @@
1
+ # This migration comes from piggybak_engine (originally 20120815205207)
2
+ class AddToBeCancelledToOrders < ActiveRecord::Migration
3
+ def change
4
+ add_column :orders, :to_be_cancelled, :boolean, :nil => false, :default => false
5
+ end
6
+ end
@@ -0,0 +1,12 @@
1
+ # This migration comes from piggybak_engine (originally 20121008160425)
2
+ class RenameVariantsToSellables < ActiveRecord::Migration
3
+ def up
4
+ rename_table :variants, :sellables
5
+ rename_column :line_items, :variant_id, :sellable_id
6
+ end
7
+
8
+ def down
9
+ rename_table :sellables, :variants
10
+ rename_column :line_items, :sellable_id, :variant_id
11
+ end
12
+ end
@@ -0,0 +1,105 @@
1
+ class LineItemRearchitecture < ActiveRecord::Migration
2
+ def up
3
+ Piggybak::Shipment.class_eval do
4
+ self.table_name = 'shipments'
5
+ end
6
+ Piggybak::Payment.class_eval do
7
+ self.table_name = 'payments'
8
+ end
9
+ Piggybak::Adjustment.class_eval do
10
+ self.table_name = 'adjustments'
11
+ end
12
+ #Piggybak::Order.class_eval do
13
+ # self.table_name = 'orders'
14
+ #end
15
+
16
+ add_column :line_items, :line_item_type, :string, :null => false, :default => "sellable"
17
+ rename_column :line_items, :price, :unit_price
18
+ rename_column :line_items, :total, :price
19
+ change_column :line_items, :sellable_id, :integer, :null => true
20
+ add_column :line_items, :sort, :integer, :null => false, :default => 0
21
+ change_table(:line_items) do |t|
22
+ t.timestamps
23
+ end
24
+
25
+ add_column :shipments, :line_item_id, :integer
26
+ add_column :payments, :line_item_id, :integer
27
+
28
+ [Piggybak::Shipment, Piggybak::Payment, Piggybak::Adjustment].each do |klass|
29
+ klass.all.each do |item|
30
+ description = ''
31
+ if klass == Piggybak::Shipment
32
+ description = item.shipping_method.description
33
+ elsif klass == Piggybak::Payment
34
+ description = "Payment"
35
+ elsif klass == Piggybak::Adjustment
36
+ description = item.note || "Adjustment"
37
+ end
38
+ li = Piggybak::LineItem.new({ :line_item_type => klass.to_s.demodulize.downcase,
39
+ :price => 0.00,
40
+ :description => description,
41
+ :quantity => 1 })
42
+ b = item.attributes["order_id"]
43
+ li.order_id = b
44
+ li.save
45
+
46
+ if [Piggybak::Shipment, Piggybak::Payment].include?(klass)
47
+ item.update_attribute(:line_item_id, li.id)
48
+ end
49
+
50
+ li.update_attribute(:price, item.total)
51
+ end
52
+ end
53
+
54
+ remove_column :shipments, :total
55
+ remove_column :payments, :total
56
+ remove_column :adjustments, :total
57
+ remove_column :shipments, :order_id
58
+ remove_column :payments, :order_id
59
+ remove_column :adjustments, :order_id
60
+
61
+ remove_column :orders, :tax_charge
62
+ end
63
+
64
+ def down
65
+ add_column :shipments, :total, :decimal, :null => false, :default => 0.0
66
+ add_column :payments, :total, :decimal, :null => false, :default => 0.0
67
+ add_column :adjustments, :total, :decimal
68
+ add_column :shipments, :order_id, :integer, :null => false, :default => 0
69
+ add_column :payments, :order_id, :integer, :null => false, :default => 0
70
+ add_column :adjustments, :order_id, :integer, :null => false, :default => 0
71
+
72
+ add_column :orders, :tax_charge, :decimal, :null => false, :default => 0.0
73
+
74
+ to_delete = []
75
+ Piggybak::LineItem.class_eval do
76
+ self.table_name = 'line_items'
77
+ end
78
+ Piggybak::LineItem.all.each do |line_item|
79
+ if line_item.line_item_type == "payment"
80
+ line_item.payment.update_attributes({ :order_id => line_item.order_id, :total => line_item.price })
81
+ to_delete << line_item
82
+ elsif line_item.line_item_type == "shipment"
83
+ line_item.shipment.update_attributes({ :order_id => line_item.order_id, :total => line_item.price })
84
+ to_delete << line_item
85
+ elsif line_item.line_item_type == "adjustment"
86
+ to_delete << line_item
87
+ line_item.adjustment.update_attributes({ :order_id => line_item.order_id, :total => line_item.price })
88
+ elsif line_item.line_item_type == "tax"
89
+ line_item.order.update_attribute(:tax_charge, line_item.price)
90
+ to_delete << line_item
91
+ end
92
+ end
93
+ Piggybak::LineItem.destroy(to_delete)
94
+
95
+ remove_column :shipments, :line_item_id
96
+ remove_column :payments, :line_item_id
97
+
98
+ remove_column :line_items, :line_item_type
99
+ remove_column :line_items, :updated_at
100
+ remove_column :line_items, :created_at
101
+ remove_column :line_items, :sort
102
+ rename_column :line_items, :price, :total
103
+ rename_column :line_items, :unit_price, :price
104
+ end
105
+ end
@@ -0,0 +1,9 @@
1
+ class FixSellablePriceScale < ActiveRecord::Migration
2
+ def up
3
+ change_column :sellables, :price, :decimal, :precision => 10, :scale => 2, :null => false
4
+ end
5
+
6
+ def down
7
+ change_column :sellables, :price, :decimal
8
+ end
9
+ end
@@ -0,0 +1,15 @@
1
+ class ConvertAllDecimalFields < ActiveRecord::Migration
2
+ def up
3
+ change_column :line_items, :price, :decimal, :precision => 10, :scale => 2
4
+ change_column :line_items, :unit_price, :decimal, :precision => 10, :scale => 2, :null => false, :defualt => 0.0
5
+ change_column :orders, :total, :decimal, :precision => 10, :scale => 2, :null => false
6
+ change_column :orders, :total_due, :decimal, :precision => 10, :scale => 2, :null => false
7
+ end
8
+
9
+ def down
10
+ change_column :line_items, :price, :decimal
11
+ change_column :line_items, :unit_price, :decimal
12
+ change_column :orders, :total, :decimal
13
+ change_column :orders, :total_due, :decimal
14
+ end
15
+ end
@@ -0,0 +1,14 @@
1
+ # This migration comes from piggybak_variants (originally 20121015144538)
2
+ class CreateNewVariants < ActiveRecord::Migration
3
+ def up
4
+ create_table :variants, :force => true do |t|
5
+ t.integer :item_id, :null => false
6
+ t.string :item_type, :null => false
7
+ t.timestamps
8
+ end
9
+ end
10
+
11
+ def down
12
+ drop_table :variants
13
+ end
14
+ end
@@ -0,0 +1,10 @@
1
+ # This migration comes from piggybak_engine (originally 20121018213421)
2
+ class DropSortFromLineItems < ActiveRecord::Migration
3
+ def up
4
+ remove_column :line_items, :sort
5
+ end
6
+
7
+ def down
8
+ add_column :line_items, :sort, :integer, :null => false, :default => 0
9
+ end
10
+ end
@@ -0,0 +1,10 @@
1
+ # This migration comes from piggybak_engine (originally 20121210211600)
2
+ class ChangeUserAgentType < ActiveRecord::Migration
3
+ def up
4
+ change_column :orders, :user_agent, :text
5
+ end
6
+
7
+ def down
8
+ change_column :orders, :user_agent, :string
9
+ end
10
+ end
@@ -0,0 +1,6 @@
1
+ # This migration comes from piggybak_engine (originally 20130516200305)
2
+ class AddConfirmationSentToOrders < ActiveRecord::Migration
3
+ def change
4
+ add_column :orders, :confirmation_sent, :boolean, :default => false
5
+ end
6
+ end
@@ -0,0 +1,19 @@
1
+ class UpgradePiggybakTables < ActiveRecord::Migration
2
+ def change
3
+ rename_table :orders, :piggybak_orders
4
+ rename_table :addresses, :piggybak_addresses
5
+ rename_table :line_items, :piggybak_line_items
6
+ rename_table :shipping_methods, :piggybak_shipping_methods
7
+ rename_table :payment_methods, :piggybak_payment_methods
8
+ rename_table :payments, :piggybak_payments
9
+ rename_table :shipments, :piggybak_shipments
10
+ rename_table :shipping_method_values, :piggybak_shipping_method_values
11
+ rename_table :payment_method_values, :piggybak_payment_method_values
12
+ rename_table :tax_methods, :piggybak_tax_methods
13
+ rename_table :countries, :piggybak_countries
14
+ rename_table :states, :piggybak_states
15
+ rename_table :tax_method_values, :piggybak_tax_method_values
16
+ rename_table :order_notes, :piggybak_order_notes
17
+ rename_table :sellables, :piggybak_sellables
18
+ end
19
+ end
@@ -0,0 +1,245 @@
1
+ # encoding: UTF-8
2
+ # This file is auto-generated from the current state of the database. Instead
3
+ # of editing this file, please use the migrations feature of Active Record to
4
+ # incrementally modify your database, and then regenerate this schema definition.
5
+ #
6
+ # Note that this schema.rb definition is the authoritative source for your
7
+ # database schema. If you need to create the application database on another
8
+ # system, you should be using db:schema:load, not running all the migrations
9
+ # from scratch. The latter is a flawed and unsustainable approach (the more migrations
10
+ # you'll amass, the slower it'll run and the greater likelihood for issues).
11
+ #
12
+ # It's strongly recommended that you check this file into your version control system.
13
+
14
+ ActiveRecord::Schema.define(version: 20140325133841) do
15
+
16
+ create_table "adjustments", force: true do |t|
17
+ t.string "source_type"
18
+ t.integer "source_id"
19
+ t.datetime "created_at"
20
+ t.datetime "updated_at"
21
+ t.text "note"
22
+ end
23
+
24
+ create_table "images", force: true do |t|
25
+ t.string "title", null: false
26
+ t.boolean "free_shipping", default: false, null: false
27
+ t.datetime "created_at"
28
+ t.datetime "updated_at"
29
+ end
30
+
31
+ create_table "pages", force: true do |t|
32
+ t.string "title"
33
+ t.string "slug"
34
+ t.text "content"
35
+ t.datetime "created_at"
36
+ t.datetime "updated_at"
37
+ end
38
+
39
+ create_table "piggybak_addresses", force: true do |t|
40
+ t.string "firstname", null: false
41
+ t.string "lastname", null: false
42
+ t.string "address1", null: false
43
+ t.string "address2"
44
+ t.string "city", null: false
45
+ t.integer "state_id", null: false
46
+ t.integer "country_id", null: false
47
+ t.string "zip", null: false
48
+ t.datetime "created_at"
49
+ t.datetime "updated_at"
50
+ end
51
+
52
+ create_table "piggybak_countries", force: true do |t|
53
+ t.string "name"
54
+ t.string "abbr"
55
+ t.boolean "active_shipping", default: false
56
+ t.boolean "active_billing", default: false
57
+ end
58
+
59
+ create_table "piggybak_line_items", force: true do |t|
60
+ t.integer "order_id", null: false
61
+ t.integer "quantity", null: false
62
+ t.integer "sellable_id"
63
+ t.decimal "price", precision: 10, scale: 2
64
+ t.decimal "unit_price", precision: 10, scale: 2, default: 0.0, null: false
65
+ t.string "description", default: "", null: false
66
+ t.string "line_item_type", default: "sellable", null: false
67
+ t.datetime "created_at"
68
+ t.datetime "updated_at"
69
+ end
70
+
71
+ create_table "piggybak_order_notes", force: true do |t|
72
+ t.integer "order_id", null: false
73
+ t.integer "user_id", null: false
74
+ t.text "note"
75
+ t.datetime "created_at"
76
+ t.datetime "updated_at"
77
+ end
78
+
79
+ create_table "piggybak_orders", force: true do |t|
80
+ t.integer "billing_address_id", null: false
81
+ t.integer "shipping_address_id", null: false
82
+ t.integer "user_id"
83
+ t.string "email", null: false
84
+ t.string "phone", null: false
85
+ t.decimal "total", precision: 10, scale: 2, null: false
86
+ t.decimal "total_due", precision: 10, scale: 2, null: false
87
+ t.string "status", null: false
88
+ t.datetime "created_at"
89
+ t.datetime "updated_at"
90
+ t.string "ip_address"
91
+ t.text "user_agent", limit: 255
92
+ t.boolean "to_be_cancelled", default: false
93
+ t.boolean "confirmation_sent", default: false
94
+ end
95
+
96
+ create_table "piggybak_payment_method_values", force: true do |t|
97
+ t.integer "payment_method_id"
98
+ t.string "key"
99
+ t.string "value"
100
+ end
101
+
102
+ create_table "piggybak_payment_methods", force: true do |t|
103
+ t.string "description", null: false
104
+ t.string "klass", null: false
105
+ t.boolean "active", default: false, null: false
106
+ t.datetime "created_at"
107
+ t.datetime "updated_at"
108
+ end
109
+
110
+ create_table "piggybak_payments", force: true do |t|
111
+ t.integer "payment_method_id"
112
+ t.string "status", default: "paid", null: false
113
+ t.integer "month"
114
+ t.integer "year"
115
+ t.string "transaction_id"
116
+ t.datetime "created_at"
117
+ t.datetime "updated_at"
118
+ t.string "masked_number"
119
+ t.integer "line_item_id"
120
+ end
121
+
122
+ create_table "piggybak_sellables", force: true do |t|
123
+ t.string "sku", null: false
124
+ t.string "description", null: false
125
+ t.decimal "price", precision: 10, scale: 2, null: false
126
+ t.integer "quantity", default: 0, null: false
127
+ t.integer "item_id", null: false
128
+ t.string "item_type", null: false
129
+ t.boolean "active", default: false, null: false
130
+ t.boolean "unlimited_inventory", default: false, null: false
131
+ end
132
+
133
+ create_table "piggybak_shipments", force: true do |t|
134
+ t.integer "shipping_method_id", null: false
135
+ t.string "status", default: "new", null: false
136
+ t.datetime "created_at"
137
+ t.datetime "updated_at"
138
+ t.integer "line_item_id"
139
+ end
140
+
141
+ create_table "piggybak_shipping_method_values", force: true do |t|
142
+ t.integer "shipping_method_id"
143
+ t.string "key"
144
+ t.string "value"
145
+ end
146
+
147
+ create_table "piggybak_shipping_methods", force: true do |t|
148
+ t.string "description", null: false
149
+ t.string "klass", null: false
150
+ t.boolean "active", default: false, null: false
151
+ end
152
+
153
+ create_table "piggybak_states", force: true do |t|
154
+ t.string "name"
155
+ t.string "abbr"
156
+ t.integer "country_id"
157
+ end
158
+
159
+ create_table "piggybak_tax_method_values", force: true do |t|
160
+ t.integer "tax_method_id"
161
+ t.string "key"
162
+ t.string "value"
163
+ end
164
+
165
+ create_table "piggybak_tax_methods", force: true do |t|
166
+ t.string "description", null: false
167
+ t.string "klass", null: false
168
+ t.boolean "active", default: false, null: false
169
+ end
170
+
171
+ create_table "posts", force: true do |t|
172
+ t.string "title", null: false
173
+ t.string "slug", null: false
174
+ t.integer "user_id"
175
+ t.text "content"
176
+ t.datetime "created_at"
177
+ t.datetime "updated_at"
178
+ end
179
+
180
+ create_table "rails_admin_histories", force: true do |t|
181
+ t.text "message"
182
+ t.string "username"
183
+ t.integer "item"
184
+ t.string "table"
185
+ t.integer "month", limit: 2
186
+ t.integer "year", limit: 5
187
+ t.datetime "created_at"
188
+ t.datetime "updated_at"
189
+ end
190
+
191
+ add_index "rails_admin_histories", ["item", "table", "month", "year"], name: "index_rails_admin_histories"
192
+
193
+ create_table "roles", force: true do |t|
194
+ t.string "name"
195
+ end
196
+
197
+ create_table "roles_users", id: false, force: true do |t|
198
+ t.integer "role_id"
199
+ t.integer "user_id"
200
+ end
201
+
202
+ create_table "taggings", force: true do |t|
203
+ t.integer "tag_id"
204
+ t.integer "taggable_id"
205
+ t.string "taggable_type"
206
+ t.integer "tagger_id"
207
+ t.string "tagger_type"
208
+ t.string "context", limit: 128
209
+ t.datetime "created_at"
210
+ end
211
+
212
+ add_index "taggings", ["tag_id"], name: "index_taggings_on_tag_id"
213
+ add_index "taggings", ["taggable_id", "taggable_type", "context"], name: "index_taggings_on_taggable_id_and_taggable_type_and_context"
214
+
215
+ create_table "tags", force: true do |t|
216
+ t.string "name"
217
+ end
218
+
219
+ create_table "users", force: true do |t|
220
+ t.string "email", default: "", null: false
221
+ t.string "encrypted_password", default: "", null: false
222
+ t.string "reset_password_token"
223
+ t.datetime "reset_password_sent_at"
224
+ t.datetime "remember_created_at"
225
+ t.integer "sign_in_count", default: 0
226
+ t.datetime "current_sign_in_at"
227
+ t.datetime "last_sign_in_at"
228
+ t.string "current_sign_in_ip"
229
+ t.string "last_sign_in_ip"
230
+ t.string "display_name", null: false
231
+ t.datetime "created_at"
232
+ t.datetime "updated_at"
233
+ end
234
+
235
+ add_index "users", ["email"], name: "index_users_on_email", unique: true
236
+ add_index "users", ["reset_password_token"], name: "index_users_on_reset_password_token", unique: true
237
+
238
+ create_table "variants", force: true do |t|
239
+ t.integer "item_id", null: false
240
+ t.string "item_type", null: false
241
+ t.datetime "created_at"
242
+ t.datetime "updated_at"
243
+ end
244
+
245
+ end