Skip to content

<div style="display: none;" hidden="true" aria-hidden="true">Are you an LLM? You can read better optimized documentation at /changelog/Changelog.4.80.md for this page in Markdown format</div>

Home | Changelog

Version 4

version 4.80

  • [4.80.7] hotfix( available_countries_in_registry) : registry migration to store available countries as a pipe-delimited string and introduced a reusable setValue() method for creating/updating registry entries.
  • [4.80.7] fix: add missing new_products table creation on migrations when initializing a database
  • [4.80.6] feat: move config item available_countries to registry and allow ecommercen-saas to set env APP_INIT_COUNTRIES for InitialSeed. For other installations either set up env key or it will fallback to GR. for multiple arrays separate them with , i.e. GR|US|GB. This also is the desired order of countries
  • [4.80.6] fix: VatForOrder, CartResource and CartErrors converted to singletons and removed loadCartResource method from front controller - fixes CartErrors being reset when reloading CartResource
  • [4.80.6] style: css changes on admin nav scrollbar
  • [4.80.6] fix(initial.sql): add missing column hits on blog table when initializing a new database
  • [4.80.6] fix(dhl): add hs_code field to products
  • [4.80.6] fix(Adv_checkout): klarnaPaymentsConfirmation change parameter from array to string, get_response fix call of klarnaPaymentsConfirmation accordingly
  • [4.80.6] feat(Apifon): add endpoint for viber messages
  • [4.80.6] fix(AdvProductModel): fix product_media_model not loading properly on Adv_product_model::getProductAdmin
  • [4.80.6] fix(AdvApiKlarna): remove duplicate call
  • [4.80.6] fix(AdvSetTrackingPublicMarketplace): function processOrders swap params in updateTable call
  • [4.80.5] fix(admin/variations): resolved admin panel variation issues
  • [4.80.4] fix(adv_theme_lang): change caption for payway.klarna_payments
  • [4.80.4] feat(klarna onsite messaging): add settings to 3rd party providers and js snippets in main and product views
  • [4.80.4] fix: Adv_settings replace publicMarketplaceEnabled with public2pEnabled
  • [4.80.4] fix: set missing regkey TITLE on registry table when seeding data to new database
  • [4.80.4] feat(klarna order management): add buttons for administrator to capture/refund/cancel orders from klarna payments
  • [4.80.4] chore(cookiesV2): New verbal for cookiesV2
  • [4.80.4] feat: Add in the admin panel in customer's view the whislist of the customer
  • [4.80.4] task(builder): Block builder listing displays and filters block positions
  • [4.80.4] fix(generic modal): removed duplicate functions
  • [4.80.4] fix(product-variations): fix joinForProducts, populate productsIdsToParse with variation group product IDs, and prevent duplicates in getVariationEntriesOfThisGroupFromVariationGroupData
  • [4.80.4] task(builder): add block clone in builder listing
  • [4.80.4] fix(builder): preview does not set a position
  • [4.80.4] fix(klarnaPayments): update klarnaPayments session when the cart changes
  • [4.80.4] fix(Checkout): check if order status is PENDING before canceling for piraeus
  • [4.80.4] fix: InitialSeed should read application config 'available_countries' to populate TRANS_COST_LIMIT and MIN_ORDER_AMOUNT
  • [4.80.4] fix: remove duplicate array for eshop/cart_product_customizations_admin on admin_menu
  • [4.80.4] feat: Add the value of the customer in the export of the customers for the meta
  • [4.80.4] style: admin menu sublevel display change
  • [4.80.4] fix(klarna): klarnaWidget add order_lines to authorize call, checkoutPage.js openPaymentSession change locale for en-GR to el-GR
  • [4.80.4] feat: Databox integration
  • [4.80.4] style: admin menu height change
  • [4.80.4] fix(Iris): fix RF code generation, handle users revisiting/refreshing thank you page
  • [4.80.4] feat: add custom isActiveClass admin helper to be used for active menu items
  • [4.80.4] fix: replace matchesMenuItem to getActiveMenuParents method to get the active menu parents differently because some urls were not matched correctly
  • [4.80.4] fix: add extra check the table element when #select_all is clicked because there was a conflict with the checkbox at admin_menu
  • [4.80.4] fix: use the correct css class in for #collapseFilters to work properly because there was an issue that button did not work on admin views
  • [4.80.4] fix: mixins/checkoutPage.js isPayWayOptionAvailable handle klarna_payments payway
  • [4.80.4] feat: Add prefix in the vendor id for the overlap with the products
  • [4.80.4] feat: KlarnaPayments
  • [4.80.4] fix: Add the current currency in the errors pages of the front
  • [4.80.3] feat: introduced admin gift card order modal details
  • [4.80.3] style: services modals layout fixes, admin menu css & js updates
  • [4.80.3] fix(shopflix orders): Add registry value in settings for debug call. Removed unused local vars and class properties. Minor refactor and tidying up
  • [4.80.3] feat: Integration with Doofinder
  • [4.80.3] style: admin services modals layout changes, admin menu settings order & lang update
  • [4.80.3] feat: introduced the ability to assign product lists on categories
  • [4.80.3] style: changed color in services modal button
  • [4.80.3] fix: pass correct blog_category_id as second key for recursive records tree in order to match children categories
  • [4.80.2] feat: Adv_checkout method reportPurchaseFacebookConversion include unregistered customer data for PURCHASE event
  • [4.80.2] fix: Change in the admin blog categories list the size of the banner images
  • [4.80.1] fix(MetaClient): remove hardcoded test code
  • [4.80.0] fix: Adv_order function deductLoyaltyPoints change visibility to protected
  • [4.80.0] feat(IqviaUpload): add extra fields in csv
  • [4.80.0] feat(PaypalAdvanced): Added Google Pay on Paypal Advanced Checkout
  • [4.80.0] deps(composer): Bumped ecommercen/media-stream to 2.0.1

Notes

  • [4.80.7] Patch requirements
    • php migrator.php migrate
  • [4.80.6] Needs:
    • composer i
    • npm ci && npm run admin-production
    • for clients before this version set to true function shouldExecute in
      • database/migrations/20250224142952_update_available_countries_in_registry.php (introduced in 4.80.7)
      • database/migrations/20250124142116_available_countries_in_registry.php
    • php migrator.php migrate
  • [4.80.6] Classes VatForOrder, CartResource, CartError converted to singleton - check whole classes
  • [4.80.6] Method removed: Front_c::loadCartResource
  • [4.80.6] Method changed Adv_orders_admin::getVatForOrderBasedOnOrder(object $order): VatForOrder changed from get to set setVatForOrderBasedOnOrder(object $order): void
  • [4.80.6] Method signature changes (also check for overrides in these methods):
    • Adv_front_controller::defaultProductParseWithProductCodes (array $productIds, VatForOrder $vatForOrder = new VatForOrder()) => (array $productIds)
    • Adv_front_controller::defaultProductParse (array $productIds, VatForOrder $vatForOrder = new VatForOrder()) => (array $productIds)
    • VueLiveDataTrait::liveData (array $productIds, VatForOrder $vatForOrder = new VatForOrder()) => (array $productIds)
    • VueLiveDataTrait::cartResourceContents (VatForOrder $vatForOrder = new VatForOrder()) => (): array
    • Adv_coupons_model::isValidCoupon (\CouponCheckConfig $checks, $couponCode, $cart, $cartTotal, VatForOrder $vatForOrder = new VatForOrder(), array $customerAudiences) => (\CouponCheckConfig $checks, $couponCode, $cart, $cartTotal, array $customerAudiences)
    • Adv_coupons_model::calculateCart ($couponCode, $cart, VatForOrder $vatForOrder = new VatForOrder()) => ($couponCode, $cart)
    • Adv_coupons_model::calculateCartDiscountPercent (&$cart, $couponData, VatForOrder $vatForOrder = new VatForOrder()) => (&$cart, $couponData)
    • Adv_coupons_model::calculateCartDiscountPrice (&$cart, $couponData, VatForOrder $vatForOrder = new VatForOrder()) => (&$cart, $couponData)
    • Adv_orders_admin::parseOrderBasketForClone ($orderBasket, VatForOrder $vatForOrder = new VatForOrder()) => ($orderBasket)
    • Adv_orders_admin::parseOrderBasketForOrderRepeat (array $orderBasket = [], VatForOrder $vatForOrder = new VatForOrder()): array => (array $orderBasket = []): array
    • Adv_admin_live_search_model::productItem ($productCodeId, $quantity = 0, $keptProductPrice = 0, $keptFinalPoints = 0, VatForOrder $vatForOrder = new VatForOrder()): array => ($productCodeId, $quantity = 0, $keptProductPrice = 0, $keptFinalPoints = 0): array
    • Adv_gifts_model::getGiftForProductsInCart (array $productsInCart, VatForOrder $vatForOrder = new VatForOrder()) => (array $productsInCart)
    • Adv_gifts_model::calcCartTotal ($productsInCart, VatForOrder $vatForOrder) => ($productsInCart)
    • Adv_gifts_model::getLiveData (array $productsIds = [], VatForOrder $vatForOrder = new VatForOrder()) => (array $productsIds = [])
    • Adv_order_model::create_order ($orderData, VatForOrder $vatForOrder = new VatForOrder()) => ($orderData)
    • Adv_order_model::baseParseCartContents (VatForOrder $vatForOrder = new VatForOrder()) => ()
    • Adv_order_model::setUpAdminOrderDataCoupon ($orderData, $cart, VatForOrder $vatForOrder = new VatForOrder()) => ($orderData, $cart)
    • Adv_order_model::parseCartForCheckout (array $orderData, VatForOrder $vatForOrder): array => (array $orderData): array
    • Adv_order_model::_proccess_admin_order ($adminOrderData, VatForOrder $vatForOrder = new VatForOrder()) => ($adminOrderData)
    • Adv_order_model::processOrder ($orderData, VatForOrder $vatForOrder = new VatForOrder) => ($orderData)
    • Adv_order_model::createAdminFakeCart ($productsData, VatForOrder $vatForOrder = new VatForOrder()) => ($productsData)
    • Adv_order_model::create_order_admin changed singleton ($fakeCart, $otherPostElements, VatForOrder $vatForOrder = new VatForOrder(), $calculateTransportationCost = true) => ($fakeCart, $otherPostElements, $calculateTransportationCost = true)
    • Adv_product_parser_model::get ($productIds, $useCart = false, $withData = 'minimal', VatForOrder $vatForOrder = new VatForOrder()) => ($productIds, $useCart = false, $withData = 'minimal')
    • AdvGiftCardPage::renderVueJson (VatForOrder $vatForOrder = new VatForOrder()): void => (): void
    • cart_helper::cart_total_vat (VatForOrder $vatForOrder = new VatForOrder()) => ()
    • product_parser_helper::getLiveProductsParsed ($productIds, $useCart = false, VatForOrder $vatForOrder = new VatForOrder()) => ($productIds, $useCart = false)
  • [4.80.6] Check for overrides:
    • Settings::third_party_providers|thirdPartyProvidersValidation
    • sms_helper::sendSmsMsg|sendSms
    • Product_model::getProductAdmin
    • shopmodule_helper::getCountriesSettings
    • CountriesCounties::{__construct|initializeData}
    • from method changes above for methods that are long or complex check Merge branch 'feature/eliminate-load-cart-resource' into develop as the actual changes are small
    • AdvApiCartController::{__construct|cartData|vatForOrderForCartData|cartToJsonState}
    • Adv_front_controller::{__construct|itemsRecommendationAI|setCustomerAudience|renderVueJson|defaultProductParseWithProductCodes|defaultProductParse}
    • AdvFactories::vatForOrder
    • VueLiveDataTrait::{liveData|cartResourceContents}
    • Adv_coupons_model::{isValidCoupon|calculateCart|calculateCartDiscountPercent|calculateCartDiscountPrice}
    • Adv_order::{__construct|preview|checkoutView|prepareGiftsForCheckoutView|checkout|preview_coupon|checkCoupon|previewOrderCouponData|renderCartProducts|setVatForOrder}
    • Adv_orders_admin::{add|edit|parseOrderBasketForClone|searchOrdersProduct|productAjaxOrderItem|productOrderItemsValue|gifts_for_products|repeat|parseOrderBasketForOrderRepeat|setVatForOrderBasedOnOrder}
    • Adv_public_orders_admin::processOrderAcceptance
    • Adv_admin_live_search_model::productItem
    • Adv_gifts_model::{getGiftForProductsInCart|calcCartTotal|getLiveData}
    • Adv_order_model::{create_order|baseParseCartContents|setUpAdminOrderDataCoupon|parseCartForCheckout|_proccess_admin_order|createAdminFakeCart|create_order_admin}
    • Adv_product_parser_model::get
    • AdvGiftCardPage::renderVueJson
    • cart_helper::cart_total_vat
    • product_parser_helper::getLiveProductsParsed
  • [4.80.6] If orders_admin::index is overriden copy from parent the klarnaPaymentsOrders and klarnaPaymentsIsAutoCapture elements of the render array property
  • [4.80.5] Check for overrides:
    • ProductVariationsTrait::getVariationGroupProducts
  • [4.80.4] For klarna payments, settings have been added to settings/payments
  • [4.80.4] Check modified js:
    • assets/main/vue/CheckoutPage.vue, assets/vue/api/index.js, assets/vue/mixins/CheckoutPage.js, assets/vue/store/actions.js|getters.js|mutations.js|state
  • [4.80.4] Check modified views:
    • main/layouts/checkout/CheckoutProcessing.php
  • [4.80.4] Check modified controllers|models|helpers:
    • Checkout::run|get_response
    • Order::preview|checkout
    • OrdersAdmin::index
    • eshop_helper::isOrderPaidAtDeliveryByPayWay
    • eshoppresenter_helper::allPayWays|payWaysImage|paywayIconCaption
    • cancelIncompleteOrders::executeCommand
    • Settings::payment_settings|third_party_providers|paymentSettingsValidation
  • [4.80.4] For klarna on site messaging, settings have been added to 3rd party settings
  • [4.80.4] Check if there is duplicate array for route eshop/cart_product_customizations_admin on admin_menu.php, if is duplicate remove the one that is under route waiting_list_admin
  • [4.80.4] Needs:
    • composer i
    • npm run all-production
  • [4.80.4] Patch requirements
    • php migrator.php migrate
  • [4.80.4] Check for overrides:
    • Customers_admin::__construct|viewExtras
    • Customers_admin::getCustomerMostBuyedProducts added param type, return type and change the scope of method from public to protected
    • BuilderConfig::openContainer|closeContainer signature
    • Base_c::error410|error_401|errorRender
    • VendorsXml::parseItem
    • Checkout::irisResponseSuccess remove overrides on clients wecare, dioptra
    • src/PaymentGateways/Iris/Iris.php, src/PaymentGateways/Iris/IrisHelper.php in case of conflicts on these files, keep master changes and after merge, ensure that iris payway lands you on dias page
    • Audience_admin::getCustomersAudience
    • Customer_tag_model::getAllCustomersWithTagsCompile|getCustomersWithTagAndCompile|getCustomersWithTagOrCompile
    • Marketing_admin::exportTags
    • Checkout::piraeusCancelOrder
    • VariationSelectorMixin::getVariationEntriesOfThisGroupFromVariationGroupData
    • ProductVariationsTrait::getVariationGroupProducts
    • Variation_model::joinForProducts|getAllVariationGroupsWithValues // remove from clients liolios
  • If client version > 4.79.0, check for overrides:
    • Admin_c::renderAdminMenu
  • [4.80.3] Check for overrides: any class that extends AdvHandleShopflixOrders and redeclares getShopflixOrderUpdates needs visibility set to protected
  • [4.80.3] Needs:
    • composer i
    • npm run all-production
  • [4.80.3] Patch requirements
    • php migrator.php migrate
  • [4.80.3] Check for overrides:
    • Blog_category_model::getCategoriesFront
    • Gift_card_orders_model::transactionCancelGiftCard
    • Gift_cards_admin_listing::list
    • product_categories_admin::edit|add added fields for categories product list.
  • [4.80.2] Check for overrides:
    • Checkout::reportPurchaseFacebookConversion
  • [4.80.0] Check for overrides in eshop/controllers/order. If deductLoyaltyPoints is identical(redeclared being a private in parent) remove, otherwise set visibility to protected
  • [4.80.0] Needs:
    • composer i
    • npm run production
  • [4.80.0] Check for overrides:
    • Checkout::paypalAdvanced
    • Gift_card_page::paypalAdvancedFormData
    • Settings::{payment_settings|paymentSettingsValidation}
    • IqviaUpload::{csvDataLine|csvHeaderLine}
  • [4.80.0] Configuration changes:
    • The format of media-stream's configurations have changed. Please consult the documentation for more information.
  • [4.80.0] Deployment changes:
    • rm -rf cache/mediastream