Self note: SVG is a smart media format that enables us to use same image in different sizes without compromising on quality and performance. EPiServer supports SVGs but images will not display in editor mode while using the IMG tag, as media urls are updated with version details. e.g. “globalassets/160-835st_bilok_2_screw_straight8mm_x_35mm.svg” will change as “/episerver/CMS/Content/globalassets/en/160-835st_bilok_2_screw_straight8mm_x_35mm.svg,,1823?epieditmode=False&visitorgroupsByID=undefined”. EpiServer …
Author Archives: Khurram Khan
Walk through KPI
A key performance indicator (KPI) records when a visitor on a website performs a desired action, such as clicking on an add button, or runs a piece of java script. A custom KPIs can be creating by implementing IKPI interface, to use in Episerver A/B testing or in any other package that relies on creating …
POC custom pricing provider works
In most ecommerce websites, prices comes from some third system and we import the prices into EPiServer Commerce along with products and variants data, but this is not the case all the time. In some scenarios pricing are quite complex and have to decide at run time or require to retrieve from some web services. …
Custom Price Placed Processor
We need to implement IPlacedPriceProcessor interface to get the currently-placed price for an line item if business have additional pricing rules outside of what is implemented in out of the box pricing provider. Here is an example implementation. We wre required to inject custom classes at startup via structuremap.
Custom Line Item Validator
Amazon offers AddOn products that can be bough with some other product only. Addon products must be removed from basket if added without the parent product. This type of validation can be done easily by implementing ILineItemValidotr interface. You can find a test implementation of custom Line Item Validator on Git. You will require to …
Handle Exceptions in Find
If it’s repetitive, it can be automated. Think about the following requirements. Have you ever hoped there would be a better way to implement them? INotifyPropertyChanged Undo/redo Code contracts (preconditions) Logging Transaction handling Exception handling Thread dispatching Thread synchronization Immutable Authorization Audit Caching Exceptions in Find Generally we will be doing this …
Useful Nuget commands
Having the little knowledge of Nuget Commands is important if your company is thinking to adopt EPiServer Continuous Release Process. In Visual Studio Click Tools>Nuget Package Manager>Package Manage Settings, Select from Options, Package manager>Package Sources.Click + Button and add an entry with Name: EpiServer packagesSource: http://nuget.episerver.com/feed/packages.svc/ After these setting you are ready to use EPiserver …
Error handling in IIs 7
Not a new topic but I come across a situation when our offshore team was not able to see the error details. This is reminder if someone forgets that. In IIS 7.0 The <httpErrors> element allows you to configure custom error messages for your Web site or application. <CustomErrors> won’t work. Click for further details …
Blocks for EPiServer Commerce Catalog Nodes
Can we use Blocks with Catalog nodes? In theory Yes, what can stop you. We had a requirement when CMS editor can add a Carousel Block to Catalog Nodes. But Block Gadget was not available in CMS Catalog Edit Mode. Only available gadgets were Catalog, Media, Latest and Versions. From architecture point of view I …
Continue reading “Blocks for EPiServer Commerce Catalog Nodes”
Upgrade from CMS 6R2 to EPiServer 7 CMS and from EPiServer Community 4.1 to EPiServer Community 7
There is a requirement before upgrading a Community site with separate databases (CMS6r2 and Community 4.1) to EPiServer 7 and Community 7 is to merge the Community database with the CMS database. This is an instruction of how to accomplish this in MS SQL Server 2008 R2. 1. StartupIn the SSMS, right-click the Community database that …