Creator: Vasiliy Naumkin (bezumkin2)
Updated by: Ivan Bochkarev (ibochkarev)

Need help installing this extra?


About miniShop2

WARNING! miniShop2.4 was completely rewritten, so you will need to change all your ms2 chunks.

Please read this article carefully before upgrade from miniShop2.2!


Second version of miniShop. A handy e-commerce tool for MODX.

Rewrited from the scratch, Custom Resource Class based component.

You can try it at


April 10, 2023

Supported Database


Supported Versions
2.0 - <2.8





Please read this article before upgrade from miniShop2.2!

miniShop2.4 was completely rewritten, so you will need to change all your ms2 chunks.

New in 4.1.5-pl


All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[4.1.5-pl] - 2022-04-09 Fixed
  • Fixed a bug with creating cart key with options
  • fix CustomInputNumber error in cart
[4.1.4-pl] - 2022-03-31 Added
  • New lexicons
  • Ability to attach TV fields to products inside an order letter
  • Ability to regenerate images from the product grid
  • Eslint JS Code Validator
  • The regular expression for validating a phone number in an order has been moved to the system setting
  • All JS code in the new set of scripts is formatted according to eslint rules
  • Minishop2 Config renamed to config in main class of new JS bundle
  • A bug with missing default value for msOrderAddress.order_id
  • A bug with dragging goods in the grid
[4.1.3-pl] - 2022-03-14 Changed
  • Fixed error with return data in snippet msGallery
[4.1.2-pl] - 2022-02-03 Changed
  • Fixed incorrect preventDefault in vanilla js script
[4.1.1-pl] - 2022-02-02 Changed
  • Update JS classes names in system settings
  • Rename new JS method sendResponse to sendRequest
[4.1.0-pl] - 2022-31-01 Added
  • New type of options - color selection
  • Queue manager support
  • Working with lexicons through the crowdln service, similar to MODX
  • Additional data returned by the cart when it is changed
  • New modes for returning data from msGallery
  • System setting ms2_status_canceled
  • Fixed a bug with simultaneous operation of the basket with different contexts
  • Added saving the description field to the gallery/upload processor
  • Improved sorting and selection of uploaded files to save the first image to the msProductData table
  • Updated the text and values of the setting_ms2_order_product_options system setting
  • Fixed a bug with redirection after placing an order in new js
  • Many minor syntax and code readability improvements
  • Setting for button icons in mgr category
  • Phone length limitation during validation in the order
[4.0.0-pl] - 2022-12-18 Added
  • Displaying custom parameters in msProducts.tpl #742
  • Patch for error when installing and creating the ms2_options table #747
  • Patch for error with non-existent fields in the tables #749
  • Creating a vendor when creating a product #748
[4.0.0-beta] - 2022-09-16 Added
  • A new set of JS scripts
  • Creating an order from the manager
  • Ability to assign order statuses for various events (new order, payment, creating draft)
  • Relationship between msOrder and msOrderAddress
  • Interfaces for controllers are moved to a separate file
  • Plugin fotorama
  • Depricated controllers
[3.0.7-pl] - 2022-09-06 Added
  • MODX and PHP version check before installation
  • Snippet options are now available in wrapper chunks
  • The ability to search for an order in the admin panel by phone number
  • Email field to order address window
  • Css styles reserved for global layout classes (header, footer, title, count, weight, price, image) in msCart and msGetOrder chunks.
[3.0.6-pl] - 2022-06-29 Changed

Improved readability of the code without changing the logic Fixed potential unknown variable error in Order.submit method

  • PayPal payment module
[3.0.5-pl] - 2022-06-16 Changed

Fixed bug of linking order and address models Fixed conflict of identical fields #696

[3.0.4-pl] - 2022-06-09 Added

Removal of empty directories of images #685


Fix escaping rank field for msProductFile #690 Fix first thumbnail generator #691 load minishop2:default lexicon in registerFrontend #688

[3.0.3-pl] - 2022-05-30 Changed
  • Fixed error with escaping of the rank on object msOrderStatus
  • Added escaping of the rank in upload processor
  • Returned the ability to add any fields to the order object
[3.0.2-pl] - 2022-05-20 Added
  • The ability to update image previews in the product grid
  • The ability to specify the role number when registering a user
  • Lost system setting ms2_cart_max_count
  • msCartHandler, msOrderHandler, msDeliveryHandler, msPaymentHandler deprecated file notifications now listen to the log_deprecated system setting
  • Escaping of the rank field to support mysql 8
[3.0.1-pl] - 2022-05-04 Changed
  • Old controllers msCartHandler, msOrderHandler, msDeliveryHandler, msPaymentHandler are marked as deprecated with usage error logged
  • The configuration required for JS controllers no longer depends on the included js files and is always available
  • DB storage controllers got additional checks
  • Update Copyrights
[3.0.0-pl] - 2022-04-27 Added
  • New catalog handlers to store the main controllers: msCartHandler, msOrderHandler, msDeliveryHandler, msPaymentHandler
  • System settings: ms2_tmp_storage, ms2_register_frontend
  • Database fields ms2_orders.session_id,
  • New controllers for db storage, session storage
  • New order status Processed
  • Method RegisterFrontend
  • Composite msOrder.Address change owner from foreign to local
  • Clear controllers msCartHandler, msOrderHandler, msDeliveryHandler, msPaymentHandler. Content replaced by stub
  • Resolver table. New mechanism for managing database tables and fields
  • Field's type ms2_order_statuses.rank changed from tinyint to int
  • Plugin minishop2. Added Method RegisterFrontend to section OnLoadWebDocument
  • Resolver Upgrade
[2.9.3-pl] - 2021-10-16 Added
  • Added a class for the form of cleaning the trash [#630]
  • Fixed bug with adding text_address field [#628]
[2.9.2-pl] - 2021-09-28 Added
  • Added the ability to set / remove product previews [#617]
  • Removed duplicate code [#619]
  • Removed a broken check for resource changes [#618]
  • Fixed correct http code 403 in case of unauthorized access to the file [#622]
  • Default msProduct class when added to cart [#613]
  • Improved overall code readability [#620] -- Optimized dirname method when connecting files -- Optimized definition of constants -- Added PHPDOC -- Removed commented code and some empty blocks -- Added access specifier to methods
[2.9.1-pl] - 2021-09-12 Added
  • Added msVendor fields in the list of order items [#612]
  • Added frequently used fields to the address table [#581]
  • Bug fixed This image is already in the product gallery
[2.9.0-pl] - 2021-08-25 Added
  • Added wiretapping of initiated context for work from API [#578]
  • Added counting of the number of items in the cart [#579]
  • Replace ssl certificate for PayPal [#573]
  • Added delivery_cost parameter for msOnGetOrderCost event [#585]
  • Added the ability to set week start in orders [#570]
  • Added support for zero cost
  • Fixed the logic of registration of the order status label in the order history [#576], [#580]
  • Bringing the code to the PSR12 standard [#574]
  • Refactoring PSR-12 errors [#577]
  • Added a name field for micro-markup [#588]
  • Fixed error Cannot read property 'Search' of undefined [#591]
  • getCost method optimized [#602]
  • Fixed error create ms2_options table
[2.8.3-pl] - 2021-04-01 Changed
  • Regular expression update to validate phone number [#563]
  • Legacy php backward support [#564]
  • Removed object references as legacy code. [#566]
[2.8.2-pl] - 2021-03-15 Added
  • Added support for OR, AND operators in the optionFilters parameter in the msProducts snippet [#539]
  • The concept of refactoring the connection of notification scripts [#542]
  • Added "Save and close" button on links window [#533]
  • Added support for the return parameter in msProducts [#553]
  • Fix Recoverable error: Object of class msProductData_mysql could not be converted to string [#555]
  • Change variables in fenom chunk [#557]
  • New keep a changelog format
  • Fixed display of product option value on product category page [#547]
  • Remove unnecessary type="text/javascript"
  • Removed unused library jquery.form [#544]
  • Removed unused old.css file [#552]
  • Removed deprecated backward compatibility method with ms1 [#537]
  • Remove duplicate css [#558]
[2.8.1-pl] - 2021-02-14 Changed
  • Fixed Recoverable error: Object of class msProductData_mysql could not be converted to string [PR #532]
[2.8.0-pl] - 2021-01-27 Added
  • Improvement. Dividing the order amount by the purchase and delivery [PR #507]
  • Checking if the field free_delivery_amount is present [PR #520]
  • Set checkbox value [PR #513]
  • Minor English vernacular improvements [PR #512] [PR #511]
  • Fixed. Correction of displaying a product category if it is not a container [PR #509]
  • Fixed PHP warning: count() error [PR #508]
  • Fixing the Notice: Undefined offset error when importing a picture with a Russian name through the 'gallery/upload' processor [PR #504]
  • Converting code to cross-browser ECMAScript 5.1 standard [PR #503]
  • Fixed display of settings tabs and resource groups when editing a Category [PR #501]
  • Fixed logic for free delivery calculation [PR #498]
  • Removing the console script for converting from ms1 to ms2 [PR #506]
[2.7.0-pl - 2020-12-09 Added
  • Improvement. Discount calculation added to the status method in the cart class [PR #497]
  • Improvement. Added order product's options interface [PR #491]
  • Improvement. Added amount for free shipping [PR #490]
  • Improvement. Changing any product fields by event msOnGetProductFields [PR #417]
  • Improvement. Added an example of displaying product content on Fenom [PR #478]
  • Improvement. ignoreGroups and sortGroups to msProductOptions snippet [PR #483]
  • Improvement. Added return property to msProductOptions snippet [PR #484]
  • Improvement. Added transparency to disabled grid lines [PR #485]
  • Fixed problem with "Cannot read property items of undefined" and corrected the order of tabs when creating an item [PR #486]
  • Fixed PHP warning: count() [PR #482]
  • Fixed baseUrl in media source [PR #489]
  • Fixed visual bug [PR #480]
[2.6.0-pl] - 2020-11-12 Added
  • Added micro-markup [PR #471]
  • Added ms2_frontend_country lexicon [PR #470]
  • Added displaying of the alt attribute and title in the gallery chunk [PR #469, #472]
  • Added display of the gallery tab when creating a product [PR #455]
  • Added sortOptions property for snippet msProductOptions [PR #447]
  • Added multicontext cart settings [PR #436]
  • Added buttons on orders and settings pages [PR #435]
  • Added sorting sortOptions in msOptions, msProductOptions [PR #407, #433]
  • Added renderBadge to statuses [PR #432]
  • Added settings link in miniShop2 menu [PR #430]
  • Added msorder_remove permission [PR #421]
  • Added icon for image in vendor modal creation [PR #420]
  • Added usable choice of chunk in the windows for creating/editing statuses [PR #419]
  • Added clone msCategory options on subcategory creation [PR #412]
  • Added ids to product tabs [PR #408]
  • Added filter on modCategory for options [PR #405]
  • Added settings for order numeration [PR #393]
  • Added example for webp in media source [PR #385]
  • Added reloading order object after changes in changeOrderStatus method [PR #384]
  • Added icons for tree from system settings [PR #365]
  • Added product cost in cart [PR #358]
  • Fixed sorting by customer field in the order list [PR #468]
  • Updated snippets: msCart, msOrder, msGetOrder and msGallery [PR #461]
  • Changed the display encoding of collector messages [PR# 460]
  • Changed order of tabs for category [PR #459]
  • Expanded functionality of windows for quick creation/updating of product/category [PR #439]
  • Fixed clone media source on update if is renamed [PR #438]
  • Fixed ui bug header in modal window [PR #434]
  • Update lexicons [PR #414]
  • Ext.Loader remove asynchronous loading of strftime-min-1.3.js [PR #411]
  • Display field key if caption and lexicon entry is empty [PR #401]
  • Fix miniShop2.combo.Options paging on local mode [PR #400]
  • Fixed deleting link from one-to-one deleting all links [PR #389]
  • Switch context if the order context does not match [PR #388]
  • Fixed paypal error [PR #387]
  • Fixed error 500 if pdoTools not installed [PR #386]
  • Change class name to variable in sort processor [PR #381]
  • Moved product gallery tabs if enabled ticket comments [PR #377]
  • Moved product tabs [PR #376]
  • Fix options bug [PR #374]
  • Fix if impossible to remove the "Vendor" field [PR #372]
  • Output context name if it is [PR #364]
  • Notify user on move product in grid [PR #359]
  • Fixed miniShop2.combo.Options [PR #355]
[2.5.0 pl] Added
  • Added translation into Belarusian (thanks @dmse4050)
  • Improvement. Adding Delete / Update buttons preview in the product gallery [PR #346]
  • Improvement. Add drag'n'drop sortable for miniShop2.combo.Options [PR #345]
  • Improvement. Getting parameters for multi-domain [PR #340]
  • Added class small in chunk.ms_cart.tpl [PR #319]
  • Added support for *webp images [PR #318]
  • Fix resetting user id value on expand combobox [PR #351]
  • Fix hiding content field via FC [PR #343]
  • Fix bug when uploading pictures to the gallery, files remain in the root [PR #349]
  • Fix bug when saving order and changing status [PR #348]
  • Fix Preventing the removal of goods with the wrong (empty) count [PR #344]
  • Fix TV update bug if there are more than 10 during CSV import [PR #341]
  • Fixed error "Incorrect decimal value" [PR #338]
  • Change update product from grid [PR #337]
  • Fix "formatPrice", "formatWeight" [PR #336]
  • Optimization of the withdrawal of orders and fix for recounting an order [PR #335]
  • Fix cutting Czech characters from username in order [PR #334]
  • Fix defaultSortField [PR #333]
  • Refactoring Relationship Methods [PR #331, #332]
  • Fix set default media source on change resource class_key [PR #330]
  • Fix some bugs on manager pages [PR #327]
  • Fix romanian lexicon [PR #324]
[2.4.18 pl] Added
  • [#315] Added romanian lexicon.
  • [#316] Added webp extension for mediaSource.
  • Update chunks for Bootstrap 4.
  • Fixed display of manager tree in MODX 2.7.1
  • [#314] Fixed missing categories for options in settings.
[2.4.17 pl2] Changed
  • Fixed load of lexicons in contexts.
[2.4.16 pl] Changed
  • Fixed possible SQL injections by Agel_Nash
  • Change miniShop2::changeOrderStatus
  • Change "msProductGetListProcessor"
[2.4.15 pl] Added
  • Added new events: "msOnBeforeGetOrderCustomer", "msOnGetOrderCustomer"
  • Change miniShop2::getCustomerId
  • Change submit::msOrderHandler
  • Change getDeliveryRequiresFields::msOrderHandler
[2.4.14 pl] Added
  • Added new events: "msOnBeforeSaveOrder" and "msOnSaveOrder"
  • Change miniShop2.combo.Options
  • Fixed msCategoryOption permission
  • Change receiver validate
  • Fixed size gallery [js]
  • Fixed height options tree [js]
  • Change msProductData::saveProductOptions()
  • Change key index prefix length to 191 from 255
  • Change new installs to create tables with "InnoDB" engine
[2.4.13 pl] Added
  • Added "payment_link" in the snippet msGetOrder.
  • Added new event: "msOnGetStatusCart".
  • Added ukrainian lexicon.
  • Fixed "cultureKey" option
  • Change Order submit js.
  • Fixed msProductData::loadOptions().
[2.4.12 pl] Added
  • Added dutch lexicons by Sterc
  • Added greek frontend lexicon
  • When you change the price of a product with msOnGetProductPrice, the old_price will be changed only if the new price is lower.
  • Fixed method msProductData:rankProductImages()
[2.4.11 pl] Added
  • [mgr] Add contexts list into filters at the orders page.
  • [mgr] Add "expand,collapse,check,uncheck" actions to the categories and options trees.
  • Fixed default path to loading services in the loadCustomClasses() method.
  • Update the cost of an orders after product addition.
  • Improved processing of products options.
  • [mgr] Fixed possible error on get orders statuses list.
  • [mgr] Fix "xcheckbox" in a Product options.
  • Removed call of ms2Gallery::syncFiles() from msProductData::updateProductImage().
[2.4.10 pl] Added
  • Added events in the processors of msOrderProduct.
  • Fixed possible E_WARNING in the snippet msOrder.
[2.4.9 pl] Changed
  • Improved loading of pdoTools in snippets
[12.4.8 pl] Added
  • Added support of ms2Gallery 2.0.
  • Media source option "thumbnails" now uses key of array with parameters as alias for thumbnail.
  • Fixed bug of gallery with drag-over in Firefox.
  • Removed system setting "ms2_product_thumbnail_size".
[2.4.7 pl] Changed
  • Fixed the loading of product plugins when they can be loaded multiple times.
  • Fixed fatal error on get classes in settings with some 3rd party payment methods.
  • Fixed bug with incorrect rank of thumbnails after a sorting.
[2.4.6 pl] Added
  • Added the checking of users email when getting a customer id for new order.
  • Improved compatibility with MODX 2.5.2.
[2.4.5 pl] Changed
  • Fixed possible error in log on create a new product from cli mode.
  • Updated jGrowl to version 1.4.5.
[2.4.4 pl] Changed
  • [#242] Ability to specify only needed options in the snippet msProductOptions.
  • [#212, #241] Fixed handling of a product options with a dot in the name.
  • [#240] Fixed the reset of date fields when product has been edited via category grid.
  • [#239] Fixed duplicate and empty options in msProductData.
  • [#229, #238] Categories tree now respects the "resource_tree_node_name_fallback" system setting.
[2.4.3 pl] Changed
  • [#237] Fixed msProductData::get('options') method.
  • [#236] Ability to display category columns of an ordered product.
  • [#231] Snippet msOptions now transfers id of a product into a chunk.
  • [#230] Fixed the inability to change vendor of a product more than 1 times.
  • [#228] Possible fix for "empty file" in product gallery on some server configurations.
  • [#227] Improved performance of the grid with options in settings.
[2.4.2 pl] Changed
  • Fixed error when system setting "ms2_product_tab_gallery" is disabled.
[2.4.1 pl2] Changed
  • Fixed error with overwrite product options when update from category grid.
[2.4.0 pl] Changed
  • [#222] Optimized some code in chunks.
[2.4.0 rc11] Changed
  • [msGallery] Improved fetching of thumbnails in the snippet.
  • [#220] [mgr] Improved the total numbers in the form of orders.
[2.4.0 rc10] Changed
  • msPaymentHandler::getOrderHash() now includes order num.
[2.4.0 rc9] Changed
  • [#215] Ability to specify working context for cart.
[1.4.0 rc8] Changed
  • [#218] The product options are active immediately after assigning them to categories.
[2.4.0 rc7] Changed
  • Reverted back #216 due to issues.
  • [#216] [msGetOrder] Need to update pdoTools to version 2.5.6-pl to fix this.
  • [msGetOrder] Orders are show to all if parameter &id is set.
  • [mgr] Fixed number of rows in orders panel.
[2.4.0 rc6] Changed
  • [#216] [msGetOrder] Fixed ability to &includeTVs.
[2.4.0 rc5] Removed
  • Removed wrong "requires" field in msPayment settings.
[2.4.0 rc4] Changed
  • Improved migration of system settings when upgrade from older versions.
[2.4.0 rc3] Changed
  • [msGallery] Improved snippet in case when product has no media source set.
  • Fixed work with autocomplete product options.
[2.4.0 rc2] Changed
  • Fixed duplicate of order number in msOrderHandler.
[2.4.0 rc1] Changed
  • Fixed loop error on change class key from modResource to msProduct.
[2.4.0 rc] Added
  • [msOrder] New parameter &userFields.
  • [msGetOrder] Added chunk tpl.msGetOrder.
  • [msOptions] Added chunk tpl.msOptions.
  • [msProductOptions] Added chunk tpl.msProductOptions.
  • [msGallery] Added chunk tpl.msGallery.
  • [msGallery] Added Fotorama script out from the box.
  • All snippets are completely rewritten.
  • All chunks uses Fenom syntax.
  • Improved compatibility with MySQL 5.7.
  • Improved orders form panel.
  • [msOrder] Chunk tpl.msOrder.outer renamed to tpl.msOrder.
  • [msCart] Chunk tpl.msCart.outer renamed to tpl.msCart.
  • [msGetOrder] Now acts as usual snippet and do not set placeholders to the page by default.
  • Improved email chunks. Added common email template.
  • [msOrder] Removed chunks, tpl.msOrder.payment and tpl.msOrder.success.
  • [msCart] Removed chunks tpl.msCart.row and tpl.msCart.empty.
  • [msGetOrder] Removed chunk tpl.msGetOrder.row.
  • [msOptions] Removed chunks tpl.msOptions.outer and tpl.msOptions.row.
  • [msProductOptions] Removed chunks tpl.msProductOptions.outer and tpl.msProductOptions.row.
  • [msGallery] Removed chunks tpl.msGallery.outer, tpl.msGallery.row and tpl.msGallery.empty.
[2.4.0 beta3] Changed
  • Small improvements of product gallery.
  • Improved ExtJS settings panel.
[2.4.0 beta2] Added
  • Added system setting "ms2_template_category_default".
  • New system to register 3rd party classes of extensions.
  • New system to register 3rd party plugins for objects model.
  • New logo.
  • Improved referrals registration.
  • Improved ExtJS product panel.
  • Emails chunks are now processed by pdoTools.
  • Replaced modX::toJSON and modX::fromJSON calls to native functions.
  • Improved duplicate of products and categories.
  • The data fields of the product are added to the tags of the resource: , etc.
  • Improved registration of JS and CSS on frontend.
  • Javascript callbacks now are arrays with functions. New functions to register and remove callbacks.
  • Updated model for MySQL 5.7.
  • Improved product gallery.
[2.4.0 beta1] Changed
  • Improved categories with products.
  • Improved menu of categories in resources tree.
  • Ability to change class_key of category.
  • Many improvements of ExtJS category panel and products grid.
  • Setting ms2_category_content_default is now empty by default.
[2.4.0 beta0] Added
  • Added icons for CRCs in managers tree.
  • Fixed php type of "article" in msProductData xPDO object.
  • Improved orders panel.
  • Updated builder.
  • Minimum version is MODX 2.3.
[2.2.0 pl2] Changed
  • ID for Category's options tab
  • Fix installation for MODX 2.4.0
  • msProductOptions product property
[2.2.0 beta4] Changed
  • Category pagination fix.
  • Fixed bug removal options when modifying and generating images of products
  • Don't display tplOuter when all options are empty with hideEmpty=1
[2.2.0 beta3] Changed
  • Measure units for options.
  • Restrictions for option names.
  • Superboxselect and checkbox option types.
  • Fixed bug with empty options after modResource save.
[2.2.0 beta2] Changed
  • Groups of options support.
  • hideEmpty parameter in msProductOptions snippet.
  • Fixed some bugs.
[2.2.0 beta] Changed
  • Custom product options support. More info at
  • Fixed TV showing under content.
  • Some code refactoring.
[2.1.12 pl] Changed
  • Improved installation script for MODX 2.4.
[2.1.11 pl] Added
  • Added new events: "msOnBeforeGetOrderCost" and "msOnGetOrderCost".
  • [mgr] Direct links to orders in manager.
[2.1.10 pl1] Added
  • Added support of Tickets 1.6.
  • Updated pdoTools version in the installer.
[2.1.9 beta] Changed
  • Fixed modification of order price by delivery and payment in default order handler.
  • Fixed processing of decimal prices in PayPal payment class.
  • Improved chunk tpl.msOrder.payment.
[2.1.8 pl3] Changed
  • Fixed controllers for MODX 2.3.
  • Fixed routes to processors for MODX 2.3.
  • Fixed product getlist processor for MODX 2.3.
  • Fixed sorting products in category grid by clicking on column header.
  • Disabled Bootstrap icons for MODX 2.3.
  • Fixed product gallery for MODX 2.3.
  • Fixed issue with deleting product files children in MODX 2.3.
  • Fixed "autocomplete_err_noquery" error in MODX 2.3.
  • [#148] Fixed duplicate connector.
  • Fixed work of "minishop2-combo-user" in MODX 2.3.
[2.1.8 beta] Added
  • Added field "name" in object msOrderProduct for storing pagetitle of the product.
  • Added integer field "type" to msOrder.
  • Fixed log level in PayPal method.
  • Fixed CustomerProfile connection in schema.
  • Improved price and weight formatting in orders table.
  • Some UI improvements and fixes.
[2.1.7 pl5] Changed
  • [#131] Fixed update of product thumb when you update thumbnails.
  • [#129] [msGetOrder] Fixed setting of placeholders.
  • Fixed work with comments on product panel.
  • [msOrder] Now snippet loads "building", "room" and "comment" from extended field of users profile.
  • [mgr] Fixed parameter "maxUploadSize" in gallery.
[2.1.7 pl1] Added
  • [#113] Added Lithuanian lexicons.
  • New system setting "ms2_category_remember_grid".
  • [#119] Improved compatibility with AjaxManager.
  • [#118] Fixed negative cost in payment and delivery methods.
  • [#112] Restrict cart items to specific contexts.
  • [#111] Fixed remove of products links.
  • [#107] Fixed empty customer field if fullname is not specified.
  • [#106] Additional check of friendly filename in gallery.
[2.1.6 pl4] Changed
  • [#110] Fix generate thumbs on upload for Amazon S3.
  • Fixed counting money spent in new customers.
  • [#104] Fixed placeholder in emails.
  • [#102] Improved checking of thumbnails url.
  • [#98] Refactored permissions in processors.
  • [#94] Formatted placeholder in snippet msCart
  • [#78] Fixed setting flag isfolder to false for old category of the product.
  • Fixed handling of non-ajax requests.
  • Removed unnecessary ajax request on add to cart. Fixed possibly E_NOTICE.
[2.1.5 pl] Added
  • Added default media source in product "create" processor.
  • Added default template in product "create" processor.
  • Added buttons in orders management page.
  • Improved rename of files in gallery.
[2.1.4 pl5] Added
  • Added script for import products in core/components/minishop2/import/csv.php.
  • Fixed icons in chunks.
  • [#95] Fixed price and weight format.
  • Improved installator. Now you can update chunks on install.
  • Fixed possible errors on thumbnail generation.
  • Progressive thumbnails in gallery.
[2.1.3 pl2] Added
  • Support Bootstrap3.
  • Fixed E_WARNING in snippet msOptions.
  • Fixed bug with php-apc on create order.
[2.1.2 pl2] Changed
  • Fixed possibly E_NOTICE in snippets.
[2.1.2 pl] Added
  • Added support of non-image files in gallery.
  • Added ability to hide tabs of product page in manager. See new system settings.
  • [#77] Fixed change type of existing resource to "msProduct".
  • Improved style of horizontal product tabs.
  • Improved proportions in settings tab of category.
  • Improved rename of product images.
  • Improved retrieving of first thumbnail of image in gallery.
  • If you specified wrong "ms2_product_thumbnail_size" parameter, gallery will still work.
  • Improved snippet "msGallery" for display non-image files.
  • [#84] Fixed displaying of email of vendor in manager.
[2.1.1 pl2] Changed
  • Fixed parameter "&parents" in msProducts.
[2.1.1 pl] Changed
  • Snippet msProducts supports pdoTools 1.8.0. Parameter "&showHidden" enabled by default.
  • Fixed fatal error with "clearCache" when msProduct created trough processor and it`s parent is not msCategory.
  • Improved generation of thumbnails.
[2.1.1 pl] Added
  • Added support of component "msDiscount".
  • Added counting of total spent sum by every customer in msCustomerProfile.
  • Fixed access permissions tab on product update.
  • Fixed getPrice and getWeight calls in snippet msProducts.
  • Improved xtype "minishop2-combo-user".
[2.1.0 pl2] Changed
  • Fixed placeholders on msProduct page due to issues with @INLINE chunks.
[2.1.0 pl1] Added
  • Added new events: "msOnGetProductPrice" and "msOnGetProductWeight".
  • Fixed wrong events in database from previous release.
  • Changed "vendor_" to "vendor." in msProduct::toArray() for sameness with the snippet msProducts.
  • Moved all logic from old action.php to new plugin. File leaved for compatibility with users modified javascript.
[2.1.0 pl] Added
  • Added method msPayment::getCost().
  • New object "msCustomerProfile". It can be extended by plugins like "msProductData".
  • Added new fields in "msProductFile": "hash" for sha1 of file and json field "properties".
  • Added check for duplicate images in product gallery by checking hash of the content of file.
  • Added new parameters for media source: "maxUploadWidth" and "maxUploadHeight" for frontend image resize.
  • Added renaming files of product gallery together with thumbnails.
  • [#73] Added virtual vendor fields. You can get it by $res->get('vendor_name');
  • [#65] Added new system events: "msOnBeforeValidateOrderValue" and "msOnValidateOrderValue".
  • [#64] Added ability to stop switching order status from system plugin.
  • [#63] Added new parameters for media source: "imageNameType". Switching to "friendly" will generate names for uploaded files by FURLs algorithm.
  • [#61] Added ability to sort products in category by drag and drop.
  • [#56] Added JSON field "properties" to "msProductFile".
  • [#52] Added ability to customize orders in manager by 3 system setting: "ms2_order_grid_fields", "ms2_order_address_fields" and "ms2_order_product_fields".
  • Added method PayPal::getPaymentLink() for continuing interrupted payment process. You will see in emails.
  • Added parameters "&tplSingle" and "&toSeparatePlaceholders" to snippet msGallery.
  • Changed default sort in goods grid on "menuindex, ASC".
  • Improved method msDelivery::getCost().
  • Improved method msOrderHandler::getCost(). Now you can specify additional percent for delivery and payment in manager.
  • Plugin "miniShop2" can automatic save referrers.
  • In snippet "msProducts" you can override "where", "select", "leftJoin", "innerJoin" and "rightJoin" properties. Added pdoFetch 1.4.1 support.
  • Improved other snippets.
  • Changed uploader in product gallery to "Plupload" (Thanks to Alex Rahimov).
  • Gallery upload processor now can receive parameters "id" and "file" for external images upload.
  • [#77] Fixed changing type of existing resource to "msCategory".
  • [#76] Fixed parameter "offset" in msGallery.
  • [#75] Remove multi-category links when category removed.
  • [#74] Refresh data in order from users profile if he is authenticated.
  • [#66] Fixed saving payments methods when create a new delivery.
  • [#62] Fixed work with "*.gif" files in products gallery.
  • [#59] Improved regular expression for email verification.
  • [#59] Improved validation of customer name and email when create order.
  • [#59] msOrderHandler::add() now can return an error.
  • [#59] Improved registration of javascript on frontend.
  • [#59] Improved show\hide of msMiniCart with css.
  • [#59] Refactored default frontend javascript.
  • [#59] Works with no javascript. (Thanks to Alexey Kartashov)
  • [#58] Fixed PayPal non-USD currency.
  • [#50] Fixed checking of the existence of the Tickets component.
  • [#5] Possible fixed "Cannot execute queries while other unbuffered queries are active" on php < 5.3.
  • Some fixes for MySql STRICT_TRANS_TABLES mode.
  • Updated jQuery to version 1.10.2
  • Gallery UI improvements for MODX 2.2.9
  • Returned action.php for backward compatibility with the old javascript
[2.0.1 pl3] Added
  • Added german lexicon.
  • Now you can specify version of file in "ms2_frontend_js".
  • [#60] Fixed type of field "index" in "msOrder".
  • Improved listing of products in the categories of manager.
[2.0.1 pl2] Changed
  • Improved submit of order form.
  • msProducts saves order of ids received through &resources=``. It need for smooth work with mSearch2.
  • [mgr] Fixed search in vendors combo
[2.0.1 pl1] Added
  • Added loading of lexicons for 3rd party payment methods. They must be named in "" format.
  • Added placeholder in the new user email. It will work only if payment method has function getPaymentLink(msOrder $order);
  • [#45] Added system setting for specify default content of category.
  • [#53] Completely refactored call and processing plugin events.
  • Removed placeholder from product page because of issues.
[2.0.1 pl] Added
  • Added 2 new events on order remove: "msOnBeforeRemoveOrder" and "msOnRemoveOrder".
  • Improved classes: "msProduct" and "msCategory". Now $modx->getCollection('msProduct'); returns only products.
[2.0.1 beta3] Changed
  • Fixed msGallery
[2.0.1 beta2] Added
  • [#42] Added parameter "returnIds" to snippet msProducts.
  • Added setting placeholder to snippets msGallery and msProducts.
  • Added parameter "where" in snippet msGallery, for specify JSON encoded string with additional query data.
  • Added parameters "limit" and "offset" for pagination. msGallery can be used with getPage now.
  • [#44] Enabled duplicate of category.
  • [#41] Fixed panel with tvs on product create.
  • Parameter "resources" not suppressing "parents" in msProducts anymore. Now they working together: resources that are not in parents will not be returned.
  • Snippet msGallery now can to display placeholders like or .
  • Fixed display an original image in msGallery. If upgrade, replace placeholders to in chunk "tpl.msGallery.row" manually.
[2.0.1 beta1] Changed
  • Maybe fixed bug with php-apc and sessions
  • Fixed plugin params on events "msOnBeforeCreateOrder" and "msOnCreateOrder". Now you can change $msOrder by link.
  • Fixed error with no changing status of order in manager.
[2.0.1 beta] Added
  • [#38] Added "menuindex" in product fields.
  • [#35] Added 2 system setting to enable or disable the remembering of panel tabs.
  • [#29] Added verification of object instance, when loading neighborhood resources in manager.
  • New permissions for work with order: "save" and "view". New events for update order.
  • Added ability to add\update\remove products in order.
  • [#37] Ability to override method miniShop2::changeOrderStatus() in custom order class.
  • [#32] Enabled displaying of errors when uploading files in product gallery.
  • [#30] "miniShopManagerPolicy" is automatically assigned to a group "Administrators".
  • [#28] Returned the lost fields in images of msGallery.
  • [#27] Improved ajax requests in default javascript.
  • [#26] Improvements of categories tree.
  • Fixed quick fields in snippet msOrder. Update your chunks for delivery and payment methods.
  • Improved "totalVar" placeholder in snippet msGallery.
  • Fixed model. Added proper primary keys for xPDOObjects.
  • Ability to load only "miniShop2Config" object on frontend, without default javascript and jQuery.
  • Fixed parameter "depth" in snippet "msProducts".
  • [#36] Removed filter_var(), because of issues on stupid hostings.
  • [#25] Removed replacing of empty alias to id. Added 2 system setting for switching using resource id as alias for categories and products.
[2.0.0 pl3] Changed
  • Compatibility with pdoTools 1.2.0
[2.0.0 pl2] Added
  • Added ability to create system setting "ms2_cart_max_count" to override maximum number of products for one operation.
  • Added system setting "ms2_price_snippet" for modification of product price.
  • Added system setting "ms2_weight_snippet" for modification of product weight.
  • [mgr] Fixed formatting of dates in category grid.
  • [mgr] Fixed decimals in product category grid.
  • Fixed placeholders in emails subjects.
  • Fixed generation of thumbnails in gallery for working with ImageMagick.
  • Fixed link type "Many to many".
  • Fixed requirement of non-existing permission "update_document" in processors.
  • Product key in msCartHandler now generates with using "$price" and "$weight", because they can be modified when adding to cart.
[2.0.0 pl1] Added
  • Added selection of product links in snippet msProducts. See the new snippet properties.
  • Added ability to use msProducts with any modResource class.
  • Added property "tvPrefix" to msProducts for compatibility with getResources.
  • Added property "outputSeparator" to snippets msOptions and msProducts.
  • Added system parameter "ms2_price_format" for specifying how to format price of product.
  • Added system parameter "ms2_price_format_no_zeros" for optional removing extra zeros at the end of price.
  • Added system parameter "ms2_weight_format" for specifying how to format weight of product.
  • Added system parameter "ms2_weight_format_no_zeros" for optional removing extra zeros at the end of weight.
  • [mgr] New icons in tree
  • [mgr] Changing of product image now cleans its cache.
  • Small improvements of the snippets at initialization.
[2.0.0 rc6] Changed
  • Fixed cleaning pdoTools in msGallery
  • Improved saving payment method in order when quickly switch delivery.
[2.0.0 rc5] Changed
  • Integration of PayPal express-checkout payment method.
[2.0.0 rc4] Changed
  • Fixed bugs in snippets
  • Fixed joining images by rank when includeThumbs.
[2.0.0 rc] Added
  • [mgr] Added displaying of nested products in categories. System setting "ms2_category_show_nested_products" can disable it.
  • [mgr] Added the ability to link products together.
  • [mgr] Added link to resource from ordered products.
  • [mgr] Added ability to specify web document for Vendor by property "resource".
  • [#10] Added checking for negative value of adding products in cart.
  • [#12] Added regeneration site maps after new product create.
  • [#14] Added check of "register_globals" on cart/add.
  • Added system setting "ms2_product_thumbnail_size" for setting default size of product thumbnail.
  • Added vendor placeholders on product page. Now you can use , etc.
  • Added beta scripts for console converting miniShop1 to miniShop2.
  • Added partial french translation.
  • Added method miniShop2::getTagged() from MS1.
  • Added ability to load plugins, that can add new or overload existing product fields in model and manager.
  • Added parameters for joining thumbnails and tvs in snippets msProducts, msCart and msGetOrder.
  • Improved save of product options.
  • [#6] Fixed error when order makes authenticated user without email.
  • [#8] Fixed remove of order.
  • [#9] Fixed date formatting in manager for working in Firefox.
  • Fixed automatic install of pdoTools.
  • Fixed fetching images in snippet msGallery
  • Other fixes and improvements.
[2.0.0 beta-1] Added
  • Added manager pages
  • Added create and manage orders
[2.0.0 beta-0]
  • Initial release.

Current releases

View | Download
April 10, 2023
2.0 - <2.8

View | Download
March 31, 2023
2.0 - <2.8

View | Download
March 14, 2023
2.0 - <2.8

View | Download
March 3, 2023
2.0 - <2.8

View | Download
March 2, 2023
2.0 - <2.8

View | Download
February 2, 2023
2.0 - <2.8

View | Download
January 31, 2023
2.0 - <2.8

View | Download
December 1, 2022
2.0 - <2.8

View | Download
September 7, 2022
2.0 - Current

View | Download
July 4, 2022
2.0 - Current

View | Download
June 17, 2022
2.0 - Current

View | Download
June 13, 2022
2.0 - Current

View | Download
June 8, 2022
2.0 - Current

View | Download
May 30, 2022
2.0 - Current

View | Download
May 20, 2022
2.0 - Current

View | Download
April 27, 2022
2.0 - Current

View | Download
October 16, 2021
2.0 - Current

View | Download
September 27, 2021
2.0 - Current

View | Download
September 12, 2021
2.0 - Current

View | Download
August 25, 2021
2.0 - Current

View | Download
April 1, 2021
2.0 - Current

View | Download
March 15, 2021
2.3 - Current

View | Download
February 14, 2021
2.3 - Current

View | Download
January 27, 2021
2.3 - Current

View | Download
December 16, 2020
2.3 - Current

View | Download
December 8, 2020
2.3 - Current

View | Download
September 15, 2019
2.3 - Current

View | Download
March 17, 2019
2.3 - Current