forge-cli 0.0.10 → 0.0.11
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.
- data/README.rdoc +1 -3
- data/lib/forge-cli.rb +3 -0
- data/lib/forge-cli/application_creator.rb +33 -0
- data/lib/forge-cli/custom_file_copier.rb +27 -0
- data/lib/forge-cli/forge_addon_requirer.rb +14 -0
- data/lib/forge-cli/logo.txt +11 -0
- data/lib/forge-cli/module_installer.rb +31 -5
- data/lib/forge-cli/modules/banners/forge_routes.rb +3 -0
- data/lib/forge-cli/modules/banners/manifest.yml +8 -0
- data/lib/forge-cli/modules/banners/post_hooks.rb +12 -0
- data/lib/forge-cli/modules/banners/routes.rb +15 -0
- data/lib/forge-cli/modules/base/forge_routes.rb +5 -0
- data/lib/forge-cli/modules/base/manifest.yml +7 -12
- data/lib/forge-cli/modules/base/post_hooks.rb +10 -29
- data/lib/forge-cli/modules/dispatches/forge_routes.rb +6 -0
- data/lib/forge-cli/modules/dispatches/manifest.yml +25 -0
- data/lib/forge-cli/modules/dispatches/post_hooks.rb +13 -0
- data/lib/forge-cli/modules/dispatches/routes.rb +4 -0
- data/lib/forge-cli/modules/ecommerce/forge_routes.rb +33 -0
- data/lib/forge-cli/modules/ecommerce/manifest.yml +49 -1
- data/lib/forge-cli/modules/ecommerce/post_hooks.rb +33 -0
- data/lib/forge-cli/modules/ecommerce/routes.rb +43 -0
- data/lib/forge-cli/modules/events/forge_routes.rb +1 -0
- data/lib/forge-cli/modules/events/manifest.yml +12 -0
- data/lib/forge-cli/modules/events/post_hooks.rb +16 -0
- data/lib/forge-cli/modules/events/routes.rb +4 -0
- data/lib/forge-cli/modules/galleries/forge_routes.rb +3 -0
- data/lib/forge-cli/modules/galleries/manifest.yml +9 -0
- data/lib/forge-cli/modules/galleries/post_hooks.rb +11 -0
- data/lib/forge-cli/modules/posts/forge_routes.rb +6 -0
- data/lib/forge-cli/modules/posts/post_hooks.rb +30 -0
- data/lib/forge-cli/modules/posts/routes.rb +15 -0
- data/lib/forge-cli/modules/subscribers/forge_routes.rb +4 -0
- data/lib/forge-cli/modules/subscribers/manifest.yml +14 -0
- data/lib/forge-cli/modules/subscribers/post_hooks.rb +12 -0
- data/lib/forge-cli/modules/subscribers/routes.rb +1 -0
- data/lib/forge-cli/modules/videos/forge_routes.rb +4 -0
- data/lib/forge-cli/modules/videos/manifest.yml +9 -0
- data/lib/forge-cli/modules/videos/post_hooks.rb +14 -0
- data/lib/forge-cli/modules/videos/routes.rb +15 -0
- data/lib/forge-cli/output.rb +10 -0
- data/lib/forge-cli/post_hooks.rb +24 -11
- data/lib/forge-cli/version.rb +1 -1
- data/lib/forge/Gemfile +2 -2
- data/lib/forge/app/controllers/application_controller.rb +2 -2
- data/lib/forge/app/controllers/events_controller.rb +2 -2
- data/lib/forge/app/controllers/hosted_payment_controller.rb +1 -1
- data/lib/forge/app/controllers/integrated_payment_controller.rb +1 -1
- data/lib/forge/app/controllers/orders_controller.rb +1 -1
- data/lib/forge/app/form_builders/forge_form_builder.rb +2 -2
- data/lib/forge/app/helpers/form_helper.rb +2 -2
- data/lib/forge/app/models/event.rb +4 -0
- data/lib/forge/app/models/order.rb +3 -3
- data/lib/forge/app/models/order_transaction.rb +1 -1
- data/lib/forge/app/models/post.rb +5 -0
- data/lib/forge/app/models/video.rb +24 -19
- data/lib/forge/app/views/forge/dispatches/show.html.haml +2 -2
- data/lib/forge/app/views/forge/help_topics/show.html.haml +4 -4
- data/lib/forge/app/views/forge/settings/show.html.haml +2 -2
- data/lib/forge/app/views/forge/shared/_seo_fields.html.haml +1 -1
- data/lib/forge/app/views/forge/shared/menu_items/_subscribers.html.haml +8 -0
- data/lib/forge/app/views/hosted_payment/_paypal.html.haml +3 -3
- data/lib/forge/app/views/hosted_payment/billing.html.haml +2 -2
- data/lib/forge/app/views/integrated_payment/_credit_card_form.html.haml +3 -3
- data/lib/forge/app/views/integrated_payment/billing.html.haml +3 -3
- data/lib/forge/app/views/layouts/application.html.haml +1 -1
- data/lib/forge/app/views/layouts/forge.html.haml +1 -1
- data/lib/forge/app/views/orders/paid.html.haml +3 -3
- data/lib/forge/config/initializers/ecommerce.rb +2 -2
- data/lib/forge/config/initializers/forge.rb +33 -0
- data/lib/forge/config/routes.rb +2 -4
- data/lib/forge/db/migrate/20130404140735_create_base_forge.rb +187 -0
- data/lib/forge/db/migrate/20130405172025_create_post_categories.rb +1 -1
- data/lib/forge/db/migrate/20130405172026_create_addresses.rb +28 -0
- data/lib/forge/db/migrate/20130405172027_create_countries.rb +20 -0
- data/lib/forge/db/migrate/20130405172028_create_orders.rb +22 -0
- data/lib/forge/db/migrate/20130405172029_create_order_transactions.rb +22 -0
- data/lib/forge/db/migrate/20130405172030_create_products.rb +34 -0
- data/lib/forge/db/migrate/20130405172031_create_product_categories.rb +20 -0
- data/lib/forge/db/migrate/20130405172032_create_product_images.rb +20 -0
- data/lib/forge/db/migrate/20130405172033_create_provinces.rb +19 -0
- data/lib/forge/db/migrate/20130405172034_create_sales.rb +18 -0
- data/lib/forge/db/migrate/20130405172035_create_tax_rates.rb +19 -0
- data/lib/forge/db/migrate/20130405172036_create_banners.rb +20 -0
- data/lib/forge/db/migrate/20130405172037_create_videos.rb +33 -0
- data/lib/forge/db/migrate/20130405172038_create_events.rb +18 -0
- data/lib/forge/db/migrate/20130405172039_create_dispatches.rb +98 -0
- data/lib/forge/db/migrate/20130405172040_create_subscribers copy.rb +32 -0
- data/lib/forge/db/migrate/20130405172041_create_galleries.rb +29 -0
- data/lib/forge/lib/assets/stylesheets/forge/dispatches.css.scss +10 -1
- data/lib/forge/lib/forge.rb +12 -4
- data/lib/forge/{config/initializers → lib/forge}/can_be_foreign.rb +0 -0
- data/lib/forge/{config/initializers → lib/forge}/can_have_comments.rb +0 -0
- data/lib/forge/{config/initializers → lib/forge}/can_use_asset.rb +0 -0
- data/lib/forge/lib/forge/config/ecommerce.rb +55 -0
- data/lib/forge/lib/forge/config/events.rb +29 -0
- data/lib/forge/lib/forge/config/videos.rb +20 -0
- data/lib/forge/{config/initializers → lib/forge}/reorderable.rb +0 -0
- data/lib/forge/{config/initializers/forge/controllers → lib/forge/shared_controller_methods}/ecommerce.rb +1 -3
- data/lib/forge/{config/initializers/forge/controllers → lib/forge/shared_controller_methods}/posts.rb +0 -2
- data/lib/forge/lib/generators/forge/i18n_migrations/i18n_migrations_generator.rb +3 -3
- data/lib/forge/lib/tasks/forge.rake +1 -1
- data/lib/forge/spec/integration/shopping_spec.rb +9 -9
- data/lib/forge/spec/models/order_spec.rb +5 -5
- metadata +169 -120
- data/forge-cli.rdoc +0 -5
- data/lib/forge/app/controllers/product_images_controller.rb +0 -2
- data/lib/forge/config/ferret_server.yml +0 -24
- data/lib/forge/db/migrate/20130404140735_create_assets.rb +0 -24
- data/lib/forge/db/migrate/20130404141259_create_comments.rb +0 -40
- data/lib/forge/db/migrate/20130404142157_create_help_topics.rb +0 -18
- data/lib/forge/db/migrate/20130404143601_create_settings.rb +0 -18
- data/lib/forge/db/migrate/20130404145209_create_roles.rb +0 -22
- data/lib/forge/db/migrate/20130404145329_create_taggings.rb +0 -25
- data/lib/forge/db/migrate/20130404151730_create_users.rb +0 -30
- data/lib/forge/db/migrate/20130405172022_create_pages.rb +0 -35
- data/lib/forge/lib/active_form.rb +0 -12
- data/lib/forge/lib/forge/settings.rb +0 -4
@@ -0,0 +1,187 @@
|
|
1
|
+
class CreateBaseForge < ActiveRecord::Migration
|
2
|
+
def up
|
3
|
+
create_table "assets" do |t|
|
4
|
+
t.string "title"
|
5
|
+
t.string "attachment_file_name"
|
6
|
+
t.string "attachment_content_type"
|
7
|
+
t.integer "attachment_file_size"
|
8
|
+
t.datetime "created_at"
|
9
|
+
t.datetime "updated_at"
|
10
|
+
t.string "encoded_state"
|
11
|
+
t.string "output_url"
|
12
|
+
t.string "aspect_ratio"
|
13
|
+
t.integer "duration_in_ms"
|
14
|
+
t.integer "job_id"
|
15
|
+
end
|
16
|
+
|
17
|
+
add_index "assets", ["created_at"], :name => "index_assets_on_created_at"
|
18
|
+
add_index "assets", ["job_id"], :name => "index_assets_on_job_id"
|
19
|
+
|
20
|
+
create_table "comment_subscribers" do |t|
|
21
|
+
t.integer "commentable_id"
|
22
|
+
t.string "commentable_type"
|
23
|
+
t.string "email"
|
24
|
+
t.datetime "created_at"
|
25
|
+
t.datetime "updated_at"
|
26
|
+
end
|
27
|
+
|
28
|
+
add_index "comment_subscribers", ["commentable_id"], :name => "index_comment_subscribers_on_commentable_id"
|
29
|
+
add_index "comment_subscribers", ["commentable_type"], :name => "index_comment_subscribers_on_commentable_type"
|
30
|
+
|
31
|
+
create_table "comments" do |t|
|
32
|
+
t.string "author"
|
33
|
+
t.string "author_url"
|
34
|
+
t.string "author_email"
|
35
|
+
t.text "content"
|
36
|
+
t.string "permalink"
|
37
|
+
t.string "user_ip"
|
38
|
+
t.string "user_agent"
|
39
|
+
t.string "referrer"
|
40
|
+
t.integer "commentable_id"
|
41
|
+
t.boolean "approved", :default => false, :null => false
|
42
|
+
t.datetime "created_at"
|
43
|
+
t.datetime "updated_at"
|
44
|
+
t.string "commentable_type"
|
45
|
+
end
|
46
|
+
|
47
|
+
add_index "comments", ["commentable_id"], :name => "index_comments_on_commentable_id"
|
48
|
+
add_index "comments", ["commentable_id"], :name => "index_comments_on_post_id"
|
49
|
+
add_index "comments", ["commentable_type"], :name => "index_comments_on_commentable_type"
|
50
|
+
add_index "comments", ["created_at"], :name => "index_comments_on_created_at"
|
51
|
+
|
52
|
+
create_table "delayed_jobs", :force => true do |t|
|
53
|
+
t.integer "priority", :default => 0
|
54
|
+
t.integer "attempts", :default => 0
|
55
|
+
t.text "handler"
|
56
|
+
t.text "last_error"
|
57
|
+
t.datetime "run_at"
|
58
|
+
t.datetime "locked_at"
|
59
|
+
t.datetime "failed_at"
|
60
|
+
t.string "locked_by"
|
61
|
+
t.datetime "created_at"
|
62
|
+
t.datetime "updated_at"
|
63
|
+
t.string "queue"
|
64
|
+
end
|
65
|
+
|
66
|
+
add_index "delayed_jobs", ["priority", "run_at"], :name => "delayed_jobs_priority"
|
67
|
+
|
68
|
+
create_table "help_topics" do |t|
|
69
|
+
t.string "language", :default => "en", :null => false
|
70
|
+
t.string "slug", :null => false
|
71
|
+
t.string "title", :null => false
|
72
|
+
t.datetime "created_at"
|
73
|
+
t.datetime "updated_at"
|
74
|
+
t.text "content"
|
75
|
+
end
|
76
|
+
|
77
|
+
add_index "help_topics", ["title"], :name => "index_help_topics_on_title"
|
78
|
+
|
79
|
+
|
80
|
+
create_table "settings" do |t|
|
81
|
+
t.string "var", :null => false
|
82
|
+
t.text "value"
|
83
|
+
t.integer "thing_id"
|
84
|
+
t.string "thing_type", :limit => 30
|
85
|
+
t.datetime "created_at"
|
86
|
+
t.datetime "updated_at"
|
87
|
+
end
|
88
|
+
|
89
|
+
add_index "settings", ["thing_type", "thing_id", "var"], :name => "index_settings_on_thing_type_and_thing_id_and_var", :unique => true
|
90
|
+
|
91
|
+
create_table "roles" do |t|
|
92
|
+
t.string "title"
|
93
|
+
t.datetime "created_at"
|
94
|
+
t.datetime "updated_at"
|
95
|
+
end
|
96
|
+
|
97
|
+
create_table "roles_users", :id => false do |t|
|
98
|
+
t.integer "user_id"
|
99
|
+
t.integer "role_id"
|
100
|
+
end
|
101
|
+
|
102
|
+
add_index "roles_users", ["role_id"], :name => "index_roles_users_on_role_id"
|
103
|
+
add_index "roles_users", ["user_id"], :name => "index_roles_users_on_user_id"
|
104
|
+
|
105
|
+
create_table "taggings" do |t|
|
106
|
+
t.integer "tag_id"
|
107
|
+
t.integer "taggable_id"
|
108
|
+
t.string "taggable_type"
|
109
|
+
t.integer "tagger_id"
|
110
|
+
t.string "tagger_type"
|
111
|
+
t.string "context"
|
112
|
+
t.datetime "created_at"
|
113
|
+
end
|
114
|
+
|
115
|
+
add_index "taggings", ["tag_id"], :name => "index_taggings_on_tag_id"
|
116
|
+
add_index "taggings", ["taggable_id", "taggable_type", "context"], :name => "index_taggings_on_taggable_id_and_taggable_type_and_context"
|
117
|
+
|
118
|
+
create_table "tags" do |t|
|
119
|
+
t.string "name"
|
120
|
+
end
|
121
|
+
|
122
|
+
create_table "users" do |t|
|
123
|
+
t.string "email", :default => "", :null => false
|
124
|
+
t.string "encrypted_password", :limit => 128, :default => "", :null => false
|
125
|
+
t.string "reset_password_token"
|
126
|
+
t.string "remember_token"
|
127
|
+
t.datetime "remember_created_at"
|
128
|
+
t.integer "sign_in_count", :default => 0
|
129
|
+
t.datetime "current_sign_in_at"
|
130
|
+
t.datetime "last_sign_in_at"
|
131
|
+
t.string "current_sign_in_ip"
|
132
|
+
t.string "last_sign_in_ip"
|
133
|
+
t.datetime "created_at"
|
134
|
+
t.datetime "updated_at"
|
135
|
+
t.string "avatar_file_name"
|
136
|
+
t.string "avatar_content_type"
|
137
|
+
t.integer "avatar_file_size"
|
138
|
+
t.boolean "approved", :default => false
|
139
|
+
t.datetime "reset_password_sent_at"
|
140
|
+
end
|
141
|
+
|
142
|
+
add_index "users", ["email"], :name => "index_users_on_email", :unique => true
|
143
|
+
add_index "users", ["reset_password_token"], :name => "index_users_on_reset_password_token", :unique => true
|
144
|
+
|
145
|
+
create_table "pages" do |t|
|
146
|
+
t.integer "parent_id"
|
147
|
+
t.string "title"
|
148
|
+
t.string "slug"
|
149
|
+
t.string "path"
|
150
|
+
t.string "unique_key"
|
151
|
+
t.text "content"
|
152
|
+
t.integer "list_order", :default => 999
|
153
|
+
t.boolean "show_in_menu", :default => true
|
154
|
+
t.integer "creator_id"
|
155
|
+
t.integer "updater_id"
|
156
|
+
t.boolean "published"
|
157
|
+
t.datetime "created_at"
|
158
|
+
t.datetime "updated_at"
|
159
|
+
t.string "key"
|
160
|
+
t.string "seo_title"
|
161
|
+
t.text "seo_description"
|
162
|
+
t.text "seo_keywords"
|
163
|
+
t.integer "lft"
|
164
|
+
t.integer "rgt"
|
165
|
+
t.integer "depth"
|
166
|
+
end
|
167
|
+
|
168
|
+
add_index "pages", ["creator_id"], :name => "index_pages_on_creator_id"
|
169
|
+
add_index "pages", ["parent_id"], :name => "index_pages_on_parent_id"
|
170
|
+
add_index "pages", ["slug"], :name => "index_pages_on_slug"
|
171
|
+
add_index "pages", ["updater_id"], :name => "index_pages_on_updater_id"
|
172
|
+
end
|
173
|
+
|
174
|
+
def down
|
175
|
+
drop_table :assets
|
176
|
+
drop_table :comment_subscribers
|
177
|
+
drop_table :comments
|
178
|
+
drop_table :help_topics
|
179
|
+
drop_table :settings
|
180
|
+
drop_table :roles
|
181
|
+
drop_table :roles_users
|
182
|
+
drop_table :tags
|
183
|
+
drop_table :taggings
|
184
|
+
drop_table :users
|
185
|
+
drop_table :pages
|
186
|
+
end
|
187
|
+
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
class CreateAddresses < ActiveRecord::Migration
|
2
|
+
def up
|
3
|
+
create_table "addresses" do |t|
|
4
|
+
t.string "address1"
|
5
|
+
t.string "address2"
|
6
|
+
t.string "city"
|
7
|
+
t.string "postal"
|
8
|
+
t.integer "country_id"
|
9
|
+
t.string "phone"
|
10
|
+
t.integer "user_id"
|
11
|
+
t.string "first_name"
|
12
|
+
t.string "last_name"
|
13
|
+
t.string "email"
|
14
|
+
t.datetime "created_at"
|
15
|
+
t.datetime "updated_at"
|
16
|
+
t.integer "province_id"
|
17
|
+
t.string "company"
|
18
|
+
end
|
19
|
+
|
20
|
+
add_index "addresses", ["country_id"], :name => "index_addresses_on_country_id"
|
21
|
+
add_index "addresses", ["province_id"], :name => "index_addresses_on_province_id"
|
22
|
+
add_index "addresses", ["user_id"], :name => "index_addresses_on_user_id"
|
23
|
+
end
|
24
|
+
|
25
|
+
def down
|
26
|
+
drop_table :addresses
|
27
|
+
end
|
28
|
+
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
class CreateCountries < ActiveRecord::Migration
|
2
|
+
def up
|
3
|
+
create_table "countries" do |t|
|
4
|
+
t.string "title"
|
5
|
+
t.string "code"
|
6
|
+
t.boolean "top_of_list", :default => false, :null => false
|
7
|
+
t.boolean "active", :default => false, :null => false
|
8
|
+
t.datetime "created_at"
|
9
|
+
t.datetime "updated_at"
|
10
|
+
end
|
11
|
+
|
12
|
+
add_index "countries", ["code"], :name => "index_countries_on_code", :unique => true
|
13
|
+
add_index "countries", ["title"], :name => "index_countries_on_title"
|
14
|
+
add_index "countries", ["top_of_list"], :name => "index_countries_on_top_of_list"
|
15
|
+
end
|
16
|
+
|
17
|
+
def down
|
18
|
+
drop_table :countries
|
19
|
+
end
|
20
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
class CreateOrders < ActiveRecord::Migration
|
2
|
+
def up
|
3
|
+
create_table "orders" do |t|
|
4
|
+
t.string "key"
|
5
|
+
t.string "state", :default => "pending"
|
6
|
+
t.integer "billing_address_id"
|
7
|
+
t.integer "shipping_address_id"
|
8
|
+
t.datetime "created_at"
|
9
|
+
t.datetime "updated_at"
|
10
|
+
t.float "shipping_cost"
|
11
|
+
end
|
12
|
+
|
13
|
+
add_index "orders", ["billing_address_id"], :name => "index_orders_on_billing_address_id"
|
14
|
+
add_index "orders", ["created_at"], :name => "index_orders_on_created_at"
|
15
|
+
add_index "orders", ["key"], :name => "index_orders_on_key", :unique => true
|
16
|
+
add_index "orders", ["shipping_address_id"], :name => "index_orders_on_shipping_address_id"
|
17
|
+
end
|
18
|
+
|
19
|
+
def down
|
20
|
+
drop_table :orders
|
21
|
+
end
|
22
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
class CreateOrderTransactions < ActiveRecord::Migration
|
2
|
+
def up
|
3
|
+
create_table "order_transactions" do |t|
|
4
|
+
t.integer "order_id"
|
5
|
+
t.integer "amount"
|
6
|
+
t.boolean "success"
|
7
|
+
t.string "reference"
|
8
|
+
t.string "message"
|
9
|
+
t.string "action"
|
10
|
+
t.text "params"
|
11
|
+
t.boolean "test"
|
12
|
+
t.datetime "created_at"
|
13
|
+
t.datetime "updated_at"
|
14
|
+
end
|
15
|
+
|
16
|
+
add_index "order_transactions", ["order_id"], :name => "index_order_transactions_on_order_id"
|
17
|
+
end
|
18
|
+
|
19
|
+
def down
|
20
|
+
drop_table :order_transactions
|
21
|
+
end
|
22
|
+
end
|
@@ -0,0 +1,34 @@
|
|
1
|
+
class CreateProducts < ActiveRecord::Migration
|
2
|
+
def up
|
3
|
+
create_table "products" do |t|
|
4
|
+
t.datetime "created_at"
|
5
|
+
t.datetime "updated_at"
|
6
|
+
t.string "title"
|
7
|
+
t.string "short_description"
|
8
|
+
t.text "description"
|
9
|
+
t.float "price", :default => 0.0, :null => false
|
10
|
+
t.integer "list_order"
|
11
|
+
t.boolean "featured", :default => false, :null => false
|
12
|
+
t.boolean "published", :default => false
|
13
|
+
t.integer "product_category_id"
|
14
|
+
t.float "weight", :default => 0.0
|
15
|
+
t.float "flat_rate_shipping", :default => 0.0
|
16
|
+
t.float "width", :default => 0.0
|
17
|
+
t.float "height", :default => 0.0
|
18
|
+
t.float "depth", :default => 0.0
|
19
|
+
t.text "options"
|
20
|
+
t.integer "sale_id"
|
21
|
+
t.string "seo_title"
|
22
|
+
t.text "seo_keywords"
|
23
|
+
t.text "seo_description"
|
24
|
+
end
|
25
|
+
|
26
|
+
add_index "products", ["list_order"], :name => "index_products_on_list_order"
|
27
|
+
add_index "products", ["product_category_id"], :name => "index_products_on_product_category_id"
|
28
|
+
add_index "products", ["sale_id"], :name => "index_products_on_sale_id"
|
29
|
+
end
|
30
|
+
|
31
|
+
def down
|
32
|
+
drop_table :products
|
33
|
+
end
|
34
|
+
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
class CreateProductCategories < ActiveRecord::Migration
|
2
|
+
def up
|
3
|
+
create_table "product_categories" do |t|
|
4
|
+
t.string "title"
|
5
|
+
t.integer "list_order", :default => 999
|
6
|
+
t.datetime "created_at"
|
7
|
+
t.datetime "updated_at"
|
8
|
+
t.integer "parent_id"
|
9
|
+
t.integer "sale_id"
|
10
|
+
end
|
11
|
+
|
12
|
+
add_index "product_categories", ["list_order"], :name => "index_product_categories_on_list_order"
|
13
|
+
add_index "product_categories", ["parent_id"], :name => "index_product_categories_on_parent_id"
|
14
|
+
add_index "product_categories", ["sale_id"], :name => "index_product_categories_on_sale_id"
|
15
|
+
end
|
16
|
+
|
17
|
+
def down
|
18
|
+
drop_table :product_categories
|
19
|
+
end
|
20
|
+
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
class CreateProductImages < ActiveRecord::Migration
|
2
|
+
def up
|
3
|
+
create_table "product_images" do |t|
|
4
|
+
t.integer "product_id"
|
5
|
+
t.integer "image_file_size"
|
6
|
+
t.string "image_file_name"
|
7
|
+
t.string "image_content_type"
|
8
|
+
t.integer "list_order"
|
9
|
+
t.datetime "created_at"
|
10
|
+
t.datetime "updated_at"
|
11
|
+
end
|
12
|
+
|
13
|
+
add_index "product_images", ["list_order"], :name => "index_product_images_on_list_order"
|
14
|
+
add_index "product_images", ["product_id"], :name => "index_product_images_on_product_id"
|
15
|
+
end
|
16
|
+
|
17
|
+
def down
|
18
|
+
drop_table :product_images
|
19
|
+
end
|
20
|
+
end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
class CreateProvinces < ActiveRecord::Migration
|
2
|
+
def up
|
3
|
+
create_table "provinces" do |t|
|
4
|
+
t.string "title"
|
5
|
+
t.string "code"
|
6
|
+
t.integer "country_id"
|
7
|
+
t.datetime "created_at"
|
8
|
+
t.datetime "updated_at"
|
9
|
+
end
|
10
|
+
|
11
|
+
add_index "provinces", ["code"], :name => "index_provinces_on_code"
|
12
|
+
add_index "provinces", ["country_id"], :name => "index_provinces_on_country_id"
|
13
|
+
add_index "provinces", ["title"], :name => "index_provinces_on_title"
|
14
|
+
end
|
15
|
+
|
16
|
+
def down
|
17
|
+
drop_table :provinces
|
18
|
+
end
|
19
|
+
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
class CreateSales < ActiveRecord::Migration
|
2
|
+
def up
|
3
|
+
create_table "sales" do |t|
|
4
|
+
t.string "title"
|
5
|
+
t.text "description"
|
6
|
+
t.datetime "start"
|
7
|
+
t.datetime "end"
|
8
|
+
t.float "value"
|
9
|
+
t.string "sale_type"
|
10
|
+
t.datetime "created_at"
|
11
|
+
t.datetime "updated_at"
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
15
|
+
def down
|
16
|
+
drop_table :sales
|
17
|
+
end
|
18
|
+
end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
class CreateTaxRates < ActiveRecord::Migration
|
2
|
+
def up
|
3
|
+
create_table "tax_rates" do |t|
|
4
|
+
t.string "title"
|
5
|
+
t.float "rate", :default => 0.0, :null => false
|
6
|
+
t.integer "country_id"
|
7
|
+
t.datetime "created_at"
|
8
|
+
t.datetime "updated_at"
|
9
|
+
t.integer "province_id"
|
10
|
+
end
|
11
|
+
|
12
|
+
add_index "tax_rates", ["country_id"], :name => "index_tax_rates_on_country_id"
|
13
|
+
add_index "tax_rates", ["province_id"], :name => "index_tax_rates_on_province_id"
|
14
|
+
end
|
15
|
+
|
16
|
+
def down
|
17
|
+
drop_table :tax_rates
|
18
|
+
end
|
19
|
+
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
class CreateBanners < ActiveRecord::Migration
|
2
|
+
def up
|
3
|
+
create_table "banners" do |t|
|
4
|
+
t.string "title"
|
5
|
+
t.string "photo_file_name"
|
6
|
+
t.string "photo_content_type"
|
7
|
+
t.integer "photo_file_size"
|
8
|
+
t.boolean "published", :default => true
|
9
|
+
t.integer "list_order", :default => 999
|
10
|
+
t.datetime "created_at"
|
11
|
+
t.datetime "updated_at"
|
12
|
+
end
|
13
|
+
|
14
|
+
add_index "banners", ["list_order"], :name => "index_banners_on_list_order"
|
15
|
+
end
|
16
|
+
|
17
|
+
def down
|
18
|
+
drop_table :banners
|
19
|
+
end
|
20
|
+
end
|