Releases: craftcms/commerce
Releases · craftcms/commerce
5.0.7
- Improved store query performance. (#3481)
- Added
craft\commerce\gql\types\input\IntFalse
. - Fixed a bug where disclosure menus on the Stores index page weren’t listing all their items.
- Fixed an SQL error that occurred when querying for purchasables with the
hasStock
param. (#3505) - Fixed an error that could occur when querying for products or variants via GraphQL.
- Fixed a SQL error that could occur when generating the pricing catalog. (#3513)
- Fixed a bug where untracked stock items weren’t displaying correctly in the example templates. (#3510)
- Fixed a bug where the pricing catalog wasn’t getting updated after a pricing rule was disabled. (#3515)
- Fixed an SQL error that could occur when switching stores. (#3501)
4.6.1
5.0.6
5.0.5
Finished 5.0.5
5.0.4
5.0.3
- Added
craft\commerce\helpers\ProjectConfigData::ensureAllStoresProcessed()
. - Added
craft\commerce\models\OrderStatus::getConfig()
. - Fixed a bug where it wasn’t possible to download PDFs from the Orders index page. (#3477)
- Fixed an error that could occur when installing Craft CMS + Craft Commerce with an existing project config. (#3472)
- Fixed a bug where order status configs were missing their store assignments after rebuilding the project config.
5.0.2
5.0.1
- Fixed a bug where the “Commerce” Edit User screen wasn’t showing.
- Added
craft\commerce\controllers\UsersController
. - Deprecated
craft\commerce\fields\UserCommerceField
.
5.0.0
Store Management
- It’s now possible to manage multiple stores (up to five). (#2283)
- It’s now possible to manage multiple inventory locations (up to five). (#2286, #2669)
- Added support for catalog pricing of purchasables, improving scalability and pricing flexibility for high-volume stores.
- Products now support drafts, autosaving, and versioning. (#2358)
- Product variants are now managed via nested element indexes rather than inline-editable blocks.
- Product variants’ field layouts now support multiple tabs.
- Product pages’ breadcrumbs now include a menu that links to each editable product type.
- It’s now possible to create new products from product select modals when a custom source is selected, if the source is configured to only show products of one type.
- The Products index page now shows a primary “New product” button when a custom source is selected, if the source is configured to only show products of one type.
- Order conditions can now have a “Total Weight” rule.
- Shipping methods and shipping rules now support flexible order matching, based on an order condition.
- Users’ orders, carts, and subscriptions are now managed on a dedicated “Commerce” screen within Edit User sections.
Administration
- Added a new “Manage inventory stock levels” permission.
- Added a new “Manage inventory locations” permission.
Development
- Added the
currentStore
Twig variable. - Added
commerce/pricing-catalog/generate
command. - Deprecated the
hasUnlimitedStock
variant query param.inventoryTracked
should be used instead. - Removed the
shippingCategory
,shippingCategoryId
,taxCategory
, andtaxCategoryId
product query params. The corresponding variant query params can be used instead. - Removed the
showEditUserCommerceTab
config setting.
Extensibility
- Added
craft\commerce\base\CatalogPricingConditionRuleInterface
. - Added
craft\commerce\base\EnumHelpersTrait
- Added
craft\commerce\base\HasStoreInterface
. - Added
craft\commerce\base\InventoryMovementInterface
. - Added
craft\commerce\base\InventoryMovement
. - Added
craft\commerce\base\Purchasable::$availableForPurchase
. - Added
craft\commerce\base\Purchasable::$freeShipping
. - Added
craft\commerce\base\Purchasable::$height
. - Added
craft\commerce\base\Purchasable::$inventoryTracked
- Added
craft\commerce\base\Purchasable::$length
. - Added
craft\commerce\base\Purchasable::$maxQty
. - Added
craft\commerce\base\Purchasable::$minQty
. - Added
craft\commerce\base\Purchasable::$promotable
. - Added
craft\commerce\base\Purchasable::$shippingCategoryId
. - Added
craft\commerce\base\Purchasable::$stock
- Added
craft\commerce\base\Purchasable::$taxCategoryId
. - Added
craft\commerce\base\Purchasable::$weight
. - Added
craft\commerce\base\Purchasable::$width
. - Added
craft\commerce\base\Purchasable::getInventoryItem()
. - Added
craft\commerce\base\Purchasable::getInventoryLevels()
. - Added
craft\commerce\base\Purchasable::getOnPromotion()
. - Added
craft\commerce\base\Purchasable::getPrice()
. - Added
craft\commerce\base\Purchasable::getPromotionalPrice()
. - Added
craft\commerce\base\Purchasable::getStock()
- Added
craft\commerce\base\Purchasable::getStore()
- Added
craft\commerce\base\Purchasable::setPrice()
. - Added
craft\commerce\base\Purchasable::setPromotionalPrice()
. - Added
craft\commerce\base\StoreRecordTrait
. - Added
craft\commerce\base\StoreTrait
. - Added
craft\commerce\behaviors\StoreBehavior
. - Added
craft\commerce\collections\InventoryMovementCollection
- Added
craft\commerce\collections\UpdateInventoryLevelCollection
- Added
craft\commerce\console\controllers\CatalogPricingController
. - Added
craft\commerce\controllers\CatalogPricingController
. - Added
craft\commerce\controllers\CatalogPricingRulesController
. - Added
craft\commerce\controllers\InventoryLocationsController
- Added
craft\commerce\controllers\InventoryLocationsStoresController
- Added
craft\commerce\controllers\VariantsController
. - Added
craft\commerce\db\Table::CATALOG_PRICING_RULES_USERS
. - Added
craft\commerce\db\Table::CATALOG_PRICING_RULES
. - Added
craft\commerce\db\Table::CATALOG_PRICING
. - Added
craft\commerce\db\Table::INVENTORYITEMS
. - Added
craft\commerce\db\Table::INVENTORYLOCATIONS_STORES
. - Added
craft\commerce\db\Table::INVENTORYLOCATIONS
. - Added
craft\commerce\db\Table::INVENTORYMOVEMENTS
. - Added
craft\commerce\db\Table::PURCHASABLES_STORES
. - Added
craft\commerce\db\Table::STORESETTINGS
. - Added
craft\commerce\db\Table::STORES
. - Added
craft\commerce\db\Table::TRANSFERS_INVENTORYITEMS
. - Added
craft\commerce\db\Table::TRANSFERS
. - Added
craft\commerce\elements\Product::getVariantManager()
. - Added
craft\commerce\elements\Variant::getProductSlug()
. - Added
craft\commerce\elements\Variant::getProductTypeHandle()
. - Added
craft\commerce\elements\Variant::setProductSlug()
. - Added
craft\commerce\elements\Variant::setProductTypeHandle()
. - Added
craft\commerce\elements\VariantCollection
. - Added
craft\commerce\elements\actions\SetDefaultVariant
. - Added
craft\commerce\elements\conditions\customer\CatalogPricingCustomerCondition
. - Added
craft\commerce\elements\conditions\orders\DiscountedItemSubtotalConditionRule
. - Added
craft\commerce\elements\conditions\orders\ShippingAddressZoneConditionRule
. - Added
craft\commerce\elements\conditions\orders\ShippingMethodOrderCondition
. - Added
craft\commerce\elements\conditions\orders\ShippingRuleOrderCondition
. - Added
craft\commerce\elements\conditions\orders\TotalWeightConditionRule
. - Added
craft\commerce\elements\conditions\products\ProductVariantInventoryTrackedConditionRule
. - Added
craft\commerce\elements\conditions\purchasables\CatalogPricingCondition
. - Added
craft\commerce\elements\conditions\purchasables\CatalogPricingCustomerConditionRule
. - Added
craft\commerce\elements\conditions\purchasables\CatalogPricingPurchasableConditionRule
. - Added
craft\commerce\elements\conditions\purchasables\PurchasableConditionRule
. - Added
craft\commerce\elements\db\OrderQuery::$totalWeight
. - Added
craft\commerce\elements\db\OrderQuery::totalWeight()
. - Added
craft\commerce\elements\traits\OrderValidatorsTrait::validateOrganizationTaxIdAsVatId()
. - Added
craft\commerce\enums\InventoryTransactionType
. - Added
craft\commerce\enums\InventoryUpdateQuantityType
. - Added
craft\commerce\events\RegisterAvailableShippingMethodsEvent::getShippingMethods()
. - Added
craft\commerce\events\RegisterAvailableShippingMethodsEvent::setShippingMethods()
. - Added
craft\commerce\fieldlayoutelements\PurchasabaleAllowedQtyField
. - Added
craft\commerce\fieldlayoutelements\PurchasabaleAvailableForPurchaseField
. - Added
craft\commerce\fieldlayoutelements\PurchasabaleDimensionsField
. - Added
craft\commerce\fieldlayoutelements\PurchasabaleFreeShippingField
. - Added
craft\commerce\fieldlayoutelements\PurchasabalePriceField
. - Added
craft\commerce\fieldlayoutelements\PurchasabalePromotableField
. - Added
craft\commerce\fieldlayoutelements\PurchasabaleSkuField
. - Added
craft\commerce\fieldlayoutelements\PurchasabaleStockField
. - Added
craft\commerce\fieldlayoutelements\PurchasabaleWeightField
. - Added
craft\commerce\helpers\Cp
. - Added
craft\commerce\helpers\Currency::moneyInputHtml()
. - Added
craft\commerce\helpers\Purchasable::catalogPricingRulesTableByPurchasableId()
. - Added
craft\commerce\models\CatalogPricingRule
. - Added
craft\commerce\models\Discount::$storeId
. - Added
craft\commerce\models\InventoryItem
. - Added
craft\commerce\models\InventoryLocation
. - Added
craft\commerce\models\InventoryTransaction
. - Added
craft\commerce\models\Level
. - Added
craft\commerce\models\LineItem::getSnapshot()
. - Added
craft\commerce\models\LineItem::setSnapshot()
. - Added
craft\commerce\models\LineItems::getFulfilledTotalQuantity()
. - Added
craft\commerce\models\PaymentSources::getStore()
. - Added
craft\commerce\models\ProductType::$maxVariants
. - Added
craft\commerce\models\PurchasableStore
. - Added
craft\commerce\models\Store::getInventoryLocations()
. - Added
craft\commerce\models\Store::getInventoryLocationsOptions()
. - Added
craft\commerce\models\inventory\InventoryCommittedMovement
- Added
craft\commerce\models\inventory\InventoryLocationDeactivatedMovement
. - Added
craft\commerce\models\inventory\InventoryManualMovement
. - Added
craft\commerce\models\inventory\UpdateInventoryLevel
. - Added
craft\commerce\plugin\Services::getVat()
. - Added
craft\commerce\records\CatalogPricingRulePurchasable
. - Added
craft\commerce\records\CatalogPricingRuleUser
. - Added
craft\commerce\records\CatalogPricingRule
. - Added
craft\commerce\records\CatalogPricing
. - Added
craft\commerce\records\InventoryItem
. - Added
craft\commerce\records\InventoryLocation
. - Added
craft\commerce\records\PurchasableStore
. - Added
craft\commerce\services\CatalogPricingRules
. - Added
craft\commerce\services\CatalogPricing
. - Added
craft\commerce\services\Discounts::getAllDiscountsByStoreId()
. - Added
craft\commerce\services\InventoryLocations
. - Added
craft\commerce\services\Inventory
. - Added
craft\commerce\services\OrderStatuses::getOrderStatusByUid()
. - Added
craft\commerce\services\Purchasables::updateStoreStockCache()
- Added
craft\commerce\services\Sales::canUseSales()
. - Added
craft\commerce\services\ShippingCategories::clearCaches()
. - Added
craft\commerce\services\Stores
. - Added
craft\commerce\services\Vat
. - Added
craft\commerce\web\assets\inventory\InventoryAsset
. - Deprecated
craft\commerce\base\Purchasable::getOnSale()
.getOnPromotion()
should be used instead. - Deprecated `craft\commerce\base\Variant...