| 1)  Download Upgrade to temporary locationThis upgrade is available to active subscription holders.  To obtain the file, login to the ablecommerce.com website and go to the customer account area.  From the Downloads tab, in the top section, you can see all files that are available to you by subscription.  Be sure to download the files here and keep an original for backup. 
Determine the type of version you are using, WAP or WSP, and download the applicable file.
Extract the contents.  Only changed files are included in the upgrade set.
Compare the new upgrade files with your existing ones, and merge any custom changes. 2)  Confirm LicenseDo not install the upgrade unless your license subscription is valid through the "release date" of the build you are installing, or you have a license key for the latest version. There are two ways to see if you have a valid subscription for this upgrade: Login to your AbleCommerce Merchant Menu and go to the Configure > Security > Licensing page.The "License Details" section will indicate whether a subscription is included with your license, and the subscription's expiration date will be shown.
 - OR - Open the "commercebuilder.lic" file located in the \app_data\ folder with a txt program such as notepad.  e.g. <subscription>05-28-13</subscription> If your license purchase included a subscription, a line similar to the one above will be shown in your key file.  Make sure the date is on, or after, May 28th, 2013, which is the release date for AbleCommerce Gold R5.
 NOTE:  A store in DEMO MODE is not valid for the upgrade.  Make sure you have a license key installed before continuing.  The key type can be Development or Live, but not DEMO.   3)  Backup your Existing Production FilesAlways make a backup copy of the entire AbleCommerce folder and the database before beginning any upgrade..   4)  Installation of New Files to Production ServerFor WSP versions:
Stop the IIS web service, or application pool, to release a lock on the DLL files in the \bin\ folder.
 FAQ: How do I stop a website to upgrade?
Copy all files, from step 1c) above, to the corresponding folders on the production server.
Restart the IIS web service application. For WAP versions:
 
Recompile the application.
Republish to the target server.   5)  Automatic Database UpgradeWhen you login to the merchant administration for the first time, the database will be upgraded automatically. For this release, there are several database changes.  If you need a list of each one, then see below.   6)  Automatic Re-indexIf you are using the Lucene search provider, we will re-index the database automatically after the upgrade. Re-indexing could get interrupted if the server is restarted.  If this happens, simply access the Website > Indexes page to manually re-index the database.   7) Post-Upgrade InstructionsA) Update your existing email templatesIf your email templates are still using the hard-coded default email address, you should now start using the $merchant variable. This will allow your email templates to automatically use the updated default email address whenever it is changed. For each email template, change the FROM field to "merchant" as shown in the example below. 
   B) Order Notification Email modificationsThere is new code to display kitted items. These changes apply to the file \App_Data\EmailTemplates\1\Customer Order Notification.html If you have not modified this file, you can simply download it here: https://www.ablecommerce.com/patches/Customer Order Notification.html, unzip and copy over your existing file. If you have made changes, then you should use an application, such as WinMerge, to incorporate the new code into your existing template.   C) Web.Config changeThis step is optional unless you have customized your web.config file.  This file is included as part of the upgrade so it's unnecessary to make the following changes unless you do not want to overwrite your own web.config file.
 Around line 15, find the following line of code in the root web.config file -
 
 <add key="aspnet:MaxHttpCollectionKeys" value="1000"/>
 
 Change the value from 1000 to 4000 -
 
 <add key="aspnet:MaxHttpCollectionKeys" value="4000"/>
 
 This will prevent issue while saving, when an admin page is trying to display extremely large data sets.   Informational only -A)  Control changesThis upgrade has resulted in updates to almost every control in the /ConLib/ folder. The changes to these controls are only documentation related. No functionality is changed. The proper documentation of ConLib controls is needed for the new layout editor to work properly.
 The impact of this change for those who are upgrading to R5 from a previous version, is that it may appear to that every ConLib control has changed. Those who have done customizations to their ConLib controls may feel a bit worried about upgrading. However, the changes made to most of the ConLib controls are only documentation updates.
 B)  Database Changes
Here is the summary of database changes made for this release:
 --------------------------------------------------------------
 [ac_Products] : REMOVED "AdwordsPublish BIT NOT NULL DEFAULT 1"
 [ac_Products] : ADDED "ExcludedDestination NVARCHAR(20) NULL"
 
 --------------------------------------------------------------
 [ac_Categories] : ADDED "Title NVARCHAR(100) NULL"
 ac_Products: ADDED "Title NVARCHAR(100) NULL"
 ac_Webpages: ADDED "Title NVARCHAR(100) NULL"
 
 --------------------------------------------------------------
 ac_Categories : ADDED "HtmlHead NVARCHAR(MAX) NULL"
 ac_Products : ADDED "HtmlHead NVARCHAR(MAX) NULL"
 ac_Webpages : ADDED "HtmlHead NVARCHAR(MAX) NULL"
 ac_Links : ADDED "HtmlHead NVARCHAR(MAX) NULL"
 
 --------------------------------------------------------------
 ac_Products : ADDED "SearchKeywords NVARCHAR(MAX) NULL"
 
 --------------------------------------------------------------
 Updated default data for ac_EmailTemplates, to use 'merchant' keyword instead hard-coded email address 'info@yourdomain.xyz'
 
 --------------------------------------------------------------
 ac_OptionChoices: ADDED "Selected BIT NOT NULL"
 
 --------------------------------------------------------------
 ac_EmailTemplates
 ac_EmailTemplates: Added a new email template record:
 
 INSERT INTO [ac_EmailTemplates] ([EmailTemplateId], [StoreId], [Name], [ToAddress], [FromAddress], [ReplyToAddress], [CCList], [BCCList], [Subject], [ContentFileName], [IsHTML])
 VALUES ( 18, 1, 'Products Review Reminder', 'customer', 'merchant', NULL, NULL, NULL, 'Invitation to Review Your Recent Purchase', 'Products Review Reminder.html', 1 );
 --------------------------------------------------------------
 
 ac_StoreSettings: Added a new store settings record
 
 INSERT INTO [ac_StoreSettings] ([StoreSettingId], [StoreId], [FieldName], [FieldValue])
 VALUES ( 68, 1, 'ProductReviewReminderEmailTemplate', '18' );
 
 --------------------------------------------------------------
 ac_ReviewReminders: Added a new table:
 -
 CREATE TABLE ac_ReviewReminders(
 ReviewReminderId int IDENTITY(1,1) NOT NULL,
 UserId int NOT NULL,
 ProductId int NOT NULL,
 PRIMARY KEY(ReviewReminderId))
 --------------------------------------------------------------
 
 [ac_Products] : ADDED "PublishFeedAsVariants BIT DEFAULT 0 NOT NULL"
 [ac_ProductVariants] : ADDED "ImageUrl VARCHAR(255) NULL"
 [ac_ProductVariants] : ADDED "ThumbnailUrl VARCHAR(255) NULL"
 [ac_ProductVariants] : ADDED "IconUrl VARCHAR(255) NULL"
 
 --------------------------------------------------------------
 [ac_ProductVariants] : ADDED "GTIN NVARCHAR(30) NULL"
 
   |