effective_orders 1.6.6 → 1.7.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 454888d9685c161b640cb1704d16ed37089a843b
4
- data.tar.gz: e21c978af3d83dd4104a0b56929dc000f3daf8dc
3
+ metadata.gz: cb1d6669051ee4a4c2caf28dccbac451bdd3221b
4
+ data.tar.gz: 6ad503455f871663204142a019802e58e0761139
5
5
  SHA512:
6
- metadata.gz: b2bab5bcdf09101c8bd475e27c0db23e2cba18b52b4b8bc8247d20361eb5d8c5c0ae597a4eefeb1d5d1bda7d6143e55068914cedf42a967267e3bbcc0532f7c1
7
- data.tar.gz: c8bf6d21f7f4e312c21a9693b246f8c81f5a525ab40c9d130c3398c3ac219141fb696e3b35366d77aacbe6acb794ce026e43f44de6a613d3dd33bb6585f78f8e
6
+ metadata.gz: 384f81697a59dce11cd020734531dc460d4d2e6fbb771687d13179375ad166d7f4c01d9a21b819018e2d91ddf760e605f1c1e022645a72e9bbfa7f92b212f63d
7
+ data.tar.gz: 49ed6f3e16ca6745070ac459f181f20c89767b3dd7a472a2424aec5415f91724237c589ac667e853010e58458cc545015771e04f0c1242db8bb80a84c8fea4fe
@@ -1,9 +1,10 @@
1
1
  module Effective
2
2
  class OrdersMailer < ActionMailer::Base
3
3
  helper EffectiveOrdersHelper
4
-
5
4
  default :from => EffectiveOrders.mailer[:default_from]
6
5
 
6
+ layout EffectiveOrders.mailer[:layout].presence || 'effective_orders_mailer_layout'
7
+
7
8
  def order_receipt_to_admin(order)
8
9
  @order = order
9
10
  mail(:to => EffectiveOrders.mailer[:admin_email], :subject => receipt_to_admin_subject(order))
@@ -14,10 +14,7 @@
14
14
  .col-sm-6
15
15
  - if order.purchased?
16
16
  %p Receipt: ##{order.to_param}
17
+ %p Purchased at: #{order.purchased_at.strftime("%Y-%m-%d %H:%M")}
17
18
  - elsif order.persisted?
18
19
  %p Order: ##{order.to_param}
19
-
20
- - if order.purchased?
21
- %p Purchased at: #{order.purchased_at.strftime("%Y-%m-%d %H:%M")}
22
- - else
23
20
  %p Date: #{Time.zone.now.strftime("%Y-%m-%d %H:%M")}
@@ -1,48 +1,54 @@
1
1
  - include_download_column = order.purchased? && order.order_items.any? { |order_item| order_item.purchased_download_url.present? rescue false }
2
+ - include_quantity_column = order.order_items.any? { |order_item| order_item.quantity > 1 }
2
3
 
3
- .effective-order
4
+ .effective-order-items
4
5
  %table.table
5
6
  %thead
6
7
  %tr
7
- %th.quantity Qty
8
- %th.item= order.order_items.length > 1 ? 'Items' : 'Item'
8
+ - if include_quantity_column
9
+ %th.quantity Qty
9
10
  - if include_download_column
10
11
  %th.download Download
12
+ %th.item= order.order_items.length > 1 ? 'Items' : 'Item'
11
13
  %th.price Price
12
14
 
13
15
  %tbody
14
16
  - order.order_items.each do |item|
15
17
  %tr
16
- %td.quantity= item.quantity
17
- %td.item
18
- = item.title.html_safe
19
- - if order.new_record? && item.purchasable.kind_of?(Effective::Subscription)
20
- = render :partial => 'effective/orders/stripe/subscription_fields', :locals => {:form => form, :subscription => item.purchasable }
21
-
18
+ - if include_quantity_column
19
+ %td.quantity= item.quantity
22
20
  - if include_download_column
23
21
  %td.download
24
22
  - if item.purchased? && (item.purchased_download_url rescue nil).present?
25
23
  = link_to 'download', item.purchased_download_url
26
24
  - else
27
25
  = '-'
26
+ %td.item
27
+ = item.title.html_safe
28
+ - if order.new_record? && item.purchasable.kind_of?(Effective::Subscription)
29
+ = render :partial => 'effective/orders/stripe/subscription_fields', :locals => {:form => form, :subscription => item.purchasable }
30
+
28
31
  %td.price= price_to_currency(item.price)
29
32
 
30
33
  %tfoot
31
34
  - if order.tax > 0
32
35
  %tr
33
- %th.quantity
36
+ - if include_quantity_column
37
+ %th.quantity
34
38
  - if include_download_column
35
39
  %th.download
36
40
  %th.subtotal Subtotal
37
41
  %td.price.subtotal-price= price_to_currency(order.subtotal)
38
42
  %tr
39
- %th.quantity
43
+ - if include_quantity_column
44
+ %th.quantity
40
45
  - if include_download_column
41
46
  %th.download
42
47
  %th.tax Tax
43
48
  %td.price.tax-price= price_to_currency(order.tax)
44
49
  %tr
45
- %th.quantity
50
+ - if include_quantity_column
51
+ %th.quantity
46
52
  - if include_download_column
47
53
  %th.download
48
54
  %th.total Total Due
@@ -1,8 +1,2 @@
1
- !!!
2
- %html
3
- %head
4
- %meta{:content => 'text/html; charset=UTF-8', 'http-equiv' => "Content-Type"}
5
- %body
6
- %p An order has been successfully purchased:
7
-
8
- = render(@order, no_order_actions: true)
1
+ %p.effective-orders-receipt-info An order has been successfully purchased:
2
+ = render(@order, no_order_actions: true)
@@ -1,8 +1,2 @@
1
- !!!
2
- %html
3
- %head
4
- %meta{:content => 'text/html; charset=UTF-8', 'http-equiv' => "Content-Type"}
5
- %body
6
- %p Your order has been successfully purchased:
7
-
8
- = render(@order, no_order_actions: true)
1
+ %p.effective-orders-receipt-info Your order has been successfully purchased:
2
+ = render(@order, no_order_actions: true)
@@ -1,30 +1,25 @@
1
- !!!
2
- %html
3
- %head
4
- %meta{:content => 'text/html; charset=UTF-8', 'http-equiv' => "Content-Type"}
5
- %body
6
- %p= @subject
1
+ %p.effective-orders-receipt-info= @subject
7
2
 
8
- %table.table
9
- %thead
10
- %tr
11
- %th Item
12
- %th Price
13
- %tbody
14
- - @order_items.each do |item|
15
- %tr
16
- %td
17
- - if item.quantity > 1
18
- = "#{item.quantity}x "
19
- = item.title
20
- %td= price_to_currency(item.subtotal)
21
- %tfoot
22
- %tr
23
- %th Subtotal
24
- %td= price_to_currency(@order_items.map { |oi| oi.subtotal }.sum)
25
- %tr
26
- %th Tax
27
- %td= price_to_currency(@order_items.map { |oi| oi.tax }.sum)
28
- %tr
29
- %th Total
30
- %td= price_to_currency(@order_items.map { |oi| oi.total }.sum)
3
+ %table.table
4
+ %thead
5
+ %tr
6
+ %th Item
7
+ %th Price
8
+ %tbody
9
+ - @order_items.each do |item|
10
+ %tr
11
+ %td
12
+ - if item.quantity > 1
13
+ = "#{item.quantity}x "
14
+ = item.title
15
+ %td= price_to_currency(item.subtotal)
16
+ %tfoot
17
+ %tr
18
+ %th Subtotal
19
+ %td= price_to_currency(@order_items.map { |oi| oi.subtotal }.sum)
20
+ %tr
21
+ %th Tax
22
+ %td= price_to_currency(@order_items.map { |oi| oi.tax }.sum)
23
+ %tr
24
+ %th Total
25
+ %td= price_to_currency(@order_items.map { |oi| oi.total }.sum)
@@ -0,0 +1,27 @@
1
+ !!!
2
+ %html{style: 'background: #fff;'}
3
+ %head
4
+ %meta{:content => 'text/html; charset=UTF-8', 'http-equiv' => 'Content-Type'}
5
+ :css
6
+ .effective-order table.table { min-width: 650px; }
7
+ .effective-order { text-align: left; }
8
+ .effective-order .price { text-align: right; }
9
+ .effective-order tfoot th { text-align: right; }
10
+ .effective-order tfoot tr:first-child td { padding-top: 24px; }
11
+ .effective-order tfoot tr:first-child th { padding-top: 24px; }
12
+ .effective-order-shipping { padding-top: 12px; padding-bottom: 12px; }
13
+
14
+ %body{style: 'background: #fff;'}
15
+ %table{style: 'width: 100%;'}
16
+ %tr
17
+ %td
18
+ %table{style: 'max-width: 650px; margin: 4px auto 30px;'}
19
+ %thead{style: 'border-bottom: 2px solid transparent; width: 100%;'}
20
+ %tr{style: 'background: #000; color: #fff;'}
21
+ %th{style: 'padding-top: 2px;'}
22
+ %tbody{style: 'background: #fff; width: 100%; margin-bottom: 4px;'}
23
+ %tr
24
+ %td= yield
25
+ %tfoot{style: 'border-bottom: 2px solid transparent; width: 100%;'}
26
+ %tr{style: 'background: #000; color: #fff;'}
27
+ %th{style: 'padding-top: 2px;'}
@@ -1,3 +1,3 @@
1
1
  module EffectiveOrders
2
- VERSION = '1.6.6'.freeze
2
+ VERSION = '1.7.0'.freeze
3
3
  end
@@ -139,6 +139,7 @@ EffectiveOrders.setup do |config|
139
139
  :send_order_receipt_to_admin => true,
140
140
  :send_order_receipt_to_buyer => true,
141
141
  :send_order_receipt_to_seller => true, # Only applies to StripeConnect
142
+ :layout => 'effective_orders_mailer_layout',
142
143
  :admin_email => 'admin@example.com',
143
144
  :default_from => 'info@example.com',
144
145
  :subject_prefix => '[example]',
@@ -345,7 +345,7 @@ describe Effective::OrdersController, type: :controller do
345
345
  it 'creates a purchased order' do
346
346
  post :create, valid_order_attributes
347
347
  assigns(:order).purchased?.should eq true
348
- assigns(:order).payment[:details].should eq 'zero-dollar order'
348
+ assigns(:order).payment[:details].should eq 'automatic purchase of free order.'
349
349
  end
350
350
 
351
351
  it 'destroys the current user cart' do
@@ -205,3 +205,5 @@
205
205
   (0.2ms) SELECT MAX("orders"."id") FROM "orders"
206
206
   (0.3ms) SELECT MAX("orders"."id") FROM "orders"
207
207
   (0.4ms) SELECT MAX("orders"."id") FROM "orders"
208
+  (0.3ms) SELECT MAX("orders"."id") FROM "orders"
209
+  (0.4ms) SELECT MAX("orders"."id") FROM "orders"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: effective_orders
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.6.6
4
+ version: 1.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Code and Effect
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-11-30 00:00:00.000000000 Z
11
+ date: 2015-12-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -380,6 +380,7 @@ files:
380
380
  - app/views/effective/subscriptions/index.html.haml
381
381
  - app/views/effective/subscriptions/new.html.haml
382
382
  - app/views/effective/subscriptions/show.html.haml
383
+ - app/views/layouts/effective_orders_mailer_layout.html.haml
383
384
  - config/routes.rb
384
385
  - db/migrate/01_create_effective_orders.rb.erb
385
386
  - db/upgrade/02_upgrade_effective_orders_from03x.rb.erb