With so many changes over the past couple of years, we noticed that many small and big features have been added to the core of VirtueMart. Some of these have been provided by 3rd party developers, whilst others were added as workarounds to remove/avoid bugs, or to complete a feature, which combined with our increased experience has translated into many more general and useful functions.
A good example of an enhanced usable feature is the way in which Virtuemart automatically sends emails. In VM1 emails were generated automatically for any and all order status changes, but VM1 had a different cart workflow, so we simply adjusted the workflow and made more use of the order status email system, however this rebounded with a different problem, in that the merchants felt spammed by their own shop. To address this issue, as part of the enhanced features, we have added a configuration setting for mail, so you can control which emails are used, resulting in a better end user experience.
Some time back we started working on version vm2.1 and noticed that API changes would be required, whilst at the same time new bugs in VM2.0 were being found which forced us to stop development of VM2.1 at that stage to further fix VM2.0. However some developers needed those VM2.1 features, which they had already added to their customers' shopping carts and plugins, so we started to add backward compatible features back into the VM2.0 series, which resulted in us gathering together the developers' and users' ideas. Read here to get an idea http://forum.virtuemart.net/index.php?topic=123203.msg420458
Re-implementation for backward compatibility:
In the meantime, the Joomla world moved on and released Joomla 3.x which also has some API changes itself, so we had to replace some of the Joomla functions ourselves (for example JText against vmText), which exposed the situation that some of these revised functions were not in VM2.0. So to give our 3rd party developers the chance to write extensions compatible for VM2.0 and VM3 we have introduced these general functions to VM2.6, which makes VM2.6 the perfect interim version between VM2.0 and VM3.
The added features meant for VM2.2 and the implementation of the general functions required for VM3 justifies a direct jump to VM2.6 and also better reflects our progress in enhancing VirtueMart.
The old VM2.1 trunk is completely synchronised with VM2.6 and will become the new VirtueMart 3; the version for developers is now VM2.9, so the VM2.0 series ends with VM2.6.x. VirtueMart 3 works on Joomla 2.5 and 3.2, which brings everything up to date and allows us to allocate our time now to developing VirtueMart 3.
This sounds complex, but endusers just need to know:
- version 2.6 is the interim between VM 2.0 and VM3= new features, no API changes, only compatible Joomla 2.5
- version 3: coming soon, compatible Joomla 2.5 and Joomla 3, contains API changes (mainly custom fields)
We are very happy about the changed release stragegy of joomla. Even maybe not written down clearly we had always a similar strategy. The version vm2.6 is now the last supported version of the vm2.x series and will be supported with security fixes at least the next 2 years. There are additional developer versions to the release strategy of joomla and the strategy to reimplement features of a new series back to the old. You may read more detailled about our roadmap here http://dev.virtuemart.net/projects/virtuemart/wiki/Roadmap
PHP 5.2.x is EOL since 3 years and 3 months. From the view of a technician or programmer there is no need to say that php5.2.x is completly outdated and unsecure. There are no fixes anylonger since 3 years, please read here http://php.net/eol.php. There are some critical issues in the encryption functions in the php5.2 versions. We worked as best backward compatible, but bugs are more likely. We even suggest to use php5.5 latest.
Therefore, the new minimum requirement for VirtueMart is php 5.3.10
- Moved language to the component folder
- new Sample Data
- Joomla Virtuemart Complete Installer
- Added GTIN and MPN
- automatically encryptes storing of fields in the database.
- stockable Plugin: Added functionality to order/reorder child products
- vmText,vmRequest and vmjsapi.php in own files/added them for BC to vm2.0
- added plgVmCouponInUse
- Added check in cart to get cart variant if not in productdetails form
- Added login for ask a question, recommend a product
- added multiple products for add to cart popup
- added cleaning of cache if config is stored
- added recaptcha for registration and ask a question/recommened to a friend
- Proper use of MyISAM and InnoDB according to its intended use.
- paypal response fixes
- Paypal Amount displayed in payment currency
- klarnacheckout live URI fix
- authorize: error message fix when invalid date
- removed stupid block which prevent managers to enter the BE (the "you are not vendor of the store problem")
- old ACL of vm is completly removed, proxy functions are still there, but using joomla authorization internally
- changed some more JText to vmText to prevent cutted description of customfields
- Fixed ordering of customfields
- changed slug filter, creates nicer slugs
- weight and length units should now be correctly displayed (and stored) for childs
- added deletion of customfields if a protocustom is deleted.
- Customfields values can be an array (multiple input)
- Userfields select list with size
- changed all xhtml to false, except for pdf creation
- Fallback for using tcpdf 6 with vm2.0
- added a fix, so that shoppergroups can be easier manipulated by session
- Pagination uses $limitStart = JRequest::getInt ('limitstart', 0); if you change the category/manufacturer
- coupon expiry date fix
- plgVmOnUserfieldDisplay userId fallback
- fix for double optin
- small enhances for calculator makes it possible to use the variant prices better within rules
- fixed country/state dropdown
- Cart controller now uses fallback to set the shipment/payment id of the cart in case the Request is empty
- one form for the cart, found BC solution
- fixed problem with TOS and agreed default set to 1
- fixed auto login if registering in checkout
- reviews emails: not sending an email when the review has not been saved.
- a lot of minors, little fallbacks, small completions, added a missing returns, added initializing of a variable ....
- replaced deprecated key_exists by array_key_exists