Merchello Product Collection Picker - Allows for directly picking product collections so that collection trees may more easily be rendered. Example - Category -> Sub-Categories.
Merchello Checkout Stage Picker - Allows for associating an "Checkout Stage Alias" such as BillingAddress, ShippingAddress, ShipRateQuote ... etc with Umbraco content. This makes it easier in some cases to find Umbraco content via standard Umbraco content queries that is responsible for a checkout operation so that the Id, content name or a unique document type need not be referenced.
New UI Pattern (dubbed Fast Track)
We've replaced the Merchello Bazaar with a new implementation we're referring to as "Fast Track." New UI specific classes have been introduced into Merchello to assist in implementing stores that make it easier to customize individual operations rather than having to support an entirely customized solution of a starter kit between upgrades.
Merchello.Web - A new foundation for UI classes have been defined as a set of model interfaces in the Merchello.Web.Models.Ui namespace. Generic type factories (Merchello.Web.Factories) and controllers (Merchello.Web.Controllers) have also been introduced to allow for basic implementation of common UI operations such as adding items to a basket, the basket itself and a generic checkout workflow.
Merchello.Web.Store - Is a new core library that contains basic implementations of the Merchello.Web models, factories and controllers. Depends on Merchello.Web and is now included with every Merchello installation.
FastTrack Starter Kit
Merchello.FastTrack - This library extends Merchello.Web.Store and is the foundation of the FastTrack Starter kit. This is a separate library and NOT included in a default Merchello installation.
A new Nuget Package is available Merchello.FastTrack that includes the Merchello.FastTrack.dll and default plugin views (Razor cshtml) for use in web application projects in cases where the implementer wishes to use the controllers and views included in the FastTrack starter kit using their own content type (document types) and content tree structure.
Merchello.FastTrack Starter Kit - Installs a basic fully functioning store using the fast track pattern.
Updates
The property value converter for Merchello Product List View datatype now returns an object of type ProductContentListView instead of IEnumerable<IProductContent>. ProductContentListView itself inherits from IEnumerable<IProductContent> (so this is not a breaking change) and also exposes the CollectionKey associated with the product list.
Invoice PO Numbers are now editable through the back office
Added ProcessingCompleted event to PayPalExpressController to allow for more control over notifications
Removes Merchello.Bazaar from the Core (Merchello.Web.UI project)
ShipCountryService and ShipCountry have been publicized
Billing Address fields are now searchable in the sales view.
Bug Fixes
Fixes issue with IProductContent culture not being set
PayPal Express Cancel/Error Handling
Umbraco Version
Merchello tested against Umbraco 7.4.3
Upgrade your Umbraco installation to Umbraco 7.4.x before upgrading Merchello.
Copy over Merchello binaries (dlls) in the bin directory. Copy over the AppPlugins/Merchello and AppPlugins/MerchelloProviders directory (note if you have made any configuration changes in the merchello.config make sure to retain those).
Hi Rusty,
I upgrade my current project with nupkg for Merchello 2.1 and Fastrack 2.1. Then I copy from my project with full Merchello + Fastrack starter kit the AppPlugins/Merchello AppPlugins/MerchelloProviders and AppPlugins/Fastrack
When I try to add a ProducCollectionPicker, I got this:
:{{ collection.name }}
You will need to copy one of the language files (en-GB.xml or en-US.xml) located in src/Merchello.Web.Ui.Client/config/lang/ and make the translations and make a pull request.
So that you can immediately use it in your build, copy the new file into your /App_Plugins/Merchello/lang folder manually.
The originating file is bundled into our package in the build script.
How can i install this with the FastTrack Website??
I mean when i go to install Mercelo_FastTrack.zip as "Import local package" i get an error message that some Mercelo.Web dlls are missing!
Merchello.FastTrack - This library extends Merchello.Web.Store and is the foundation of the FastTrack Starter kit. This is a separate library and NOT included in a default Merchello installation.
A new Nuget Package is available Merchello.FastTrack* that includes the Merchello.FastTrack.dll and default plugin views (Razor cshtml) for use in web application projects in cases where the implementer wishes to use the controllers and views included in the FastTrack starter kit using their own content type (document types) and content tree structure.*
Merchello.FastTrack Starter Kit - Installs a basic fully functioning store using the fast track pattern.
I mean i downloaded the Merchello.FastTrack (idk how to use nugets) and i extract it and have a folder with .css .dll .cshtml and various types of files... How to add them to my Umbraco i mean? :D
Edit: OK found it! ty all
i go check it finally :D
Hi Rusty, what is the difference between:
Merchello.Web.Models.VirtualContent;
Merchello.Web.Models.ContentEditing;
For example, I got a custom Controller that fill up a custom store page. I need the list of products for one category. I want to use the Product model available in the Web.store dll to be easily compatible with the factories you create. But I need to add some more custom properties.
to display a list of products. If I need to add some custom properties? What is the best way to achieve this? Creating a custom class with IProductContent
Public class ProductTest: IProductContent
But I do not want to implement all the functions! Do you have a heritable class for that?
I found ProductDisplay from the ContentEditing editing namespace. It is suitable for that?
Can you not just extend the product in the back office and use the properties via IProductContent / IPublishedContent and local extension methods? I guess I'm not understanding what you are trying to do ...
The models in ContentEditting are intended for the back office. They are NOT IPublishedContent. They are mainly used when serializing to JSON.
Ho my god you'r wight! Not enough sleep! I will use product extension.
What is the simplest way to jump from the product extended properties when I do a foreach of IEnumerable
we can't directly from a IProductContent. I make a little class helper that convert the productCollection into a List of custom object because the ListView control of KenoUI library to not work well with Umbraco complex object. In the conversation, I need the cropped image URL. I try to found a way to get an object giving me access to GetCropUrl instead of passing the Umbraco object to the helper each time.
OK
Maybe I do it wrong.
I got this at the beginning: (in my main store page)
var produits = catalogRoot.GetPropertyValue<ProductCollection>("produits");
Then I pass this collection to a partial view
@model ProductCollection
@{ }
then get a product list:
product = Model.GetProducts()
then a loop
foreach (IProductContent p in produits){
prod = new ProduitModel();
prod.nom = p.Name;
prod.imageURL = p.GetCropUrl("mainImage", "default");
prodCol.Add(prod);}
At this state the "p" are a IProductContent and do not have all the IPublishedContent property. I think I do the path from Merchello to product list the wrong way?
I got a error because the Where cause create un generic collection from System.Collection instead of Merchello.web.models....
Do I have a way to convert it back into ProductContentListView to pass it to my already working partial page that use this collection (normally without the .Where part)
I Rusty, I was thinking the same way but with your example or simply trying to do a where clause and try to save it in a ProductContentListView variable do not work. We got this error:
Cannot implicitly convert type 'System.Collections.Generic.IEnumerable
Merchello 2.1.0 Release
Merchello 2.1.0
New Features
DataTypes
Merchello Product Collection Picker - Allows for directly picking product collections so that collection trees may more easily be rendered. Example - Category -> Sub-Categories.
Merchello Checkout Stage Picker - Allows for associating an "Checkout Stage Alias" such as BillingAddress, ShippingAddress, ShipRateQuote ... etc with Umbraco content. This makes it easier in some cases to find Umbraco content via standard Umbraco content queries that is responsible for a checkout operation so that the Id, content name or a unique document type need not be referenced.
New UI Pattern (dubbed Fast Track)
We've replaced the Merchello Bazaar with a new implementation we're referring to as "Fast Track." New UI specific classes have been introduced into Merchello to assist in implementing stores that make it easier to customize individual operations rather than having to support an entirely customized solution of a starter kit between upgrades.
Merchello.Web - A new foundation for UI classes have been defined as a set of model interfaces in the Merchello.Web.Models.Ui namespace. Generic type factories (Merchello.Web.Factories) and controllers (Merchello.Web.Controllers) have also been introduced to allow for basic implementation of common UI operations such as adding items to a basket, the basket itself and a generic checkout workflow.
Merchello.Web.Store - Is a new core library that contains basic implementations of the Merchello.Web models, factories and controllers. Depends on Merchello.Web and is now included with every Merchello installation.
FastTrack Starter Kit
Merchello.FastTrack - This library extends Merchello.Web.Store and is the foundation of the FastTrack Starter kit. This is a separate library and NOT included in a default Merchello installation.
A new Nuget Package is available Merchello.FastTrack that includes the Merchello.FastTrack.dll and default plugin views (Razor cshtml) for use in web application projects in cases where the implementer wishes to use the controllers and views included in the FastTrack starter kit using their own content type (document types) and content tree structure.
Merchello.FastTrack Starter Kit - Installs a basic fully functioning store using the fast track pattern.
Updates
ProductContentListView
instead ofIEnumerable<IProductContent>
. ProductContentListView itself inherits fromIEnumerable<IProductContent>
(so this is not a breaking change) and also exposes the CollectionKey associated with the product list.Bug Fixes
Umbraco Version
Merchello tested against Umbraco 7.4.3
Upgrade your Umbraco installation to Umbraco 7.4.x before upgrading Merchello.
Copy over Merchello binaries (dlls) in the bin directory. Copy over the AppPlugins/Merchello and AppPlugins/MerchelloProviders directory (note if you have made any configuration changes in the merchello.config make sure to retain those).
Change log
http://issues.merchello.com/youtrack/rest/agile/Merchello-1/sprint/2.1.0
GREAT! I start on it right over! ;-)
Hi Rusty, I upgrade my current project with nupkg for Merchello 2.1 and Fastrack 2.1. Then I copy from my project with full Merchello + Fastrack starter kit the AppPlugins/Merchello AppPlugins/MerchelloProviders and AppPlugins/Fastrack
When I try to add a ProducCollectionPicker, I got this: :{{ collection.name }}
What is your back office UI language?
Ho! French Canadian. I change it back to EN English and it work. Where I can add some french text, I can translate it for you.
Hey Pierre
You will need to copy one of the language files (en-GB.xml or en-US.xml) located in src/Merchello.Web.Ui.Client/config/lang/ and make the translations and make a pull request.
So that you can immediately use it in your build, copy the new file into your /App_Plugins/Merchello/lang folder manually.
The originating file is bundled into our package in the build script.
How can i install this with the FastTrack Website?? I mean when i go to install Mercelo_FastTrack.zip as "Import local package" i get an error message that some Mercelo.Web dlls are missing!
Hi Dimitris,
The Fast Track starter requires that Merchello is installed first. Install the Merchello_2.1.0.zip package and then install the Fast Track starter.
OK i successfully installed Merchelo, now aboout the fasttrack how i add it? (i have just installed umbraco cms+Merchelo+1 starter site)
See here:
FastTrack Starter Kit
Merchello.FastTrack - This library extends Merchello.Web.Store and is the foundation of the FastTrack Starter kit. This is a separate library and NOT included in a default Merchello installation.
A new Nuget Package is available Merchello.FastTrack* that includes the Merchello.FastTrack.dll and default plugin views (Razor cshtml) for use in web application projects in cases where the implementer wishes to use the controllers and views included in the FastTrack starter kit using their own content type (document types) and content tree structure.*
Merchello.FastTrack Starter Kit - Installs a basic fully functioning store using the fast track pattern.
WOW
I mean i downloaded the Merchello.FastTrack (idk how to use nugets) and i extract it and have a folder with .css .dll .cshtml and various types of files... How to add them to my Umbraco i mean? :D
Edit: OK found it! ty all i go check it finally :D
Hi Dimitris
Install the Merchello package first - FastTrack depends on Merchello being installed. Then install The FastTrack package (as a package - don't unzip)
Hi Rusty, what is the difference between: Merchello.Web.Models.VirtualContent; Merchello.Web.Models.ContentEditing;
For example, I got a custom Controller that fill up a custom store page. I need the list of products for one category. I want to use the Product model available in the Web.store dll to be easily compatible with the factories you create. But I need to add some more custom properties.
I See in the FastTrack sample you use
to display a list of products. If I need to add some custom properties? What is the best way to achieve this? Creating a custom class with IProductContent
But I do not want to implement all the functions! Do you have a heritable class for that? I found ProductDisplay from the ContentEditing editing namespace. It is suitable for that?
Thanks
Hey Pierre
Can you not just extend the product in the back office and use the properties via IProductContent / IPublishedContent and local extension methods? I guess I'm not understanding what you are trying to do ...
The models in ContentEditting are intended for the back office. They are NOT IPublishedContent. They are mainly used when serializing to JSON.
Ho my god you'r wight! Not enough sleep! I will use product extension. What is the simplest way to jump from the product extended properties when I do a foreach of IEnumerable
Thanks
It's the same way you would any standard Umbraco content.
IProductContent just adds product properties ...
OK I see. What about using
we can't directly from a IProductContent. I make a little class helper that convert the productCollection into a List of custom object because the ListView control of KenoUI library to not work well with Umbraco complex object. In the conversation, I need the cropped image URL. I try to found a way to get an object giving me access to GetCropUrl instead of passing the Umbraco object to the helper each time.
Hey Pierre,
It should be exactly the same as any other Umbraco content page - so probably has to do with the property value converter you are using.
OK Maybe I do it wrong. I got this at the beginning: (in my main store page)
Then I pass this collection to a partial view
then get a product list:
then a loop
At this state the "p" are a IProductContent and do not have all the IPublishedContent property. I think I do the path from Merchello to product list the wrong way?
I found it! It was missing:
That working now! Thanks
Small question again about ProductContentListView collection. Maybe is just a kind of C# IEnnumerable stuff, but can I do:
I got a error because the Where cause create un generic collection from System.Collection instead of Merchello.web.models....
Do I have a way to convert it back into ProductContentListView to pass it to my already working partial page that use this collection (normally without the .Where part)
Thanks
ProductContentListView
implementsIEnumerable<IProductContent>
so you should be able to do -I Rusty, I was thinking the same way but with your example or simply trying to do a where clause and try to save it in a ProductContentListView variable do not work. We got this error:
Cannot implicitly convert type 'System.Collections.Generic.IEnumerable
I try casting with (IEnumerable
is working on a reply...