![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/cartforge.co/app/code/StripeIntegration/Payments/Model/ |
<?php namespace StripeIntegration\Payments\Model; use Magento\Quote\Model\Quote\Address\Total\AbstractTotal; use Magento\Quote\Model\Quote; use Magento\Quote\Api\Data\ShippingAssignmentInterface; use Magento\Quote\Model\Quote\Address\Total; class Prorations extends AbstractTotal { public function __construct() { $this->setCode('prorations'); } /** * @param Quote $quote * @param ShippingAssignmentInterface $shippingAssignment * @param Total $total * @return $this */ public function collect( Quote $quote, ShippingAssignmentInterface $shippingAssignment, Total $total ) { parent::collect($quote, $shippingAssignment, $total); $items = $shippingAssignment->getItems(); if (!count($items)) return $this; $amount = 0; $baseAmount = 0; $total->setProrationsAmount($amount); $total->setBaseProrationsAmount($baseAmount); // Add the fee to the grand total $total->addTotalAmount('prorations', $amount); $total->addBaseTotalAmount('base_prorations', $baseAmount); return $this; } /** * @param Total $total */ protected function clearValues(Total $total) { $total->setTotalAmount('prorations', 0); $total->setBaseTotalAmount('base_prorations', 0); $total->setProrationsAmount(0); $total->setBaseProrationsAmount(0); $total->setGrandTotal(0); $total->setBaseGrandTotal(0); } /** * @param Quote $quote * @param Total $total * @return array */ public function fetch(Quote $quote, Total $total) { $amount = 0; $baseAmount = 0; if ($baseAmount) { return [ 'code' => $this->getCode(), 'title' => 'Prorations', 'base_value' => $baseAmount, 'value' => $amount ]; } return null; } /** * @return \Magento\Framework\Phrase */ public function getLabel() { return __('Prorations'); } }