![]() 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/pub/static/frontend/Magento/luma/en_US/Magento_Checkout/js/model/ |
/** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ /** * @api */ define([ 'ko', 'underscore', 'domReady!' ], function (ko, _) { 'use strict'; /** * Get totals data from the extension attributes. * @param {*} data * @returns {*} */ var proceedTotalsData = function (data) { if (_.isObject(data) && _.isObject(data['extension_attributes'])) { _.each(data['extension_attributes'], function (element, index) { data[index] = element; }); } return data; }, billingAddress = ko.observable(null), shippingAddress = ko.observable(null), shippingMethod = ko.observable(null), paymentMethod = ko.observable(null), quoteData = window.checkoutConfig.quoteData, basePriceFormat = window.checkoutConfig.basePriceFormat, priceFormat = window.checkoutConfig.priceFormat, storeCode = window.checkoutConfig.storeCode, totalsData = proceedTotalsData(window.checkoutConfig.totalsData), totals = ko.observable(totalsData), collectedTotals = ko.observable({}); return { totals: totals, shippingAddress: shippingAddress, shippingMethod: shippingMethod, billingAddress: billingAddress, paymentMethod: paymentMethod, guestEmail: null, /** * @return {*} */ getQuoteId: function () { return quoteData['entity_id']; }, /** * @return {Boolean} */ isVirtual: function () { return !!Number(quoteData['is_virtual']); }, /** * @return {*} */ getPriceFormat: function () { return priceFormat; }, /** * @return {*} */ getBasePriceFormat: function () { return basePriceFormat; }, /** * @return {*} */ getItems: function () { return window.checkoutConfig.quoteItemData; }, /** * * @return {*} */ getTotals: function () { return totals; }, /** * @param {Object} data */ setTotals: function (data) { data = proceedTotalsData(data); totals(data); this.setCollectedTotals('subtotal_with_discount', parseFloat(data['subtotal_with_discount'])); }, /** * @param {*} paymentMethodCode */ setPaymentMethod: function (paymentMethodCode) { paymentMethod(paymentMethodCode); }, /** * @return {*} */ getPaymentMethod: function () { return paymentMethod; }, /** * @return {*} */ getStoreCode: function () { return storeCode; }, /** * @param {String} code * @param {*} value */ setCollectedTotals: function (code, value) { var colTotals = collectedTotals(); colTotals[code] = value; collectedTotals(colTotals); }, /** * @return {Number} */ getCalculatedTotal: function () { var total = 0.; //eslint-disable-line no-floating-decimal _.each(collectedTotals(), function (value) { total += value; }); return total; } }; });