It has been some time since our last blogpost, but that does not mean we have been relaxing and doing nothing! We worked very hard to bring you a lot of new functionality, improvements in all area’s, an updated website and more more more documentation!
We continued to release according to our rapid release schedule since that worked out quite good for our customers, always having access to the latest features and fixes. Keep checking out the uWebshop.com website to make sure you have the latest and greatest uWebshop for Umbraco release!
Our changelog can be found at our website: http://uWebshop.com/changelog.
In this blogpost we would like to dive a bit more into the details and describe the changes to the uWebshop package in version 2.2 and 2.3 in detail.
[NEW] Umbraco 6.1+ support
In uWebshop 2.2 we introduced Umbraco 6.1 support, using the new Umbraco 6 API instead of the legacy 4.x API. This improved speed of installation and gave us easier access to a lot of API functionality; making sure your uWebshop installation uses the very latest and greatest of what Umbraco has to offer.
[NEW] MVC Baskethandler on Umbraco 6.1+
uWebshop 2.2 now features an out of the box MVC Baskethandler! Making it very easy to build webshop-solutions using the great MVC power of Umbraco.
We even made it possible to simply upgrade your current webforms baskethandler website to an MVC version by offering a global “handle” Action. Just replace your <form> tags in your razor with the MVC handle action and you are ready to go!
Read all about our MVC baskethandler in our MVC Baskethandler support document.
[NEW] Improved Installer on Umbraco 6+
If you are using Umbraco 6 (we all do now, right?) and preferably Umbraco 6.1+ and installing uWebshop you get a more complete installation then before. The installation is not only faster, but also installs multi-node-tree-pickers by default. Also the layout of the document types and properties is changed on new Umbraco 6+ installations, after feedback sessions with our customers!
[NEW] Multiple coupon codes on 1 discount, including count per code!
We build a new coupon codes datatypes which can be used to connect ‘unlimited’ coupon codes to one order discount. Each coupon code has it’s own counter to limit usage.
[NEW] Set payment method price as percentage of order total instead of fixed amount
You can now set the price of a payment provider to be a percentage of the order total.
[NEW] Use alttemplates for categories and products
Use altTemplates on any category and product, just like you are used to on other Umbraco pages.
[NEW] Possibility to use different validation of properties per orderline
First we introduces order-line validation, now you can create different validation per orderline. Use a different product document type for the product (suffix the doc type), and create an ordered product document type suffixed with the same value to match them when order validation hits. Making different kind of products be able to have different kinds of validation on mandatory and regex fields!
[NEW] Razor version of the Order Overviews instead of usercontrol so now completely customizable!
Before there was XSLT.. now there is Razor for everything!
[NEW] Razor version of the Order Details
Yep, also the order details in the backend are now razor!
[NEW] Razor versions of the Emails
And while we were busy with the move to Razor, of course we didn’t forget about the emails. XSLT emails also still work of course!
[NEW] New Razor helpers including ones for in Umbraco backend!
We even added some Umbraco Backend razor helpers in the mix to open nodes, open orders and even edit properties and stock using normal html forms!
[NEW] Orders are marked as ‘CreatedInTestMode’ when test-mode is set on the store
On each store node you can now mark the store as ‘in test-mode’. This will enable test-mode for all payment/shipping providers (unless overruled) and mark orders as “CreatedInTestMode’, making them easily identifiable.
[NEW] Urlname validation in the catalog per store, global and in combination with normal umbraco content nodes. Adds (1) to Urlname if there would be a conflict.
A default Umbraco feature, now added to uWebshop on multi-store level to prevent duplicate nodes from happening in the catalog vs the store.
[NEW] Compatiblity tested with Umbraco 4.8 – 6.1.5
[NEW] If ProductVariant.Stock is less then ordered stock, ordercount will be set to available stock
When adding to basket with a given quantity, but the quantity is more then the stock, the order-count in the basket will be updated to the max stock value, also taking into account the stock of product variants.
[NEW] Editting order in backend does not show cancel balloon anymore
Umbraco v6 only, if you edit orders in the backend and publish the order, you will not get the ‘cancelled event’ balloon anymore.
[NEW] Enable/Disable datatype now also has “StoreDefault” value
This 3rd option on the enable/disable datatype makes it easier to identify which values are taken from the Store node, or which are defined on the node itself.
[NEW] Testmode on store also sets testmode for shipping & payment providers
When setting the test-mode on the store, all payment and shipping providers for that store are set as test-mode as well. Unless defined otherwise on the payment/shipping provider node itself.
[NEW] New Event: EmailHelper.BeforeSendEmail
This new event makes it possible to add a file to the email before it gets send.
Great way to attach a PDF invoice!
[NEW] OrderLoaded event to add custom validation
uWebshop already was loaded with events, but we added a new one; the “order loaded” event. This event is fired as soon as an order is accessed and a good purpose for this feature is to add custom validation to an order. Read on how to implement this feature in our documentation about this event.
[NEW] All uWebshop document types can be extended using child document types starting with the same alias
One of the great features of uWebshop, which is not that commonly known, is that you could easily extend our default catalog document types with your own versions. Making it possible to add extra fields, different icons or with variants create ‘preset’ variant groups in combination with standard values package.
Since uWebshop 2.2 it is now possible to extend any document type and have it handled by our API. Making it possible to limit the fields on a discount document type, add extra fields on certain shipping provider type, etc.
- Read about extending the category document type
- Read about extending the product document type
- Read about extending the product variant document type
Extending all other uWebshop document types work in the same way.
[NEW] Confirm = confirm
While this item maybe sounds a bit strange, it’s a change in behaviour of how uWebshop handles confirmation of orders.
Once a customers confirms the order and is send to a payment provider and clicks back to return to the store instead of paying for the order, a 1:1 copy of the order is generated (with a new unique id) for that customer. Before when a customer clicked back to return to the store the same order was loaded, but the status was changed to prevent payment if changed would be made. The new 1:1 copy to a new order function is much more customer friendly.
[FIX] API Consistency Webforms Baskethandler, /BASE baskethandler and MVC Baskethandler have the same functions
We noticed there were some inconsistencies in our baskethandlers and now made sure they are 1:1 equal gain in features.
[FIX] Coupon discount bug with 100% discount
When adding a 100% coupon discount all was fine during checkout, but when reading the order back in the Umbraco backend the discount wasn’t applied anymore.
Read all about creating complex discounts in this order discount support document.
[FIX] UseStoreStock proper fallback when no store specific stock fields are found
If you work with multiple stores in uWebshop each store can have it’s own stock, a setting on the store document. When enabled this store looks for it’s own stock field on the product/variant document and uses this instead of the global stock. We added an extra check that when this feature is enabled, but no store specific stock field is found, the global stock field is used.
[FIX] Multi-Hostname will give relative url’s now
When having multiple hostnames on you website node, and a multi-store setup, uWebshop will now use relative urls instead of only using the first set hostname
[FIX] VAT Checker fixes for Greece and trimming white space
When using our VAT checker, we did not change “GR” into “EL”, making VAT impossible to validate for Greek customers. Also we did not trim whitespace, which we do now. Read about how to work with the cross border VAT service in uWebshop.
[FIX] Product Discounts now check current logged in user again
When you set a membergroup on the product discount it now will honour this setting and render prices on the website using this discount again.
[FIX] Is product variant has no stock don’t add to basket
A product without stock could not be added to the basket, now it’s also checked if the added product variants are in stock, otherwise nothing is added to the basket.
[FIX] NiceUrl(string StoreAlias) gave back urlname from currenstore instead of given storealias
Using the Category/Product .NiceUrl(string StoreAlias) function to get the Url from a product from another store was not getting localised urlName values from the store reffered to. Fixed now!
[NEW] Removed JSON.net DLL from project
No more conflicts with the JSON.net version you prefer to use!
[NEW] Refactoring codebase & created even more unit-tests
[FIX] Various other issues fixed and code improvements
As usual, all the bugs or strange issues we found or you send in are fixed.
This includes an issue with 100% coupon discounts, an issue with discount ranges, a return stock issue and a few more.
Last week we did a presentation at umbOktoberfest 2013 in Frankfurt, Germany.
Of course we could not attend this Umbraco event without having a German language available for the uWebshop backend!
You can download the German language pack on our website.
We are constantly improving our documentation and adding new documentation for new features. Let us know if you want us to write specific documentation about specific features and we’ll try to create it. We love to hear from you!
Updated uWebshop.com site
We also made a huge update to the uWebshop website making better distinction in information for developers, project managers and shop owners. And included a new feature list and a complete change log. And overall giving much better information about what uWebshop is and what it can do for you.