Show only tabular price breakdown, no graph

This commit is contained in:
Maikel Linke
2020-04-09 16:28:55 +10:00
parent 065314f0e4
commit 3e789fdb84
8 changed files with 39 additions and 94 deletions

View File

@@ -15,6 +15,3 @@ Darkswarm.directive 'priceBreakdownPopup', ->
replace: true
templateUrl: 'price_breakdown.html'
scope: false
link: (scope, elem, attrs) ->
scope.expanded = false unless scope.expanded?

View File

@@ -1,10 +0,0 @@
Darkswarm.directive "pricePercentage", ->
restrict: 'E'
replace: true
templateUrl: 'price_percentage.html'
scope:
percentage: '='
link: (scope, elem, attrs) ->
elem.find(".meter").css
width: "#{scope.percentage}%"

View File

@@ -10,7 +10,6 @@ Darkswarm.factory 'Variants', ->
extend: (variant)->
variant.extended_name = @extendedVariantName(variant)
variant.base_price_percentage = Math.round(variant.price / variant.price_with_fees * 100)
variant.line_item ||= @lineItemFor(variant) # line_item may have been initialised in Cart#constructor
variant.line_item.total_price = variant.price_with_fees * variant.line_item.quantity
variant

View File

@@ -1,37 +1,26 @@
.joyride-tip-guide.price_breakdown{"ng-class" => "{ in: tt_isOpen, fade: tt_animation }"}
%span.joyride-nub.right
.joyride-content-wrapper
.collapsed{"ng-show" => "!expanded"}
%price-percentage{percentage: 'variant.base_price_percentage'}
%a{"ng-click" => "expanded = !expanded"}
%span{"ng-bind" => "::'price_breakdown' | t"}
%i.ofn-i_005-caret-down
.expanded{"ng-show" => "expanded"}
%ul
%li.cost
.right {{ ::variant.price | localizeCurrency }}
%span{"ng-bind" => "::'item_cost' | t"}
%li.admin-fee{"ng-if" => "::variant.fees.admin"}
.right {{ ::variant.fees.admin | localizeCurrency }}
%span{"ng-bind" => "::'admin_fee' | t"}
%li.sales-fee{"ng-if" => "::variant.fees.sales"}
.right {{ ::variant.fees.sales | localizeCurrency }}
%span{"ng-bind" => "::'sales_fee' | t"}
%li.packing-fee{"ng-if" => "::variant.fees.packing"}
.right {{ ::variant.fees.packing | localizeCurrency }}
%span{"ng-bind" => "::'packing_fee' | t"}
%li.transport-fee{"ng-if" => "::variant.fees.transport"}
.right {{ ::variant.fees.transport | localizeCurrency }}
%span{"ng-bind" => "::'transport_fee' | t"}
%li.fundraising-fee{"ng-if" => "::variant.fees.fundraising"}
.right {{ ::variant.fees.fundraising | localizeCurrency }}
%span{"ng-bind" => "::'fundraising_fee' | t"}
%li.total
%strong
.right = {{ ::variant.price_with_fees | localizeCurrency }}
 
%a{"ng-click" => "expanded = !expanded"}
%span{"ng-bind" => "::'price_graph' | t"}
%i.ofn-i_006-caret-up
%ul
%li.cost
.right {{ ::variant.price | localizeCurrency }}
%span{"ng-bind" => "::'item_cost' | t"}
%li.admin-fee{"ng-if" => "::variant.fees.admin"}
.right {{ ::variant.fees.admin | localizeCurrency }}
%span{"ng-bind" => "::'admin_fee' | t"}
%li.sales-fee{"ng-if" => "::variant.fees.sales"}
.right {{ ::variant.fees.sales | localizeCurrency }}
%span{"ng-bind" => "::'sales_fee' | t"}
%li.packing-fee{"ng-if" => "::variant.fees.packing"}
.right {{ ::variant.fees.packing | localizeCurrency }}
%span{"ng-bind" => "::'packing_fee' | t"}
%li.transport-fee{"ng-if" => "::variant.fees.transport"}
.right {{ ::variant.fees.transport | localizeCurrency }}
%span{"ng-bind" => "::'transport_fee' | t"}
%li.fundraising-fee{"ng-if" => "::variant.fees.fundraising"}
.right {{ ::variant.fees.fundraising | localizeCurrency }}
%span{"ng-bind" => "::'fundraising_fee' | t"}
%li.total
%strong
.right = {{ ::variant.price_with_fees | localizeCurrency }}
 

View File

@@ -1,4 +0,0 @@
.progress
.right {{::'fees' | t}}
.meter
{{::'item_cost' | t}}

View File

@@ -31,48 +31,25 @@
border-bottom-color: transparent !important;
}
.progress {
background-color: #13bf85;
padding: 0;
border: none;
color: white;
font-size: 0.75rem;
font-style: oblique;
line-height: 1;
height: auto;
.right {
padding: 0.5rem 0.25rem 0 0;
}
.meter {
background-color: #0b8c61;
padding: 0.5rem 0.25rem;
border-right: 1px solid #539f92;
}
ul, li {
list-style: none;
margin: 0;
font-size: 0.875rem;
}
.expanded {
ul, li {
list-style: none;
margin: 0;
font-size: 0.875rem;
}
li {
background-color: #13bf85;
padding: 0 0.25rem;
margin-bottom: 2px;
color: white;
}
li {
background-color: #13bf85;
padding: 0 0.25rem;
margin-bottom: 2px;
color: white;
}
li.cost {
background-color: #0b8c61;
}
li.cost {
background-color: #0b8c61;
}
li:last-child {
margin-bottom: 0.75rem;
}
li:last-child {
margin-bottom: 0.75rem;
}
}

View File

@@ -58,7 +58,7 @@ feature "shopping with variant overrides defined", js: true do
it "calculates fees correctly" do
page.find("#variant-#{product1_variant1.id} .graph-button").click
page.find(".price_breakdown a").click
binding.pry
expect(page).to have_selector 'li.cost div', text: with_currency(55.55)
expect(page).to have_selector 'li.packing-fee div', text: with_currency(5.56)
expect(page).to have_selector 'li.total div', text: "= #{with_currency(61.11)}"

View File

@@ -35,9 +35,6 @@ describe 'Variants service', ->
it "initialises the total_price", ->
expect(Variants.register(variant).line_item.total_price).toEqual 400
it "initialises base price percentage", ->
expect(Variants.register(variant).base_price_percentage).toEqual 81
it "clears registered variants", ->
Variants.register(variant)
expect(Variants.variants[variant.id]).toBe variant