1: | <?php
|
2: | namespace Opencart\Catalog\Model\Extension\Opencart\Total;
|
3: | |
4: | |
5: | |
6: | |
7: |
|
8: | class Handling extends \Opencart\System\Engine\Model {
|
9: | |
10: | |
11: | |
12: | |
13: | |
14: | |
15: | |
16: | |
17: |
|
18: | public function getTotal(array &$totals, array &$taxes, float &$total): void {
|
19: | if (($this->cart->getSubTotal() > (float)$this->config->get('total_handling_total')) && ($this->cart->getSubTotal() > 0)) {
|
20: | $this->load->language('extension/opencart/total/handling');
|
21: |
|
22: | $totals[] = [
|
23: | 'extension' => 'opencart',
|
24: | 'code' => 'handling',
|
25: | 'title' => $this->language->get('text_handling'),
|
26: | 'value' => (float)$this->config->get('total_handling_fee'),
|
27: | 'sort_order' => (int)$this->config->get('total_handling_sort_order')
|
28: | ];
|
29: |
|
30: | if ($this->config->get('total_handling_tax_class_id')) {
|
31: | $tax_rates = $this->tax->getRates((float)$this->config->get('total_handling_fee'), (int)$this->config->get('total_handling_tax_class_id'));
|
32: |
|
33: | foreach ($tax_rates as $tax_rate) {
|
34: | if (!isset($taxes[$tax_rate['tax_rate_id']])) {
|
35: | $taxes[$tax_rate['tax_rate_id']] = $tax_rate['amount'];
|
36: | } else {
|
37: | $taxes[$tax_rate['tax_rate_id']] += $tax_rate['amount'];
|
38: | }
|
39: | }
|
40: | }
|
41: |
|
42: | $total += (float)$this->config->get('total_handling_fee');
|
43: | }
|
44: | }
|
45: | }
|
46: | |