From b8bf3e7464940c688c86c625cb07370dcef33aab Mon Sep 17 00:00:00 2001 From: Marek Svorobovic Date: Tue, 12 Mar 2024 10:31:36 +0200 Subject: [PATCH] MobilePay checkout remove, Vipps logo --- Block/Checkout/MobilePay.php | 107 -------- Controller/Payment/Callback.php | 8 - Controller/Payment/MobilePayRedirect.php | 152 ---------- Helper/Order.php | 259 ------------------ Model/Carrier/Shipping.php | 227 --------------- Model/Config/Source/PaymentLogo.php | 4 + etc/adminhtml/system.xml | 66 ----- etc/config.xml | 21 -- etc/module.xml | 2 +- view/frontend/layout/checkout_index_index.xml | 12 - .../layout/onestepcheckout_index_index.xml | 12 - .../templates/checkout/mobilepay.phtml | 157 ----------- view/frontend/web/images/logo/vipps.png | Bin 0 -> 8636 bytes 13 files changed, 5 insertions(+), 1022 deletions(-) delete mode 100644 Block/Checkout/MobilePay.php delete mode 100644 Controller/Payment/MobilePayRedirect.php delete mode 100644 Model/Carrier/Shipping.php delete mode 100644 view/frontend/templates/checkout/mobilepay.phtml create mode 100644 view/frontend/web/images/logo/vipps.png diff --git a/Block/Checkout/MobilePay.php b/Block/Checkout/MobilePay.php deleted file mode 100644 index 874d78a..0000000 --- a/Block/Checkout/MobilePay.php +++ /dev/null @@ -1,107 +0,0 @@ -scopeConfig = $scopeConfig; - $this->url = $url; - $this->_agreementCollectionFactory = $agreementCollectionFactory; - $this->shipping = $shipping; - parent::__construct($context); - } - - /** - * @return mixed - */ - public function getTitle(){ - return $this->scopeConfig->getValue(self::MOBILEPAY_TITLE_XML_PATH, \Magento\Store\Model\ScopeInterface::SCOPE_STORE); - } - - /** - * @return mixed - */ - public function getDescription(){ - return $this->scopeConfig->getValue(self::MOBILEPAY_DESCRIPTION_XML_PATH, \Magento\Store\Model\ScopeInterface::SCOPE_STORE); - } - - /** - * @return mixed - */ - public function getPopupDescription(){ - return $this->scopeConfig->getValue(self::MOBILEPAY_POPUP_DESCRIPTION_XML_PATH, \Magento\Store\Model\ScopeInterface::SCOPE_STORE); - } - - /** - * @return string - */ - public function getRedirectUrl(){ - return $this->url->getUrl('quickpaygateway/payment/mobilepayredirect'); - } - - /** - * @return mixed - */ - public function getAgreements() - { - if (!$this->hasAgreements()) { - $agreements = []; - if ($this->scopeConfig->isSetFlag('checkout/options/enable_agreements', \Magento\Store\Model\ScopeInterface::SCOPE_STORE)) { - /** @var \Magento\CheckoutAgreements\Model\ResourceModel\Agreement\Collection $agreements */ - $agreements = $this->_agreementCollectionFactory->create(); - $agreements->addStoreFilter($this->_storeManager->getStore()->getId()); - $agreements->addFieldToFilter('is_active', 1); - } - $this->setAgreements($agreements); - } - return $this->getData('agreements'); - } - - /** - * @return mixed - */ - public function getShippingMethods(){ - return $this->shipping->getMobilePayMethods(); - } -} \ No newline at end of file diff --git a/Controller/Payment/Callback.php b/Controller/Payment/Callback.php index 323c0ca..3cad4de 100644 --- a/Controller/Payment/Callback.php +++ b/Controller/Payment/Callback.php @@ -165,14 +165,6 @@ public function execute() } } - if($response->facilitator == 'mobilepay'){ - $order = $this->orderHelper->updateOrderByCallback($order, $response); - - $order->addStatusHistoryComment(__('Order was created from MobilePay Checkout')) - ->setIsCustomerNotified(true) - ->save(); - } - if (!$order->getId()) { $this->logger->debug('Failed to load order with id: ' . $response->order_id); return; diff --git a/Controller/Payment/MobilePayRedirect.php b/Controller/Payment/MobilePayRedirect.php deleted file mode 100644 index abb603e..0000000 --- a/Controller/Payment/MobilePayRedirect.php +++ /dev/null @@ -1,152 +0,0 @@ -_logger = $logger; - $this->orderRepository = $orderRepository; - $this->_adapter = $adapter; - $this->orderHelper = $orderHelper; - $this->checkoutSession = $checkoutSession; - $this->_resultJsonFactory = $resultJsonFactory; - $this->shipping = $shipping; - - parent::__construct($context); - } - - /** - * @return \Magento\Checkout\Model\Session - */ - protected function _getCheckout() - { - return $this->_objectManager->get('Magento\Checkout\Model\Session'); - } - - /** - * Redirect to to QuickPay MobilePay - * - * @return string - */ - public function execute() - { - try { - $response = []; - $params = $this->getRequest()->getParams(); - $resultJson = $this->_resultJsonFactory->create(); - if(empty($params['shipping'])){ - $response['error'] = __('Please select shipping method'); - return $resultJson->setData($response); - } - - $shippingData = $this->shipping->getMethodByCode($params['shipping']); - if(empty($shippingData)){ - $response['error'] = __('Please select shipping method'); - return $resultJson->setData($response); - } - - $quote = $this->_getCheckout()->getQuote(); - - //$quote->reserveOrderId()->save(); - - $result = $this->orderHelper->createOrderByQuote($quote, $shippingData); - - if(isset($result['error'])){ - $this->messageManager->addError($result['error']); - return $this->_redirect('checkout/cart'); - } - - $quote->setIsActive(0)->save(); - - if ($result->getId()) { - $this->_getCheckout() - ->setLastRealOrderId($result->getIncrementId()) - ->setLastSuccessQuoteId($quote->getId()) - ->setLastQuoteId($quote->getId()) - ->setLastOrderId($result->getId()); - } - - //Save quote id in session for retrieval later - $this->_getCheckout()->setQuickpayQuoteId($this->_getCheckout()->getQuoteId()); - - $shippingServiceData = [ - 'code' => $params['shipping'], - 'price' => $shippingData['price'] - ]; - $responseService = $this->_adapter->CreateMobilePayPaymentLink($quote, $shippingServiceData); - - if(isset($responseService['message'])){ - //$this->messageManager->addError($response['message']); - $this->_getCheckout()->restoreQuote(); - $response['error'] = $responseService['message']; - return $resultJson->setData($response); - //$this->_redirect($this->_redirect->getRefererUrl()); - } else { - $response['url'] = $responseService['url']; - return $resultJson->setData($response); - //$this->_redirect($response['url']); - } - } catch (\Exception $e) { - //$this->messageManager->addException($e, __('Something went wrong, please try again later')); - $this->_getCheckout()->restoreQuote(); - $response['error'] = $responseService['message']; - return $resultJson->setData($response); - //$this->_redirect('checkout/cart'); - } - } -} diff --git a/Helper/Order.php b/Helper/Order.php index 61d2eac..7a5beeb 100644 --- a/Helper/Order.php +++ b/Helper/Order.php @@ -117,265 +117,6 @@ public function splitCustomerName($name) return array('firstname' => $firstname, 'lastname' => $lastname); } - /** - * @param $data - * @return \Magento\Framework\Model\AbstractExtensibleModel|\Magento\Sales\Api\Data\OrderInterface|object|void|null - */ - public function createOrderByQuote($quote, $shippingData){ - if(!$quote){ - $this->logger->debug('Failed to load quote'); - return; - } - $response = []; - - if(!$quote->getCustomerId() && !$quote->getCustomerEmail()){ - $quote->setCustomerEmail('dnk@dnk.dk'); - $quote->setCustomerIsGuest(1); - } - - $defaultValue = 'DNK'; - $countryCode = $this->getCountryByWebsite(); - - $defaultAddress = [ - 'firstname' => $defaultValue, - 'lastname' => $defaultValue, - 'street' => $defaultValue, - 'city' => $defaultValue, - 'country_id' => $countryCode, - 'region' => $defaultValue, - 'postcode' => $defaultValue, - 'telephone' => $defaultValue, - 'vat_id' => '', - 'save_in_address_book' => 0 - ]; - - $region = $this->getDefaultRegionByCountry($countryCode); - if($region){ - $defaultAddress['region'] = $region['title']; - $defaultAddress['region_id'] = $region['value']; - } - - $billingAddress = $defaultAddress; - if(!empty($quote->getBillingAddress())){ - foreach($billingAddress as $key => $value){ - if($value = $quote->getBillingAddress()->getData($key)){ - $billingAddress[$key] = $value; - } - } - } - - $shippingAddress = $defaultAddress; - if(!empty($quote->getShippingAddress())){ - foreach($shippingAddress as $key => $value){ - if($value = $quote->getShippingAddress()->getData($key)){ - $shippingAddress[$key] = $value; - } - } - } - - $quote->getBillingAddress()->addData($billingAddress); - $quote->getShippingAddress()->addData($shippingAddress); - - $shippingMethod = 'mobilepay_mobilepay'; - $shippingAddress = $quote->getShippingAddress(); - $shippingAddress->setCollectShippingRates(true)->collectShippingRates()->setShippingMethod($shippingMethod); - - // Set Sales Order Payment - $quote->getPayment()->importData(['method' => 'quickpay_gateway']); - - // Collect Totals & Save Quote - $quote->collectTotals()->save(); - - try { - // Create Order From Quote - $order = $this->quoteManagement->submit($quote); - - $shippingPrice = $shippingData['price']; - $grandTotal = $order->getGrandTotal() + $shippingPrice; - $order->setShippingAmount($shippingPrice); - $order->setBaseShippingAmount($shippingPrice); - $order->setShippingDescription('MobilePay - '.$shippingData['title']); - $order->setGrandTotal($grandTotal); - $order->setBaseGrandTotal($grandTotal); - $order->save(); - - return $order; - } catch (\Exception $e) { - $this->logger->critical($e->getMessage()); - $response['error'] = $e->getMessage(); - return $response; - } - } - - /** - * @param $order - * @param $data - */ - public function updateOrderByCallback($order, $data){ - $shippingAddress = $data->shipping_address; - $billingAddress = $data->invoice_address; - - if($shippingAddress && !$billingAddress){ - $billingAddress = $shippingAddress; - } - - if(!$shippingAddress && $billingAddress){ - $shippingAddress = $billingAddress; - } - - if(!$shippingAddress && !$billingAddress){ - $this->logger->debug('Empty address data from mobilepay'); - return; - } - - if(!$order->getCustomerId()){ - $order->setCustomerEmail($billingAddress->email); - } - - $billingName = $this->splitCustomerName($billingAddress->name); - $billingStreet = [$billingAddress->street, $billingAddress->house_number]; - $countryCode = $this->convertCountryAlphas3To2($billingAddress->country_code); - - $defaultValue = 'DNK'; - - if($order->getBillingAddress()) { - $orderBilling = $order->getBillingAddress()->getData(); - $billingAddressData = [ - 'firstname' => $billingName['firstname'], - 'lastname' => $billingName['lastname'], - 'street' => implode(' ', $billingStreet), - 'city' => $billingAddress->city ? $billingAddress->city : '-', - 'country_id' => $countryCode, - 'region' => $billingAddress->region, - 'postcode' => $billingAddress->zip_code ? $billingAddress->zip_code : '-', - 'telephone' => $billingAddress->phone_number ? $billingAddress->phone_number : '-', - 'vat_id' => $billingAddress->vat_no, - 'save_in_address_book' => 0 - ]; - foreach ($billingAddressData as $key => $value) { - if (isset($orderBilling[$key])) { - if ($orderBilling[$key] != $defaultValue) { - $billingAddressData[$key] = $orderBilling[$key]; - } - } - } - $order->getBillingAddress()->addData($billingAddressData); - } - - $shippingName = $this->splitCustomerName($shippingAddress->name); - $shippingStreet = [$shippingAddress->street, $shippingAddress->house_number]; - $countryCode = $this->convertCountryAlphas3To2($shippingAddress->country_code); - - if($order->getShippingAddress()) { - $orderShipping = $order->getShippingAddress()->getData(); - $shippingAddressData = [ - 'firstname' => $shippingName['firstname'], - 'lastname' => $shippingName['lastname'], - 'street' => implode(' ', $shippingStreet), - 'city' => $shippingAddress->city ? $shippingAddress->city : '-', - 'country_id' => $countryCode, - 'region' => $shippingAddress->region, - 'postcode' => $shippingAddress->zip_code ? $shippingAddress->zip_code : '-', - 'telephone' => $shippingAddress->phone_number ? $shippingAddress->phone_number : '-', - 'vat_id' => $shippingAddress->vat_no, - 'save_in_address_book' => 0 - ]; - foreach ($shippingAddressData as $key => $value) { - if (isset($orderShipping[$key])) { - if ($orderShipping[$key] != $defaultValue) { - $shippingAddressData[$key] = $orderShipping[$key]; - } - } - } - $order->getShippingAddress()->addData($shippingAddressData); - } - - try { - $order->save(); - } catch (\Exception $e) { - $this->logger->critical($e->getMessage()); - } - - return $order; - } - - public function createOrder($data){ - $quote = $this->getQuoteByOrderId($data->order_id); - if(!$quote){ - $this->logger->debug('Failed to load quote'); - return; - } - - $shippingAddress = $data->shipping_address; - $billingAddress = $data->invoice_address; - - if($shippingAddress && !$billingAddress){ - $billingAddress = $shippingAddress; - } - - if(!$shippingAddress && $billingAddress){ - $shippingAddress = $billingAddress; - } - - if(!$shippingAddress && !$billingAddress){ - $this->logger->debug('Empty address data from mobilepay'); - return; - } - - if(!$quote->getCustomerId()){ - $quote->setCustomerEmail($billingAddress->email); - $quote->setCustomerIsGuest(1); - } - - $billingName = $this->splitCustomerName($billingAddress->name); - $billingStreet = [$billingAddress->street, $billingAddress->house_number]; - $quote->getBillingAddress()->addData( - [ - 'firstname' => $billingName['firstname'], - 'lastname' => $billingName['lastname'], - 'street' => implode(' ',$billingStreet), - 'city' => $billingAddress->city ? $billingAddress->city : '-', - 'country_id' => $billingAddress->country_code ? $billingAddress->country_code : 'DK', - 'region' => $billingAddress->region, - 'postcode' => $billingAddress->zip_code ? $billingAddress->zip_code : '-', - 'telephone' => $billingAddress->phone_number ? $billingAddress->phone_number : '-', - 'vat_id' => $billingAddress->vat_no, - 'save_in_address_book' => 0 - ] - ); - - $shippingName = $this->splitCustomerName($shippingAddress->name); - $shippingStreet = [$shippingAddress->street, $shippingAddress->house_number]; - $quote->getShippingAddress()->addData([ - 'firstname' => $shippingName['firstname'], - 'lastname' => $shippingName['lastname'], - 'street' => implode(' ',$shippingStreet), - 'city' => $shippingAddress->city ? $shippingAddress->city : '-', - 'country_id' => $shippingAddress->country_code ? $shippingAddress->country_code : 'DK', - 'region' => $shippingAddress->region, - 'postcode' => $shippingAddress->zip_code ? $shippingAddress->zip_code : '-', - 'telephone' => $shippingAddress->phone_number ? $shippingAddress->phone_number : '-', - 'vat_id' => $shippingAddress->vat_no, - 'save_in_address_book' => 0 - ]); - - - // Set Sales Order Payment - $quote->getPayment()->importData(['method' => 'quickpay_gateway']); - - // Collect Totals & Save Quote - $quote->collectTotals()->save(); - - try { - // Create Order From Quote - $order = $this->quoteManagement->submit($quote); - } catch (\Exception $e) { - $this->logger->critical($e->getMessage()); - } - - return $order; - } - /** * Get Country code by website scope * diff --git a/Model/Carrier/Shipping.php b/Model/Carrier/Shipping.php deleted file mode 100644 index bc43087..0000000 --- a/Model/Carrier/Shipping.php +++ /dev/null @@ -1,227 +0,0 @@ -_rateResultFactory = $rateResultFactory; - $this->_rateMethodFactory = $rateMethodFactory; - $this->_scopeConfig = $scopeConfig; - $this->_currencyInterface = $currencyInterface; - $this->request = $request; - parent::__construct($scopeConfig, $rateErrorFactory, $logger, $data); - } - - /** - * @return bool - */ - public function isTrackingAvailable(){ - return false; - } - - /** - * get allowed methods - * @return array - */ - public function getAllowedMethods() - { - return [$this->_code => $this->getConfigData('name')]; - } - - /** - * @return float - */ - private function getShippingPrice() - { - $configPrice = $this->getConfigData('price'); - - $shippingPrice = $this->getFinalPriceWithHandlingFee($configPrice); - - return $shippingPrice; - } - - /** - * @param RateRequest $request - * @return bool|Result - */ - public function collectRates(RateRequest $request) - { - if (!$this->getConfigFlag('active')) { - return false; - } - - if(!$this->_scopeConfig->getValue('payment/quickpay_gateway/mobilepay/active', \Magento\Store\Model\ScopeInterface::SCOPE_STORE) || !$this->request->getParam('mobilepay')){ - return false; - } - - /** @var \Magento\Shipping\Model\Rate\Result $result */ - $result = $this->_rateResultFactory->create(); - - /** @var \Magento\Quote\Model\Quote\Address\RateResult\Method $method */ - $method = $this->_rateMethodFactory->create(); - - $method->setCarrier($this->_code); - $method->setCarrierTitle($this->getConfigData('title')); - - $method->setMethod($this->_code); - $method->setMethodTitle($this->getConfigData('name')); - - $amount = $this->getShippingPrice(); - - $method->setPrice($amount); - $method->setCost($amount); - - $result->append($method); - - return $result; - } - - /** - * @return array - */ - private function getAvailableMethods(){ - return [ - 'store_pick_up' => $this->getShipping1Title(), - 'home_delivery' => $this->getShipping2Title(), - 'registered_box' => $this->getShipping3Title(), - 'unregistered_box' => $this->getShipping4Title(), - 'pick_up_point' => $this->getShipping5Title(), - 'own_delivery' => $this->getShipping6Title() - ]; - } - - /** - * @return array - */ - public function getMobilePayMethods(){ - $methods = $this->getAvailableMethods(); - $data = []; - foreach($methods as $code => $title){ - $price = $this->_scopeConfig->getValue('payment/quickpay_gateway/mobilepay/shipping_'.$code, \Magento\Store\Model\ScopeInterface::SCOPE_STORE); - $data[$code] = [ - 'title' => $title, - 'price' => $this->_currencyInterface->format($price, false) - ]; - } - return $data; - } - - /** - * @param $code - * @return array|bool - */ - public function getMethodByCode($code){ - $methods = $this->getAvailableMethods(); - if(isset($methods[$code])){ - $price = $this->_scopeConfig->getValue('payment/quickpay_gateway/mobilepay/shipping_'.$code, \Magento\Store\Model\ScopeInterface::SCOPE_STORE); - return [ - 'title' => $methods[$code], - 'price' => number_format($price, 2) - ]; - } - return false; - } - - /** - * @return \Magento\Framework\Phrase|mixed|string - */ - public function getShipping1Title(){ - $title = $this->_scopeConfig->getValue('payment/quickpay_gateway/mobilepay/shipping_store_pick_up_title', \Magento\Store\Model\ScopeInterface::SCOPE_STORE); - return $title ? $title : __('Hent i butikken'); - } - - /** - * @return \Magento\Framework\Phrase|mixed|string - */ - public function getShipping2Title(){ - $title = $this->_scopeConfig->getValue('payment/quickpay_gateway/mobilepay/shipping_home_delivery_title', \Magento\Store\Model\ScopeInterface::SCOPE_STORE); - return $title ? $title : __('Ordren leveres til din hjemmeadresse'); - } - - /** - * @return \Magento\Framework\Phrase|mixed|string - */ - public function getShipping3Title(){ - $title = $this->_scopeConfig->getValue('payment/quickpay_gateway/mobilepay/shipping_registered_box_title', \Magento\Store\Model\ScopeInterface::SCOPE_STORE); - return $title ? $title : __('Afhentning i en pakkeshop (registered_box)'); - } - - /** - * @return \Magento\Framework\Phrase|mixed|string - */ - public function getShipping4Title(){ - $title = $this->_scopeConfig->getValue('payment/quickpay_gateway/mobilepay/shipping_unregistered_box_title', \Magento\Store\Model\ScopeInterface::SCOPE_STORE); - return $title ? $title : __('Afhentning i en pakkeshop (unregistered_box)'); - } - - /** - * @return \Magento\Framework\Phrase|mixed|string - */ - public function getShipping5Title(){ - $title = $this->_scopeConfig->getValue('payment/quickpay_gateway/mobilepay/shipping_pick_up_point_title', \Magento\Store\Model\ScopeInterface::SCOPE_STORE); - return $title ? $title : __('Afhentning i en pakkeshop (pick_up_point)'); - } - - /** - * @return \Magento\Framework\Phrase|mixed|string - */ - public function getShipping6Title(){ - $title = $this->_scopeConfig->getValue('payment/quickpay_gateway/mobilepay/shipping_own_delivery_title', \Magento\Store\Model\ScopeInterface::SCOPE_STORE); - return $title ? $title : __('Ordren leveres til din hjemmeadresse'); - } -} \ No newline at end of file diff --git a/Model/Config/Source/PaymentLogo.php b/Model/Config/Source/PaymentLogo.php index 6f2e027..74ae7b5 100644 --- a/Model/Config/Source/PaymentLogo.php +++ b/Model/Config/Source/PaymentLogo.php @@ -67,6 +67,10 @@ public function toOptionArray() [ 'value' => 'applepay', 'label' => __('Apple Pay') + ], + [ + 'value' => 'vipps', + 'label' => __('Vipps') ] ]; } diff --git a/etc/adminhtml/system.xml b/etc/adminhtml/system.xml index 99aa3bb..5b70889 100644 --- a/etc/adminhtml/system.xml +++ b/etc/adminhtml/system.xml @@ -115,72 +115,6 @@ validate-number - - - - 1 - - - Magento\Config\Model\Config\Source\Yesno - - - - - - - - - - - - - Title for "Hent i butikken" shipping method - - - - Shipping price for "Hent i butikken" shipping method - - - - Shipping title for "Ordren leveres til din hjemmeadresse" shipping method - - - - Shipping price for "Ordren leveres til din hjemmeadresse" shipping method - - - - Shipping title for "Afhentning i en pakkeshop (registered_box)" shipping method - - - - Shipping price for "Afhentning i en pakkeshop (registered_box)" shipping method - - - - Shipping title for "Afhentning i en pakkeshop (unregistered_box)" shipping method - - - - Shipping price for "Afhentning i en pakkeshop (unregistered_box)" shipping method - - - - Shipping title for "Afhentning i en pakkeshop (pick_up_point)" shipping method - - - - Shipping price for "Afhentning i en pakkeshop (pick_up_point)" shipping method - - - - Shipping title for "Ordren leveres til din hjemmeadresse" shipping method - - - - Shipping price for "Ordren leveres til din hjemmeadresse" shipping method - - diff --git a/etc/config.xml b/etc/config.xml index 6a71ee9..d785950 100644 --- a/etc/config.xml +++ b/etc/config.xml @@ -35,16 +35,6 @@ quickpay - - QuickPay MobilePay - 0 - Hent i butikken - Ordren leveres til din hjemmeadresse - Afhentning i en pakkeshop (registered_box) - Afhentning i en pakkeshop (unregistered_box) - Afhentning i en pakkeshop (pick_up_point) - Ordren leveres til din hjemmeadresse - QuickPay\Gateway\Model\Klarna @@ -231,16 +221,5 @@ quickpay - - - 1 - 0 - QuickPay\Gateway\Model\Carrier\Shipping - QuickPay - 0.00 - MobilePay Checkout - F - - diff --git a/etc/module.xml b/etc/module.xml index 4c65b2b..ff9342d 100644 --- a/etc/module.xml +++ b/etc/module.xml @@ -1,6 +1,6 @@ - + diff --git a/view/frontend/layout/checkout_index_index.xml b/view/frontend/layout/checkout_index_index.xml index 833c40f..34ab71c 100644 --- a/view/frontend/layout/checkout_index_index.xml +++ b/view/frontend/layout/checkout_index_index.xml @@ -56,15 +56,6 @@ - - - - - QuickPay_Gateway/shipping/shipping-method-item - - - - @@ -73,8 +64,5 @@ - - - diff --git a/view/frontend/layout/onestepcheckout_index_index.xml b/view/frontend/layout/onestepcheckout_index_index.xml index 901d06b..d88eae2 100644 --- a/view/frontend/layout/onestepcheckout_index_index.xml +++ b/view/frontend/layout/onestepcheckout_index_index.xml @@ -55,15 +55,6 @@ - - - - - QuickPay_Gateway/shipping/shipping-method-item - - - - @@ -72,8 +63,5 @@ - - - \ No newline at end of file diff --git a/view/frontend/templates/checkout/mobilepay.phtml b/view/frontend/templates/checkout/mobilepay.phtml deleted file mode 100644 index d990143..0000000 --- a/view/frontend/templates/checkout/mobilepay.phtml +++ /dev/null @@ -1,157 +0,0 @@ -
-

getTitle() ?>

-

getDescription() ?>

- - - - - - - - -
\ No newline at end of file diff --git a/view/frontend/web/images/logo/vipps.png b/view/frontend/web/images/logo/vipps.png new file mode 100644 index 0000000000000000000000000000000000000000..98fc84800650e0ad8b73cb7e44c7b2a21f2286dd GIT binary patch literal 8636 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