refinerycms-products 1.0.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.
- data/app/controllers/addresses_controller.rb +22 -0
- data/app/controllers/admin/carts_controller.rb +7 -0
- data/app/controllers/admin/categories_controller.rb +50 -0
- data/app/controllers/admin/customers_controller.rb +12 -0
- data/app/controllers/admin/line_items_controller.rb +7 -0
- data/app/controllers/admin/products_controller.rb +23 -0
- data/app/controllers/carts_controller.rb +110 -0
- data/app/controllers/categories_controller.rb +32 -0
- data/app/controllers/customers_controller.rb +33 -0
- data/app/controllers/line_items_controller.rb +8 -0
- data/app/controllers/products_controller.rb +61 -0
- data/app/controllers/profiles_controller.rb +37 -0
- data/app/helpers/address_helper.rb +20 -0
- data/app/helpers/products_helper.rb +34 -0
- data/app/models/address.rb +18 -0
- data/app/models/cart.rb +54 -0
- data/app/models/category.rb +28 -0
- data/app/models/customer.rb +32 -0
- data/app/models/line_item.rb +28 -0
- data/app/models/product.rb +46 -0
- data/app/views/addresses/edit.html.erb +42 -0
- data/app/views/admin/carts/_actions.html.erb +28 -0
- data/app/views/admin/carts/_cart.html.erb +18 -0
- data/app/views/admin/carts/_carts.html.erb +2 -0
- data/app/views/admin/carts/_form.html.erb +24 -0
- data/app/views/admin/carts/_records.html.erb +18 -0
- data/app/views/admin/carts/_sortable_list.html.erb +7 -0
- data/app/views/admin/carts/edit.html.erb +1 -0
- data/app/views/admin/carts/index.html.erb +10 -0
- data/app/views/admin/carts/new.html.erb +1 -0
- data/app/views/admin/categories/_actions.html.erb +28 -0
- data/app/views/admin/categories/_categories.html.erb +2 -0
- data/app/views/admin/categories/_category.html.erb +25 -0
- data/app/views/admin/categories/_form.html.erb +49 -0
- data/app/views/admin/categories/_records.html.erb +18 -0
- data/app/views/admin/categories/_sortable_list.html.erb +10 -0
- data/app/views/admin/categories/edit.html.erb +1 -0
- data/app/views/admin/categories/index.html.erb +12 -0
- data/app/views/admin/categories/new.html.erb +1 -0
- data/app/views/admin/customers/_actions.html.erb +28 -0
- data/app/views/admin/customers/_customer.html.erb +18 -0
- data/app/views/admin/customers/_customers.html.erb +2 -0
- data/app/views/admin/customers/_form.html.erb +40 -0
- data/app/views/admin/customers/_records.html.erb +18 -0
- data/app/views/admin/customers/_sortable_list.html.erb +7 -0
- data/app/views/admin/customers/edit.html.erb +1 -0
- data/app/views/admin/customers/index.html.erb +10 -0
- data/app/views/admin/customers/new.html.erb +1 -0
- data/app/views/admin/customers/show.html.erb +60 -0
- data/app/views/admin/line_items/_actions.html.erb +28 -0
- data/app/views/admin/line_items/_form.html.erb +29 -0
- data/app/views/admin/line_items/_line_item.html.erb +18 -0
- data/app/views/admin/line_items/_line_items.html.erb +2 -0
- data/app/views/admin/line_items/_records.html.erb +18 -0
- data/app/views/admin/line_items/_sortable_list.html.erb +7 -0
- data/app/views/admin/line_items/edit.html.erb +1 -0
- data/app/views/admin/line_items/index.html.erb +10 -0
- data/app/views/admin/line_items/new.html.erb +1 -0
- data/app/views/admin/products/_actions.html.erb +43 -0
- data/app/views/admin/products/_form.html.erb +120 -0
- data/app/views/admin/products/_product.html.erb +24 -0
- data/app/views/admin/products/_products.html.erb +2 -0
- data/app/views/admin/products/_records.html.erb +18 -0
- data/app/views/admin/products/_sortable_list.html.erb +13 -0
- data/app/views/admin/products/edit.html.erb +1 -0
- data/app/views/admin/products/index.html.erb +12 -0
- data/app/views/admin/products/new.html.erb +1 -0
- data/app/views/carts/show.html.erb +56 -0
- data/app/views/categories/index.html.erb +11 -0
- data/app/views/categories/show.html.erb +33 -0
- data/app/views/customers/index.html.erb +11 -0
- data/app/views/customers/show.html.erb +52 -0
- data/app/views/line_items/index.html.erb +11 -0
- data/app/views/line_items/show.html.erb +39 -0
- data/app/views/products/index.html.erb +33 -0
- data/app/views/products/show.html.erb +65 -0
- data/app/views/profiles/_order_history.html.erb +24 -0
- data/app/views/profiles/_show_address.html.erb +4 -0
- data/app/views/profiles/account_details.html.erb +32 -0
- data/app/views/profiles/address_details.html.erb +10 -0
- data/app/views/profiles/index.html.erb +75 -0
- data/app/views/profiles/order_history.html.erb +1 -0
- data/app/views/profiles/order_history_details.html.erb +39 -0
- data/config/locales/en.yml +97 -0
- data/config/locales/fr.yml +25 -0
- data/config/locales/lolcat.yml +25 -0
- data/config/locales/nb.yml +21 -0
- data/config/locales/nl.yml +21 -0
- data/config/routes.rb +58 -0
- data/lib/generators/refinerycms_products_generator.rb +6 -0
- data/lib/refinerycms-carts.rb +32 -0
- data/lib/refinerycms-categories.rb +30 -0
- data/lib/refinerycms-customers.rb +34 -0
- data/lib/refinerycms-line_items.rb +30 -0
- data/lib/refinerycms-products.rb +65 -0
- data/lib/tasks/products.rake +13 -0
- metadata +160 -0
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
<h2>Customer Profile</h2>
|
|
2
|
+
|
|
3
|
+
<div class="account">
|
|
4
|
+
<h3>Account Details</h3>
|
|
5
|
+
|
|
6
|
+
<div class='newform'>
|
|
7
|
+
<%= form_for(@current_customer) do |f| %>
|
|
8
|
+
|
|
9
|
+
<%= f.label :name %>
|
|
10
|
+
<div class='input'>
|
|
11
|
+
<%= f.text_field :name, :disabled => true %>
|
|
12
|
+
</div>
|
|
13
|
+
|
|
14
|
+
<%= f.label :surname %>
|
|
15
|
+
<div class='input'>
|
|
16
|
+
<%= f.text_field :surname, :disabled => true %>
|
|
17
|
+
</div>
|
|
18
|
+
|
|
19
|
+
<%= f.label :contact_number %>
|
|
20
|
+
<div class='input'>
|
|
21
|
+
<%= f.text_field :contact_number, :disabled => true %>
|
|
22
|
+
</div>
|
|
23
|
+
|
|
24
|
+
<%= f.label :email %>
|
|
25
|
+
<div class='input'>
|
|
26
|
+
<%= f.email_field :email, :disabled => true %>
|
|
27
|
+
</div>
|
|
28
|
+
<% end %>
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
<div class="clear"></div>
|
|
32
|
+
<p><%= link_to "Edit Details", edit_customer_registration_path %></p>
|
|
33
|
+
|
|
34
|
+
</div>
|
|
35
|
+
</div>
|
|
36
|
+
|
|
37
|
+
<% if @delivery_addresses.present? %>
|
|
38
|
+
<div class="account">
|
|
39
|
+
<h3>Addresses</h3>
|
|
40
|
+
|
|
41
|
+
<% @delivery_addresses.each do |address| %>
|
|
42
|
+
<%= render :partial => 'show_address', :locals => {:address => address, :url_text => 'Edit this address', :url => edit_address_path(address)} %>
|
|
43
|
+
<% end %>
|
|
44
|
+
</div>
|
|
45
|
+
<% end %>
|
|
46
|
+
<div class="clear"></div>
|
|
47
|
+
|
|
48
|
+
<% if @orders.present? then %>
|
|
49
|
+
<div class="order">
|
|
50
|
+
<div>
|
|
51
|
+
<h3>Order History</h3>
|
|
52
|
+
|
|
53
|
+
<table>
|
|
54
|
+
<tr>
|
|
55
|
+
<th>Order Number</th>
|
|
56
|
+
<th>Status</th>
|
|
57
|
+
<th>Date</th>
|
|
58
|
+
<th>Total Price</th>
|
|
59
|
+
</tr>
|
|
60
|
+
<% @orders.each do |order| %>
|
|
61
|
+
<tr class="<%= cycle('odd', 'even') %>">
|
|
62
|
+
<td><%= link_to order.order_number, order_history_details_path(order.order_number) %></td>
|
|
63
|
+
<td><%= order.order_status %></td>
|
|
64
|
+
<td><%= order.created_at.strftime("%m/%d/%Y") if order.created_at.present? %></td>
|
|
65
|
+
<td><%= order.grand_total if order.grand_total.present? %></td>
|
|
66
|
+
</tr>
|
|
67
|
+
<% end %>
|
|
68
|
+
</table>
|
|
69
|
+
</div>
|
|
70
|
+
<p><%= link_to "View Full Order History", order_history_path %></p>
|
|
71
|
+
</div>
|
|
72
|
+
<% end %>
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<%= render :partial => "order_history" if @orders.present? %>
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
<% if @current_order.present? then %>
|
|
2
|
+
<div class="confirmOrder">
|
|
3
|
+
<h2 class="category ordernumber">Order Number: <%= @current_order.order_number %></h2>
|
|
4
|
+
<h3 class="date"><%= @current_order.created_at.strftime("%d %B %Y") unless @current_order.created_at.blank? %></h3>
|
|
5
|
+
<div class="clear"></div>
|
|
6
|
+
|
|
7
|
+
<table>
|
|
8
|
+
<tr>
|
|
9
|
+
<th class="left">Product</th>
|
|
10
|
+
<th>Price</th>
|
|
11
|
+
<th>Quantity</th>
|
|
12
|
+
<th>Total</th>
|
|
13
|
+
</tr>
|
|
14
|
+
<% order = @current_order
|
|
15
|
+
|
|
16
|
+
total_price = order.grand_total %>
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
<% order.order_items.each do |order_item| %>
|
|
20
|
+
<tr class="<%= cycle('odd', 'even') %>">
|
|
21
|
+
<td class="first"><%= order_item.product_name %></td>
|
|
22
|
+
<td><%= rands(order_item.price) %></td>
|
|
23
|
+
<td><%= order_item.quantity %></td>
|
|
24
|
+
<td><%= rands(order_item.total) %></td>
|
|
25
|
+
</tr>
|
|
26
|
+
<% end %>
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
<tr>
|
|
30
|
+
<td class="total first" colspan="3">TOTAL PRICE</td>
|
|
31
|
+
<td class="total"><%= rands(total_price) %></td>
|
|
32
|
+
</tr>
|
|
33
|
+
|
|
34
|
+
</table>
|
|
35
|
+
</div>
|
|
36
|
+
<% end %>
|
|
37
|
+
|
|
38
|
+
<%= link_to "Back", :back %>
|
|
39
|
+
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
en:
|
|
2
|
+
shared:
|
|
3
|
+
admin:
|
|
4
|
+
image_picker:
|
|
5
|
+
image: image
|
|
6
|
+
plugins:
|
|
7
|
+
line_items:
|
|
8
|
+
title: Line Items
|
|
9
|
+
carts:
|
|
10
|
+
title: Carts
|
|
11
|
+
customers:
|
|
12
|
+
title: Customers
|
|
13
|
+
products:
|
|
14
|
+
title: Products
|
|
15
|
+
categories:
|
|
16
|
+
title: Categories
|
|
17
|
+
admin:
|
|
18
|
+
line_items:
|
|
19
|
+
actions:
|
|
20
|
+
reorder: Reorder Line Items
|
|
21
|
+
create_new: Add New Line Item
|
|
22
|
+
reorder_done: Done Reordering Line Items
|
|
23
|
+
records:
|
|
24
|
+
no_items_yet: There are no Line Items yet. Click "Add New Line Item" to add your first line item.
|
|
25
|
+
title: Line Items
|
|
26
|
+
sorry_no_results: Sorry! There are no results found.
|
|
27
|
+
line_item:
|
|
28
|
+
edit: Edit this line item
|
|
29
|
+
delete: Remove this line item forever
|
|
30
|
+
view_live_html: View this line item live <br/><em>(opens in a new window)</em>
|
|
31
|
+
carts:
|
|
32
|
+
cart:
|
|
33
|
+
edit: Edit this cart
|
|
34
|
+
delete: Remove this cart forever
|
|
35
|
+
view_live_html: View this cart live <br/><em>(opens in a new window)</em>
|
|
36
|
+
actions:
|
|
37
|
+
reorder: Reorder Carts
|
|
38
|
+
create_new: Add New Cart
|
|
39
|
+
reorder_done: Done Reordering Carts
|
|
40
|
+
records:
|
|
41
|
+
no_items_yet: There are no Carts yet. Click "Add New Cart" to add your first cart.
|
|
42
|
+
title: Carts
|
|
43
|
+
sorry_no_results: Sorry! There are no results found.
|
|
44
|
+
customers:
|
|
45
|
+
actions:
|
|
46
|
+
create_new: Add New Customer
|
|
47
|
+
reorder: Reorder Customers
|
|
48
|
+
reorder_done: Done Reordering Customers
|
|
49
|
+
records:
|
|
50
|
+
title: Customers
|
|
51
|
+
sorry_no_results: Sorry! There are no results found.
|
|
52
|
+
no_items_yet: There are no Customers yet. Click "Add New Customer" to add your first customer.
|
|
53
|
+
customer:
|
|
54
|
+
view_live_html: View this customer live <br/><em>(opens in a new window)</em>
|
|
55
|
+
edit: Edit this customer
|
|
56
|
+
delete: Remove this customer forever
|
|
57
|
+
categories:
|
|
58
|
+
actions:
|
|
59
|
+
create_new: Add New Category
|
|
60
|
+
reorder: Reorder Categories
|
|
61
|
+
reorder_done: Done Reordering Categories
|
|
62
|
+
records:
|
|
63
|
+
title: Categories
|
|
64
|
+
sorry_no_results: Sorry! There are no results found.
|
|
65
|
+
no_items_yet: There are no Categories yet. Click "Add New Category" to add your first category.
|
|
66
|
+
category:
|
|
67
|
+
view_live_html: View this category live <br/><em>(opens in a new window)</em>
|
|
68
|
+
edit: Edit this category
|
|
69
|
+
delete: Remove this category forever
|
|
70
|
+
products:
|
|
71
|
+
actions:
|
|
72
|
+
create_new: Add New Product
|
|
73
|
+
reorder: Reorder Products
|
|
74
|
+
reorder_done: Done Reordering Products
|
|
75
|
+
records:
|
|
76
|
+
title: Products
|
|
77
|
+
sorry_no_results: Sorry! There are no results found.
|
|
78
|
+
no_items_yet: There are no Products yet. Click "Add New Product" to add your first product.
|
|
79
|
+
product:
|
|
80
|
+
view_live_html: View this product live <br/><em>(opens in a new window)</em>
|
|
81
|
+
edit: Edit this product
|
|
82
|
+
delete: Remove this product forever
|
|
83
|
+
categories:
|
|
84
|
+
show:
|
|
85
|
+
other: Other Categories
|
|
86
|
+
products:
|
|
87
|
+
show:
|
|
88
|
+
other: Other Products
|
|
89
|
+
customers:
|
|
90
|
+
show:
|
|
91
|
+
other: Other Customers
|
|
92
|
+
line_items:
|
|
93
|
+
show:
|
|
94
|
+
other: Other Line Items
|
|
95
|
+
carts:
|
|
96
|
+
show:
|
|
97
|
+
other: Other Carts
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
fr:
|
|
2
|
+
shared:
|
|
3
|
+
admin:
|
|
4
|
+
image_picker:
|
|
5
|
+
image: image
|
|
6
|
+
plugins:
|
|
7
|
+
products:
|
|
8
|
+
title: Products
|
|
9
|
+
admin:
|
|
10
|
+
products:
|
|
11
|
+
actions:
|
|
12
|
+
create_new: Créer un(e) nouve(au/l/lle) Product
|
|
13
|
+
reorder: Réordonner les Products
|
|
14
|
+
reorder_done: Fin de réordonnancement des Products
|
|
15
|
+
records:
|
|
16
|
+
title: Products
|
|
17
|
+
sorry_no_results: "Désolé ! Aucun résultat."
|
|
18
|
+
no_items_yet: 'Il n''y a actuellement aucun(e) Product. Cliquer sur "Créer un(e) nouve(au/l/lle) Product" pour créer votre premi(er/ère) product.'
|
|
19
|
+
product:
|
|
20
|
+
view_live_html: Voir ce(t/tte) product <br/><em>(Ouvre une nouvelle fenêtre)</em>
|
|
21
|
+
edit: Modifier ce(t/tte) product
|
|
22
|
+
delete: Supprimer définitivement ce(t/tte) product
|
|
23
|
+
products:
|
|
24
|
+
show:
|
|
25
|
+
other: Autres Products
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
lolcat:
|
|
2
|
+
shared:
|
|
3
|
+
admin:
|
|
4
|
+
image_picker:
|
|
5
|
+
image: IMAGE
|
|
6
|
+
plugins:
|
|
7
|
+
products:
|
|
8
|
+
title: Products
|
|
9
|
+
admin:
|
|
10
|
+
products:
|
|
11
|
+
actions:
|
|
12
|
+
create_new: CREATE NEW Product
|
|
13
|
+
reorder: REORDR Products
|
|
14
|
+
reorder_done: DUN REORDERIN Products
|
|
15
|
+
records:
|
|
16
|
+
title: Products
|
|
17
|
+
sorry_no_results: SRY! THAR R NO RESULTS FINDZ.
|
|
18
|
+
no_items_yet: THAR R NO Products YET. CLICK "CREATE NEW Product" 2 ADD UR FURST product.
|
|
19
|
+
product:
|
|
20
|
+
view_live_html: VIEW DIS product LIV <BR/><EM>(OPENS IN NEW WINDOW)</EM>
|
|
21
|
+
edit: EDIT DIS product
|
|
22
|
+
delete: REMOOV DIS product FOREVR
|
|
23
|
+
products:
|
|
24
|
+
show:
|
|
25
|
+
other: OTHR Products
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
nb:
|
|
2
|
+
plugins:
|
|
3
|
+
products:
|
|
4
|
+
title: Products
|
|
5
|
+
admin:
|
|
6
|
+
products:
|
|
7
|
+
actions:
|
|
8
|
+
create_new: Lag en ny Product
|
|
9
|
+
reorder: Endre rekkefølgen på Products
|
|
10
|
+
reorder_done: Ferdig å endre rekkefølgen Products
|
|
11
|
+
records:
|
|
12
|
+
title: Products
|
|
13
|
+
sorry_no_results: Beklager! Vi fant ikke noen resultater.
|
|
14
|
+
no_items_yet: Det er ingen Products enda. Klikk på "Lag en ny Product" for å legge til din første product.
|
|
15
|
+
product:
|
|
16
|
+
view_live_html: Vis hvordan denne product ser ut offentlig <br/><em>(åpner i et nytt vindu)</em>
|
|
17
|
+
edit: Rediger denne product
|
|
18
|
+
delete: Fjern denne product permanent
|
|
19
|
+
products:
|
|
20
|
+
show:
|
|
21
|
+
other: Andre Products
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
nl:
|
|
2
|
+
plugins:
|
|
3
|
+
products:
|
|
4
|
+
title: Products
|
|
5
|
+
admin:
|
|
6
|
+
products:
|
|
7
|
+
actions:
|
|
8
|
+
create_new: Maak een nieuwe Product
|
|
9
|
+
reorder: Wijzig de volgorde van de Products
|
|
10
|
+
reorder_done: Klaar met het wijzingen van de volgorde van de Products
|
|
11
|
+
records:
|
|
12
|
+
title: Products
|
|
13
|
+
sorry_no_results: Helaas! Er zijn geen resultaten gevonden.
|
|
14
|
+
no_items_yet: Er zijn nog geen Products. Druk op 'Maak een nieuwe Product' om de eerste aan te maken.
|
|
15
|
+
product:
|
|
16
|
+
view_live_html: Bekijk deze product op de website <br/><em>(opent een nieuw venster)</em>
|
|
17
|
+
edit: Bewerk deze product
|
|
18
|
+
delete: Verwijder deze product voor eeuwig
|
|
19
|
+
products:
|
|
20
|
+
show:
|
|
21
|
+
other: Andere Products
|
data/config/routes.rb
ADDED
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
::Refinery::Application.routes.draw do
|
|
2
|
+
devise_for :customers
|
|
3
|
+
|
|
4
|
+
resources :products, :only => [:index, :show]
|
|
5
|
+
|
|
6
|
+
resources :categories, :only => [:index, :show] do
|
|
7
|
+
resources :products, :only => [:index, :show]
|
|
8
|
+
end
|
|
9
|
+
|
|
10
|
+
resources :customers, :only => [:show]
|
|
11
|
+
resources :addresses
|
|
12
|
+
resources :profiles
|
|
13
|
+
resources :carts, :only => [:show]
|
|
14
|
+
resources :line_items, :only => [:delete]
|
|
15
|
+
|
|
16
|
+
match "account_details" => "profiles#account_details", :as => "account_details"
|
|
17
|
+
match "address_details" => "profiles#address_details", :as => "address_details"
|
|
18
|
+
|
|
19
|
+
match "add_to_cart/:product_id" => "carts#add_to_cart", :as => "add_to_cart"
|
|
20
|
+
match "show_cart" => "carts#show_cart", :as => "show_cart"
|
|
21
|
+
match "increment_cart/:product_id" => "carts#increment_cart", :as => "increment_cart"
|
|
22
|
+
match "destroy_line_item/:id" => "line_items#destroy", :as => "destroy_line_item"
|
|
23
|
+
|
|
24
|
+
# Famous Categories
|
|
25
|
+
match 'best_selling' => 'products#best_selling', :as => :best_selling
|
|
26
|
+
match 'featured' => 'products#featured', :as => :featured
|
|
27
|
+
match 'new_product' => 'products#new_product', :as => :new_product
|
|
28
|
+
|
|
29
|
+
scope(:path => 'refinery', :as => 'admin', :module => 'admin') do
|
|
30
|
+
resources :products do
|
|
31
|
+
collection do
|
|
32
|
+
put :update_prices
|
|
33
|
+
post :update_positions
|
|
34
|
+
end
|
|
35
|
+
end
|
|
36
|
+
resources :categories, :except => :show do
|
|
37
|
+
resources :products
|
|
38
|
+
collection do
|
|
39
|
+
post :update_positions
|
|
40
|
+
end
|
|
41
|
+
end
|
|
42
|
+
resources :customers do
|
|
43
|
+
collection do
|
|
44
|
+
post :update_positions
|
|
45
|
+
end
|
|
46
|
+
end
|
|
47
|
+
resources :carts, :except => :show do
|
|
48
|
+
collection do
|
|
49
|
+
post :update_positions
|
|
50
|
+
end
|
|
51
|
+
end
|
|
52
|
+
resources :line_items, :except => :show do
|
|
53
|
+
collection do
|
|
54
|
+
post :update_positions
|
|
55
|
+
end
|
|
56
|
+
end
|
|
57
|
+
end
|
|
58
|
+
end
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
require 'refinerycms-base'
|
|
2
|
+
|
|
3
|
+
module Refinery
|
|
4
|
+
module Carts
|
|
5
|
+
|
|
6
|
+
class << self
|
|
7
|
+
attr_accessor :root
|
|
8
|
+
def root
|
|
9
|
+
@root ||= Pathname.new(File.expand_path('../../', __FILE__))
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
class Engine < Rails::Engine
|
|
14
|
+
initializer "static assets" do |app|
|
|
15
|
+
app.middleware.insert_after ::ActionDispatch::Static, ::ActionDispatch::Static, "#{root}/public"
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
config.after_initialize do
|
|
19
|
+
Refinery::Plugin.register do |plugin|
|
|
20
|
+
plugin.name = "carts"
|
|
21
|
+
plugin.pathname = root
|
|
22
|
+
plugin.activity = {
|
|
23
|
+
:class => Cart
|
|
24
|
+
}
|
|
25
|
+
plugin.hide_from_menu = true
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
require File.expand_path('../refinerycms-line_items', __FILE__)
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
require 'refinerycms-base'
|
|
2
|
+
|
|
3
|
+
module Refinery
|
|
4
|
+
module Categories
|
|
5
|
+
|
|
6
|
+
class << self
|
|
7
|
+
attr_accessor :root
|
|
8
|
+
def root
|
|
9
|
+
@root ||= Pathname.new(File.expand_path('../../', __FILE__))
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
class Engine < Rails::Engine
|
|
14
|
+
initializer "static assets" do |app|
|
|
15
|
+
app.middleware.insert_after ::ActionDispatch::Static, ::ActionDispatch::Static, "#{root}/public"
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
config.after_initialize do
|
|
19
|
+
Refinery::Plugin.register do |plugin|
|
|
20
|
+
plugin.name = "categories"
|
|
21
|
+
plugin.pathname = root
|
|
22
|
+
plugin.activity = {
|
|
23
|
+
:class => Category,
|
|
24
|
+
:title => 'name'
|
|
25
|
+
}
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
end
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
require 'refinerycms-base'
|
|
2
|
+
|
|
3
|
+
module Refinery
|
|
4
|
+
module Customers
|
|
5
|
+
|
|
6
|
+
class << self
|
|
7
|
+
attr_accessor :root
|
|
8
|
+
def root
|
|
9
|
+
@root ||= Pathname.new(File.expand_path('../../', __FILE__))
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
class Engine < Rails::Engine
|
|
14
|
+
initializer "static assets" do |app|
|
|
15
|
+
app.middleware.insert_after ::ActionDispatch::Static, ::ActionDispatch::Static, "#{root}/public"
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
initializer 'Customer.helper' do |app|
|
|
19
|
+
ActionView::Base.send :include, AddressHelper
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
config.after_initialize do
|
|
23
|
+
Refinery::Plugin.register do |plugin|
|
|
24
|
+
plugin.name = "customers"
|
|
25
|
+
plugin.pathname = root
|
|
26
|
+
plugin.activity = {
|
|
27
|
+
:class => Customer,
|
|
28
|
+
:title => 'name'
|
|
29
|
+
}
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
require 'refinerycms-base'
|
|
2
|
+
|
|
3
|
+
module Refinery
|
|
4
|
+
module LineItems
|
|
5
|
+
|
|
6
|
+
class << self
|
|
7
|
+
attr_accessor :root
|
|
8
|
+
def root
|
|
9
|
+
@root ||= Pathname.new(File.expand_path('../../', __FILE__))
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
class Engine < Rails::Engine
|
|
14
|
+
initializer "static assets" do |app|
|
|
15
|
+
app.middleware.insert_after ::ActionDispatch::Static, ::ActionDispatch::Static, "#{root}/public"
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
config.after_initialize do
|
|
19
|
+
Refinery::Plugin.register do |plugin|
|
|
20
|
+
plugin.name = "line_items"
|
|
21
|
+
plugin.pathname = root
|
|
22
|
+
plugin.activity = {
|
|
23
|
+
:class => LineItem
|
|
24
|
+
}
|
|
25
|
+
plugin.hide_from_menu = true
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
end
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
require 'refinerycms-base'
|
|
2
|
+
require 'refinerycms-categories'
|
|
3
|
+
require 'refinerycms-customers'
|
|
4
|
+
require 'refinerycms-carts'
|
|
5
|
+
require 'refinerycms-line_items'
|
|
6
|
+
require 'refinery'
|
|
7
|
+
|
|
8
|
+
module Refinery
|
|
9
|
+
module Products
|
|
10
|
+
|
|
11
|
+
class << self
|
|
12
|
+
attr_accessor :root
|
|
13
|
+
def root
|
|
14
|
+
@root ||= Pathname.new(File.expand_path('../../', __FILE__))
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
class Engine < Rails::Engine
|
|
19
|
+
initializer "static assets" do |app|
|
|
20
|
+
app.middleware.insert_after ::ActionDispatch::Static, ::ActionDispatch::Static, "#{root}/public"
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
initializer 'Products.helper' do |app|
|
|
24
|
+
ActionView::Base.send :include, ProductsHelper
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
#refinery.after_inclusion do
|
|
28
|
+
# #Page.send :has_many_page_images
|
|
29
|
+
# #Product.class_eval { has_many :variants }
|
|
30
|
+
# #LineItem.class_eval { belongs_to :variant}
|
|
31
|
+
#
|
|
32
|
+
# #require 'line_item'
|
|
33
|
+
# #require 'product'
|
|
34
|
+
#
|
|
35
|
+
# LineItem rescue NameError #this is the ugliest thing ever. Need to reference so it autoloads and then we check for it
|
|
36
|
+
# Product rescue NameError #this is the ugliest thing ever. Need to reference so it autoloads and then we check for it
|
|
37
|
+
#
|
|
38
|
+
# puts "******************************** defined?(LineItem)= #{defined?(LineItem)}"
|
|
39
|
+
# puts "******************************** defined?(Product)= #{defined?(Product)}"
|
|
40
|
+
#
|
|
41
|
+
# Product.class_eval { has_many :variants }
|
|
42
|
+
# LineItem.class_eval { belongs_to :variant}
|
|
43
|
+
#
|
|
44
|
+
# #LineItem.send :include, Refinery::Variants::LineItemExtender
|
|
45
|
+
# #Product.send :include, Refinery::Variants::ProductExtender
|
|
46
|
+
#end
|
|
47
|
+
|
|
48
|
+
#config.to_prepare do
|
|
49
|
+
# Product.class_eval { has_many :variants }
|
|
50
|
+
# LineItem.class_eval { belongs_to :variant}
|
|
51
|
+
#end
|
|
52
|
+
|
|
53
|
+
config.after_initialize do
|
|
54
|
+
Refinery::Plugin.register do |plugin|
|
|
55
|
+
plugin.name = "products"
|
|
56
|
+
plugin.pathname = root
|
|
57
|
+
plugin.activity = {
|
|
58
|
+
:class => Product,
|
|
59
|
+
:title => 'name'
|
|
60
|
+
}
|
|
61
|
+
end
|
|
62
|
+
end
|
|
63
|
+
end
|
|
64
|
+
end
|
|
65
|
+
end
|