Upgrading Kentico 7 to 8

This page provides instructions for upgrading Kentico 7 projects to Kentico 8.

  1. Check the prerequisites and Upgrade overview
  2. Install the upgrade procedure
  3. Perform the required steps before the upgrade
  4. Apply the upgrade to your Kentico project
  5. Perform the required steps after the upgrade

Warning

Using the Export and Import features to move sites from older versions of Kentico is NOT a valid way to perform the upgrade. During such imports, you risk overwriting database objects and files with older equivalents that may not be compatible. The import may prevent your site and the system as a whole from working correctly.

Importing of packages from older versions is supported to allow transferring of single objects or basic data, not as a way to upgrade entire sites.

Windows Azure projects

If you are upgrading a project hosted on Windows Azure, please follow the instructions in the Upgrading Windows Azure projects section.

Prerequisites

Before you start the upgrade, please make sure that your environment fulfills the requirements of Kentico 8. See Server and hosting requirements for details.

The machine where you plan to run the Kentico 8 upgrade must have Microsoft Internet Information Services installed (IIS express or the built-in Visual Studio web server is not sufficient).

You can upgrade from any type of Kentico 7 project, including all hotfix versions.

Important: You may need to download and install the latest Kentico 8 upgrade package to perform the upgrade for hotfix versions 7.0.86 or newer.

Upgrading across multiple versions

If you are upgrading from a Kentico version lower than 7.0, you need to go through a separate upgrade procedure for each version. Check the instructions for each upgrade version, and perform the required steps before and after the upgrade.

For each version, you always need to open the upgraded website in a browser before starting the upgrade for the next version and verify that the site loads correctly. During the first request after the upgrade, the system performs certain tasks required to finish the upgrade, including the import of new objects.

Upgrade overview

The following is a summary of the most important changes that the upgrade performs. This does not include all new Kentico 8 features – see What’s new in Kentico 8 for a comprehensive list.

  • If your project uses .NET 3.5, the upgrade sets the project’s version to 4.0 (the minimum .NET version supported by Kentico 8).
  • The overall structure of the web project folder changes:
    • The root of the folder now only contains the solution file, Lib folder and GlobalAssemblyInfo.cs.
    • The main project content moves to the CMS sub-folder.
    • The physical path of the project’s IIS application is remapped to the CMS folder.
  • The upgraded Kentico solution contains the following additional projects:
    • CMSApp_MVC - a standard MVC web application project. Intended for storing controller, view and model files.
    • CMSApp_AppCode - only for web application projects. Contains the original content of the Old_App_Code folder.
  • The upgrade automatically applies hotfix 8.0.21 to the project (includes bug fixes and improvements).
  • The upgrade installs all new Kentico 8 modules.
  • Custom files in the original project are transferred to the upgraded project.
  • Customized Kentico files are preserved (does not apply if you choose to overwrite all files when applying the upgrade):
    • The upgrade creates new versions of Kentico 8 files that match the modified files (with the .new extension). You need to manually transfer the customizations to the new files and then replace the original ones.
    • Customized files that no longer exist in Kentico 8 remain in the file system (but are not included in the CMSApp project in web application projects).
  • The upgrade changes the data type of datetime database fields to datetime2.
  • UI personalization is disabled for all sites due to the extensive changes in the structure of the Kentico administration interface. You can manually reconfigure UI personalization again for the upgraded sites.
  • The upgrade temporarily disables web farm functionality. You can re-enable web farms after you enter the new Kentico 8 license after the upgrade.

Macros

  • All occurrences of macro expressions in the system are automatically updated according to Kentico 8 macro syntax.
  • If your application’s web.config does not contain the CMSHashStringSalt key, the upgrade adds the key with a randomly generated GUID value. The value serves as the salt of the hash function in Kentico, for example in macro signatures.

System tables

  • The upgrade overwrites the form definitions of the default fields of system tables and their alternative forms. Custom fields from version 7 are transferred over. In Kentico 8, you can access the system tables as Classes in the Modules application (see Editing system tables).
  • The upgrade resets the maximum field size to the default values for all system table fields.

Default objects

  • The upgrade procedure imports new versions of the following default objects (overwrites existing objects):

    • Web parts
    • Web part layouts
    • Widgets
    • Reports
    • Time zones
  • All default Form control objects are overwritten (both the source files and form control objects in the system).

  • The default form layouts are overwritten.

  • The upgrade removes the following web parts and widgets:

    Web parts

    Widgets

    • Product datalist
    • Facebook Connect required data
    • Google video
    • Live web messenger
    • Silverlight application
    • Yahoo! web messenger
    • Clock
    • Daily Dilbert
    • Google video
    • National Geographic
    • NY Times
    • Silverlight application

E-commerce

  • Discount levels are converted to Catalog discounts. As a result, the Number of customers by discount level report was removed.
  • Discount coupons are renamed to Product coupons.
  • Product option categories of type Text no longer support assigning of a specific tax. Text product options now reflect the tax specified for the associated product.
  • All product options from Kentico 7 are converted to Kentico 8 product options, and have their type set to Product, except for product options of type Text.
  • The upgrade removes the UseCurrentSKUData web.config key.
  • The Product data list web part is removed.

Chat

  • The configuration of the endpoint for the Chat service moves from the main web.config file to CMS\CMSModules\Chat\web.config.
  • The default chat transformations are overwritten (due to changes in the chat JavaScript API).

Installing the upgrade procedure

  1. Download the Kentico 8 upgrade.
  2. Run Upgrade_7_0_8_0.exe.
  3. Install the upgrade procedure (the installer places the upgrade into the C:\Program Files\Kentico\8.0\Upgrade70_80 folder by default).

Upgrading Windows Azure projects

For projects hosted on Windows Azure, you need to perform the entire upgrade on a local machine and then redeploy the project after the upgrade is successfully completed.

Note: The upgrade always sets the .NET version to 4.5 for Windows Azure projects.

See also: Running Kentico on Windows Azure

Successfully completing the upgrade procedure may take a significant amount of time, particularly for heavily customized projects. We recommend that you keep your production site running and first perform a “test upgrade” to try out the process in advance and determine the scope of the upgrade for your project. You then need to repeat the process for another copy of the project and the production database.

Go through the following steps to upgrade a Windows Azure project:

  1. Set up your project in a local development environment (emulated), connected to your production database. See Developing Azure projects locally to learn more.

  2. Perform the required Steps before the upgrade.

  3. Install Windows Azure SDK version 2.2. We recommend using the WebPI all-in-one feed for your version of Visual Studio. You may also need to uninstall the Windows Azure Emulator and Tools for Visual Studio version 1.7.

  4. Increase the Connection Timeout valueof your connection strings (in the ServiceConfiguration.cscfg files or web.config). We recommend at least 600 seconds.

  5. Run the upgrade utility for your local project (see Applying the upgrade).

    • If your database is hosted on SQL Azure, create a copy of the database in the Database backup step – enter a name and click Copy. After the copy is ready, click Next to apply the upgrade on the copied database. You can alternatively choose to apply the upgrade directly to your current database and use the copy as a backup.
  6. The upgrade creates new versions of the project’s Windows Azure configuration files (ServiceConfiguration.cscfg, ServiceDefinition.csdef, app.config of the SmartSearchWorker) with the .new extension. You need to manually transfer your configuration to the new files and then replace the original ones.

  7. If you applied the upgrade to a new copy of the database, update your project’s connection strings to target the upgraded database.

  8. Ensure that the number of instances is set to 1 for the CMSApp web role (see Configuring the number of instances). You can increase the number of instances again before you deploy the site after the upgrade is complete.

  9. If your CMSAzure project is customized, the upgrade creates a new version of CMSAzure.ccproj in the CMSAzure folder (with the .new extension). Transfer any customizations from your original CMSAzure.ccproj file and remove the .new extension from the new one.

  10. Open the project in Visual Studio (CMSAzure.sln) and start the site in the emulator.

    Important: You always need to perform the first request on the upgraded site in a local development environment. Processing of the first request may take a very long amount of time (up to several hours).

  11. Perform the required Steps after the upgrade and test your site.

  12. Redeploy the project to a Windows Azure staging environment and overwrite all files. See Deploying an Azure project for more information.

    If you encounter Error 103 Access to the path … is denied while preparing the deployment package, delete the following files from your project’s Lib folder:

    • Microsoft.WindowsAzure.Diagnostics.dll
    • Microsoft.WindowsAzure.Diagnostics.xml
    • Microsoft.WindowsAzure.Diagnostics.StorageUtility.dll
    • Microsoft.WindowsAzure.CloudDrive.dll
    • Microsoft.WindowsAzure.CloudDrive.xml
    • Microsoft.WindowsAzure.Configuration.dll
  13. Validate that the website works correctly in the staging environment.

  14. Swap the staging deployment with your production deployment.

Steps before you start the upgrade

Custom code analysis

Kentico 8 introduces a very large number of changes in the API. If your project contains any custom code (including virtual objects such as transformations), we strongly recommend using the Kentico code upgrade tool before you start the upgrade procedure.

Download the tool from the API Changes page on the DevNet portal. See Upgrading custom code to learn more.

The tool has the following functionality:

  • Detects custom code that is no longer valid in version 8
  • Provides recommendations for each occurrence of invalid code
  • Can automatically convert certain types of code to the Kentico 8 API

The code upgrade tool’s output will help you update your custom code after you perform the upgrade.

Important

Carefully consider the scope of the API changes in your project before you start the upgrade. It may take some time to completely update projects that use a large amount of custom code.

Database schema when using a database connection with Windows authentication

If your Kentico project uses Windows authentication (integrated security) for its database connection, the database upgrade scripts run under the current Windows account, i.e. the user who runs the upgrade utility.

To avoid errors during the upgrade, you need to make sure that the corresponding database user has the same Default schema value as the schema of the objects in your Kentico database (dbo by default).

You can check the database authentication settings in the connection string within your project’s web.config file.

Deployment mode and Source control

If your system stores virtual objects on the file system (due to enabled deployment mode or source control options), you need to return the files to the database before performing the upgrade.

You can re-enable deployment mode or source control after you finish the upgrade.

Separated on-line marketing database

The upgrade is NOT supported for instances with a separated on-line marketing database. In this case, you need to rejoin the database before starting the upgrade procedure. You can perform the separation again after the upgrade is complete.

See also: Separating the contact management database

Customized field size for system tables

If you increased the size of system table fields in Kentico 7, you need to ensure that all values in the given fields fit into the original size. You can create custom fields to store larger values. The upgrade resets the maximum field size to the default values for all system table fields, so larger values would result in errors.

Custom UI elements

If your Kentico 7 project contains custom UI elements, you need to ensure that all of them have the Element is custom flag enabled. Otherwise the upgrade cannot process the elements correctly.

You can verify and configure the setting when editing UI elements in Site Manager -> Development -> Modules -> Edit a module -> User interface.

Staging and integration tasks

If your project uses staging or the integration bus, you need to synchronize all staging and integration tasks before starting the upgrade procedure. Synchronization of existing tasks from Kentico 7 may fail after you perform the upgrade.

To perform the synchronization, use the interface in:

  • CMS Desk -> Tools -> Staging
  • Site Manager -> Administration -> Integration bus

Object version history and recycled objects

The upgrade does NOT update the data of:

After you perform the upgrade, it may not be possible to correctly restore or roll back certain types of objects from the recycle bin or version history. Before you start the upgrade, we recommend reviewing the content of your recycle bin and version history:

  1. Recover any data that you wish to use after the upgrade.
  2. Permanently delete the remaining data.

E-commerce

The upgrade removes the Free shipping limit setting. If you use this setting, note down the value. After the upgrade is complete, create a new Free shipping offer with this value.

Kentico Windows services

If you use the Health monitoring or Scheduler windows services, you need to uninstall them before you start the upgrade:

  1. Run the Kentico Service Manager utility.
  2. Select your web project.
  3. Stop and Uninstall all services.

You can reinstall the Kentico 8 version of the services after you complete the upgrade.

Full-text search for Kentico database tables

If you are using full-text search catalogs for any Kentico database tables, you need to remove the catalogs before starting the upgrade. The procedure drops and recreates indexes for most tables. You can set up the full-text search again after the upgrade is complete.

Applying the upgrade

We strongly recommend using the Kentico Upgrade Utility to perform the upgrade automatically.

Manual upgrade

If you cannot perform the upgrade automatically (for example when you cannot directly access the environment hosting the Kentico instance), you can perform the upgrade manually.

See Upgrading Kentico manually.

  1. Open the folder where you installed the upgrade.

  2. Run the Kentico Upgrade Utility (Upgrade.exe).

  3. Enter the path to your Kentico 7 web project folder (you can select a folder using the Browse button).

  4. Use the utility to back up your project files and/or database if you haven’t done so already.

  5. Select whether you want to upgrade files, database or both. To successfully perform the upgrade, you need to update both the project files and the database. Change the settings only in special scenarios (for example when performing part of the process manually).

    Warning: If you enable the Overwrite all files option in advanced mode, the upgrade replaces all project files with the default Kentico 8 files, regardless of customizations. This includes the web.config file, which you need to configure again after applying the upgrade.

  6. On web application projects, the upgrade utility rebuilds the solution at the end of the upgrade by default. If your project contains custom code that is no longer supported in Kentico 8, or has certain modules uninstalled, the rebuild will not be successful. You can disable the Rebuild web project option on customized projects, and perform the rebuild manually once you update the project after the upgrade.

  7. Choose a method of taking the project offline and back online.

  8. Click Next to start the upgrade procedure.

  9. After the upgrade finishes, click Next to view any conflicts of customized files that occurred during the upgrade process. By default, the upgrade utility doesn’t overwrite modified files in order to preserve your customizations (unless you enabled the Overwrite all files option in the upgrade utility):

    • New versions of Kentico 8 files that match the modified files are created in the project (with the .new extension). You need to manually transfer your customizations to the new files and then replace the original ones.
    • Customized files that no longer exist in Kentico 8 remain in the file system (but are not included in the CMSApp project in web application projects).
  10. The upgrade attempts to automatically update your project’s web.config file (unless you enabled the Overwrite all files option in the upgrade utility). The process may fail if your web.config contains certain types of customizations. In this case, a new web.config file is created in the web project’s CMS folder with the “.new” extension. You need to:

    • Edit the new web.config and transfer over any customizations and the connection string from the original web.config.
    • Move your original web.config to a different location.
    • Rename web.config.new to web.config.

Close the upgrade utility.

Steps after performing the upgrade

After you apply the upgrade to your project, please check the following sections and perform the required actions. Go through the sections in the listed order.

Important

After you apply the upgrade, clear your browser cache before you open the website or Kentico administration interface.

API changes

You need to update your custom code according to the new API of Kentico 8, including:

Use the output of the Kentico code upgrade tool (described in Custom code analysis) to find occurrences of invalid code and recommendations on how to fix or replace them.

Tip: Enable Deployment mode and fix the code of virtual objects in the corresponding physical files. This makes it easier to update the code of virtual objects according to the output of the code upgrade tool. Disable deployment mode to return the updated virtual objects back into the database.

You can also search for specific API resolutions on the DevNet portal.

MVC code

If your project contains custom MVC files (controllers, views, models, etc.), open the solution in Visual Studio and move the files into the appropriate locations in the CMSApp_MVC project (a standard MVC 4 project).

You can then remove the System.Web.MVC references from the main Kentico project (CMSApp) and its web.config file:




<add namespace="System.Web.Mvc" />
<add namespace="System.Web.Mvc.Ajax" />
<add namespace="System.Web.Mvc.Html" />

<add assembly="System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />


See also: Developing sites using the MVC framework

Custom Old_App_Code files on web applications

On web application projects, the upgrade moves all files from the Old_App_Code folder in the CMSApp project into the new CMSApp_AppCode project.

If you have custom files in this folder that require references to external assemblies, you need to manually add these references to the CMSApp_AppCode project in Visual Studio.

Obsolete App_Code files

When sequentially upgrading from older versions of Kentico (starting from version 5.5 R2), your original project may contain files in the App_Code\Global\CMS folder, including the following:

  • CMSApplication.cs
  • CMSCustom.cs
  • CMSPageEvents.cs
  • CMSRequest.cs
  • CMSSession.cs
  • CMSUserControlEvents.cs

These files are no longer supported in Kentico 8, and the upgrade attempts to automatically delete them. This does not occur if the files are customized. In this case, you need to transfer the custom functionality (typically event handlers) to other files and manually delete the old files.

Note: On web application projects, you can find the files in the Old_App_Code folder of the CMSApp_AppCode project in the Kentico 8 solution.

Application GUID and name

When sequentially upgrading from Kentico versions older than 6.0, verify that your project’s web.config file contains the following keys in the <appSettings> section:




<add key="CMSApplicationGuid" value="04cee76b-54e6-4b64-ac51-351bb8e273bc" />
<add key="CMSApplicationName" value="Default Web Site/Kentico8" />


If they keys are missing, you need to manually add them with the following values:

  • CMSApplicationGuid - generate a GUID as the value.
  • CMSApplicationName - enter the name of the IIS website and virtual directory under which the application is running.

.NET 3.5 projects with a Classic application pool

For projects using .NET version 3.5, the upgrade changes the version to 4.0 (minimum required for Kentico 8) and creates a new application pool for the given IIS application.

If your original project used the 3.5 .NET version and an application pool with Classic Managed pipeline mode:

  1. Run Internet Information Services (IIS) Manager in Windows.
  2. Select your server and open the ISAPI and CGI Restrictions settings.
  3. Allow the ASP.NET v4.0.30319 restrictions.

Kentico 8 setup files

The upgrade converts your web projects to version 8, but does not provide the associated setup files (i.e. the Kentico program files that are separate from individual web projects). The setup files contain external utilities, sample files, and allow you to install new Kentico 8 web projects.

To obtain the installer and setup files for Kentico 8:

  1. Download the Kentico 8 installer
  2. Run Kentico_8_0.exe.
  3. Read and accept the License Terms and Conditions and click Custom installation.
  4. Select Install only program files and click Install.

Kentico Windows services

If you used Kentico Windows Services before the upgrade, use the Kentico 8 setup files to install the services for version 8. For more information, see:

Clearing session state data

Objects that are stored in the server-side session state may have a different structure in the upgraded version. The changes may cause errors for users who access the upgraded site with outdated session data.

If your application uses a session state mode that preserves data through application restarts (StateServer, SQLServer or Custom), you need to manually clear any existing session data after you perform the upgrade:

  • StateServer - restart the session state service.
  • SQLServer - delete the content of the session state database.
  • Custom - depends on the implementation of the custom storage provider.

Running the website - First request

Open the upgraded website in a browser. When handling the first request, the system performs certain tasks required to finalize the upgrade. This includes the import of new objects. Processing of the first request may take longer than usual.

Important: The first request must be performed using the upgraded project files. The process will not be successful if you only upgrade the database and connect it to a new Kentico 8 project.

Licenses

You need to add Kentico version 8 licenses for the domains used by your sites:

  1. In the Kentico administration interface, open the Licenses application.
  2. Delete the old version 7 licenses.
  3. Click New license to add your licenses for version 8.

Note: If you encounter a web farm licensing error when accessing the Kentico interface, check your project’s web.config file and make sure that the CMSWebFarmEnabled key is NOT enabled (may occur if you manually merged your web.config during the upgrade).

Object import

The upgrade procedure automatically imports new web part, widget, report and time zone objects. Once the upgrade is finished, please check the system’s Event log for any import errors between the Upgrade - Start and Upgrade - Finish events.

If you find related errors, open the Sites application, click Import site or objectsand try to import the upgrade_70_80.zip package manually.

Macros

To ensure that macros work correctly after the upgrade:

  1. Log in to the Kentico administration interface as a global administrator.
  2. Open the System application.
  3. Select the Macros -> Signatures tab.
  4. Enable the Sign all macros option.
  5. Click Update macro signatures.

The system resigns all macros. The new security signatures of all macros contain the username of your administrator account.

Validate that all macros in the system work correctly:

  1. In the System application, select the Macros -> Report tab.
  2. Enable Report problems and click Search.
  3. If the report contains results with invalid syntax, please attempt to manually fix and re-save the corresponding macros in the appropriate parts of the administration interface.

For more information, see the Macro expressions chapter in the documentation.

Custom settings

If your system uses custom settings, verify that they work correctly after the upgrade:

  1. In the Kentico administration interface, open the Modules application.
  2. Edit the Custom module.
  3. Select the Settings tab.
  4. Find your custom settings in the tree and make sure they are organized and configured correctly.
  5. Verify the result in the Settings application.

Tip: If you have custom modules, you can transfer the settings into the appropriate modules.

Custom UI elements

If your Kentico 7 project contained custom UI elements, you need to manually integrate the elements into the new interface of Kentico 8.

  1. In the Kentico administration interface, open the Modules application.
  2. Edit the appropriate module:
    • Edit the Custom module for custom UI elements originally placed under Kentico modules.
    • For UI elements created under your own custom modules, edit the given module.
  3. Select the module’s User interface tab.

You can find all custom elements in the CMS -> Administration -> Custom category. Elements have the name of the original module appended in parentheses, for example: Custom element (Tools).

You need to move the custom UI elements into your own applications or under the default applications in the UI tree. Applications are represented by UI elements directly under the categories in the CMS -> Administration section.

For more information, see:

Important

Make sure that all custom elements have correct code names. Since all custom elements from Kentico modules are merged into the Custom module, the upgrade appends the element GUID to the code name if conflicts occur. You may also need to update the code names in your custom code if you work with the elements using the API.

System table fields

If you have customized the fields of system tables or their alternative forms, verify that everything works correctly after performing the upgrade. The upgrade carries over all custom fields, but overwrites the default system fields.

In Kentico 8, you can edit the forms by editing Classes in the Modules application. See Editing system tables for more information.

New Kentico 8 modules

The upgrade installs all new Kentico 8 modules by default:

  • Personas
  • Social marketing
  • Strands Recommender
  • WIF integration

If you plan to use the new modules:

  1. In the Kentico administration interface, open the Modules application.
  2. Edit the required module.
  3. Select the Sites tab and add your sites.

Note: You may encounter errors if you have the On-line marketing, E-commerce or Community modules removed from your installation. In this case, use the Kentico 8 installer to add the required modules, or remove the new Kentico 8 modules.

UI personalization

Due to the extensive changes in the structure of the Kentico administration interface, the upgrade disables UI personalization for all sites. If you wish to use UI personalization:

  1. In the Kentico administration interface, open the Settings application.
  2. Select the Security & Membership category and check Enable UI personalization.
  3. Click Save.
  4. Open the UI personalization application and reconfigure the UI settings for your roles.

To learn more about the Kentico 8 interface, see:

The upgrade adds a new version of the Lucene.NET library used by the Smart search. To ensure that the search works correctly:

  1. In the Kentico administration interface, open the Smart search application.
  2. Rebuild all smart search indexes.

If you cannot or do not wish to rebuild your indexes, you can revert back to the older Lucene.Net library version. See Upgrading to Kentico 8 - Smart search for more information.

Note: In search result transformations, you can no longer load the MIME type icons of file documents from the image field. Use the new imageClass field to get the name of the CSS class that defines the font icon of the MIME type.

Web farms

The upgrade procedure automatically disables web farm functionality. If your Kentico instance runs on a web farm, you need to manually enable web farms after you add the new license to the upgraded Kentico 8 instance:

  1. In the Kentico administration interface, open the Settings application.
  2. Expand the Versioning & Synchronization -> Web farm category.
  3. Check the Enable web farm setting.
  4. Click Save.

Custom Windows services

If you use custom Windows services for your project, you need to manually set them up again for the upgraded project:

  1. Open the ~/CMS/App_Data/CMSModules/WinServices folder in the upgraded web project.
  2. Transfer your customizations to services.xml.new, and then replace the original file with the new one.
  3. Reinstall and start your custom Windows services in the Kentico Installation Manager utility.

E-commerce

  • The Free shipping limit setting was removed. Create a Free shipping offer that covers products you want to ship for free. See Working with free shipping offers for more information.

  • To create product variants, change the type of your product option categories from Product to Attribute if they are Kentico 8 attribute options (see Working with product options). To change the category type, set the CategoryType value of the corresponding database records in COM_OptionCategory from PRODUCTS to ATTRIBUTE.

  • Discount levels were converted to Catalog discounts. Change your discount level customizations to use the new Catalog discounts API. See Working with catalog discounts for more information.

  • Change your custom payment gateways to fit the new checkout process. See Creating a custom payment gateway for more information.

  • If you use the default fields of the sample product document types, go through the fields in the Document types application and set the visibility according to your requirements.

  • If your site uses the removed Product datalist web part (or a custom inherited web part or widget based on it), you need to replace all instances with a supported component. We recommend using a Basic datalist or repeater with a document or product data source. See the Loading and displaying data on websites chapter for more information.

  • The Checkout process settings were hidden. If you need the settings, you can show them again by running the following SQL script on your database. Find more details about the new checkout process in Checkout process.

    
    
    
      DECLARE @SiteID INT = YOUR_SITE_ID;
      UPDATE dbo.CMS_SettingsKey
      SET KeyIsHidden = 0
      WHERE KeyName IN ('CMSStoreAllowAnonymousCustomers', 'CMSStoreUseExtraCompanyAddress', 'CMSStoreRequireCompanyInfo', 'CMSStoreShowOrganizationID', 'CMSStoreShowTaxRegistrationID') AND (SiteID = @SiteID OR SiteID IS NULL)
      UPDATE dbo.CMS_UIElement
      SET ElementVisibilityCondition = NULL
      WHERE ElementName = 'Configuration.Settings.CheckoutProcess' OR ElementName = 'Tools.Ecommerce.ChackoutSettings'
    
    
      
  • Update E-commerce methods in your transformations:

    • You must now call the GetEproductUrl and GetProductUrlForFeed methods from the EcommerceFunctions class, for example: EcommerceFunctions.GetProductUrlForFeed()

    • Use GetSKUPriceSaving() to get the value of discounts (how much the customer will save).

    • Replace GetSKUFormattedListPrice() with GetSKUFormattedOriginalPrice().

      See the transformations on the Kentico 8 E-commerce sample site for examples.

Removed web parts and widgets

The upgrade deletes the following obsolete web parts and widgets:

Web parts

Widgets

  • Product datalist
  • Facebook Connect required data
  • Google video
  • Live web messenger
  • Silverlight application
  • Yahoo! web messenger
  • Clock
  • Daily Dilbert
  • Google video
  • National Geographic
  • NY Times
  • Silverlight application

If your site uses any instances of these components, you need to manually remove or replace them. The same applies if you have any custom inherited web parts or widgets based on the removed web parts.

Document type icons

The default document types now use font icons for their images.

If you wish to switch back to your custom image files, edit the document types on the General tab in the Document types application. You can also run the following database script to reverse the change for all document types:




UPDATE [CMS_Class]
SET [ClassIconClass] = NULL
WHERE [ClassIsDocumentType] = 1


Custom widgets

If you use custom widgets in which you define default values for any of the Widget container fields and the custom widgets are based on one of the web parts listed below, you need to manually resave the fields to update the widget definition to correct version:

  • Department members viewer
  • Group forum posts viewer
  • Group members viewer
  • Group message board
  • Group poll
  • Hierarchical viewer
  • Newsletter subscription
  • Poll
  • Random products
  • Repeater
  • Repeater with effect
  • Scrolling text
  • Static HTML
  • Universal viewer
  • Universal viewer with custom query
  • Users viewer

You can resave the Widget container fields on the Properties tab of your custom widget in the Widgets application.

Chat service customizations

If you customized the endpoint of the Chat service in the web.config file, you need to manually transfer the changes to the CMS\CMSModules\Chat\web.config file.

XSLT transformations

If you use XSLT transformations to display documents, edit the transformations and set the match attribute of the <xsl:template> element to Table.

Skin files

If you use skin files (for example Default.skin in the ~/App_Themes/<sitename> folder) to style table components in the administration interface or on the live site, replace the asp:GridView control with cms:UIGridView.

Live site styling

Kentico 8 changes how certain web parts and other components use CSS classes. You may need to update your site’s stylesheets to ensure that the site is styled correctly after the upgrade.

See Updating styling for live site components for more information.