Hotfix Instructions - Kentico 8.1 Source Code

Hotfixes allow you to fix problems in your installation of Kentico. You can view the list of fixed bugs on the Kentico DevNet portal.

To obtain source code hotfixes, please contact your Kentico sales representative.

The following instructions apply only to the source code version of Kentico. For standard installations, please see Hotfix Instructions - Kentico 8.1.

Note

Hotfixes are not tested for all possible scenarios, so you may experience issues after applying the hotfix.

Always backup your project files and database before applying a hotfix.

Table of Contents

Applying the hotfix to a local project

  1. If your system stores virtual objects on the file system (due to enabled Deployment mode or source control options), return the files to the database. After you apply the hotfix, re-enable deployment mode or source control and rebuild the solution.
  2. Run Kentico Hotfix Utility (Hotfix.exe) from the location where you installed the hotfix.
  3. Select your project installation folder using the Browse button or type in the path to the project manually.
  4. Use the application to back up your project files and/or database if you haven’t already done so.
  5. Select whether you want to update source files, database, CMS project files or all of them. We recommend updating all components.
  6. Choose a method of taking the project offline and back online.
  7. Click Next to start the update procedure.
  8. After the update finishes, click Next to view any problems that may have occurred and the instructions to solve them.
  9. Open the project solution in Visual Studio and follow the compilation instructions.
  10. Rebuild the solution.

For more information, see Kentico Hotfix and Upgrade Utility.

Applying the hotfix to a remote project

If you cannot access your web project directly (e.g. when the project is located on a remote hosting server), you can use the Hotfix Utility to create the updated file structure and then upload them to your web project location. 

  1. Run Hotfix.exe from the command line with the /deploy=net45app parameter.
    Example: Hotfix.exe /deploy=net45app
    This launches the Hotfix Utility, which then creates the files and folders necessary for updating the source code project and saves them into the folder chosen in the first step of the Hotfix Utility wizard.

    Additionally, you can provide the /path parameter, which tells the application where to create the file structure. This way you won’t have to set the path in the first step of the Hotfix Wizard.

    You can supply the /path parameter in two different formats – relative, which represents a folder in the location from which the utility was executed; or absolute, which can be any path to a local disk.

    Example: Hotfix.exe /deploy=net45app /path=Deploy
    This launches the Hotfix Utility, which then creates a folder named Deploy in the directory from which the utility was executed and copies all files and folders necessary for updating a source code project into that folder.

  2. Once you have the update files ready, take your website offline. You can do this by copying the App_Offline.htm file from the hotfix installation directory into the root of the remote web project.

  3. Upload the update files created by the Hotfix Utility into your remote web project (overwrite the original files).

    Important

    If you have previously modified some of the Kentico project files, DO NOT OVERWRITE these files. You could lose your modifications.

    You need to compare the modified files with the new versions and make appropriate changes manually.

  4. Manually execute the hotfix SQL scripts on your Kentico database.

    • If you do not use separated databases - run the Hotfix_separated.sql and Hotfix_default.sql script files located in the SQL folder of your hotfix installation directory. We recommend running the files in the described order.
    • If you use separated databases - run the Hotfix_separated.sql script file on the separated database and Hotfix_default.sql on your main database. The script files are located in the SQL folder of your hotfix installation directory.
  5. Open the project in Visual Studio, follow the compilation instructions, and rebuild the solution.

  6. Bring your website back online (delete the App_Offline.htm file).

After applying the hotfix

All users who work with the Kentico administration interface should clear the cache in their browsers after applying the hotfix. Otherwise, some features in the administration interface may not be displayed correctly.

Updating setup files and external utilities

The hotfix contains bug fixes for all the files in the Kentico installation. This includes the installer with its associated files and external utilities, such as Kentico Installation Manager or Kentico Service Manager. In order to update these files and utilities, you need to launch the Hotfix utility with an additional parameter - /setuppath - which specifies the location where you installed Kentico (typically the Program Files folder).

When launched with the parameter, the Hotfix utility offers the option of updating the setup files in the Change confirmation step.

Example: Hotfix.exe /setuppath=“c:\Program Files (x86)\Kentico\8.1” launches the Hotfix utility, which then tries to update all original files in the default installation directory.

Source code compilation instructions

After applying the hotfix, please perform the following steps in Visual Studio to ensure that the source code works correctly and can be compiled:

Hotfix 8.1.6

  • Manually include the SocialMarketingAutoPostControl.cs file into the SocialMarketing project:
    1. Click Show all files at the top of the Solution Explorer.
    2. Locate the SocialMarketingAutoPostControl.cs file (in the SocialMarketing folder).
    3. Right-click the file and select Include in Project.
  • Add references to the following libraries in the SocialMarketing project:
    • ExtendedControls
    • FormControls

Hotfix 8.1.9

  • Manually include new files into the DocumentEngine project:
    1. Expand the DocumentEngine project and navigate to the Handlers\Document folder.
    2. Click Show all files at the top of the Solution Explorer.
    3. Select the DocumentDataEventArgs.cs and DocumentDataEventHandler.cs files.
    4. Right-click and select Include in Project.
  • Manually include new files into the DataEngine project:
    1. Expand the DataEngine project and navigate to the Handlers\Objects folder.
    2. Click Show all files at the top of the Solution Explorer.
    3. Select the ObjectDataEventArgs.cs and ObjectDataEventHandler.cs files.
    4. Right-click and select Include in Project.

Hotfix 8.1.11

Manually include new files into the ApplicationDashboard project:

  1. Expand the ApplicationDashboard project and navigate to the Models folder.
  2. Click Show all files at the top of the Solution Explorer.
  3. Select the TileIconTypeEnum.cs and TileIconModel.cs files.
  4. Right-click and select Include in Project.

Hotfix 8.1.14

Manually include new files into the PDFClown project:

  1. Expand the PDFClown project and navigate to the src/org/pdfclown folder.
  2. Click Show all files at the top of the Solution Explorer.
  3. Select the cms subfolder.
  4. Right-click the folder and select Include in Project.

Hotfix 8.1.19

  • Add a reference to ~\Lib\Microsoft.SqlServer.TransactSql.ScriptDom.dll in the DataEngine project.

Additional notes and workarounds

Hotfix 8.1.2

  • WYSIWYG editor - Hotfix 8.1.2 adds the CKEditor:DefaultToolbarSet web.config key. The key allows you to set the default toolbar when using the ‘default’ option for toolbar sets on a page.
  • AD Import - After applying hotfix 8.1.2 to the Kentico setup files, the import settings in the AD Import utility provide the Import all users from selected groups and ignore other users option, which allows more efficient import of users from specific AD groups.

Hotfix 8.1.6

  • Microsoft account authentication - To ensure that users can log out correctly when using Microsoft account authentication, add the URL of your website’s default page (Home page) as a Redirect URL of your application in the Microsoft account Developer Center. The site’s default page URL depends on the Content -> Default alias path and URLs and SEO -> Default page settings.

Hotfix 8.1.8

  • Macros - Hotfix 8.1.8 resolves the issues with context macros in Online marketing:

    • Contact groups, Marketing automation, Personas, Scoring - Macros and rules that require the request context do not work (you can only use macros using contact, current time or current date data). The system now hides macro rules that require context from such conditions. To prevent false positives in existing conditions, you need to remove occurrences of macros and rules that require context.
    • Marketing automation triggers - The Contact is in persona macro rule didn’t work.
      • If you created your condition using the Rule designer, you need to click Edit next to the condition field and then update the condition by clicking Save & Close in the opened dialog. Finally, you need to save the trigger.
      • If you wrote the macro manually (for example on the Code tab), you need to replace your macro condition with the updated version. For example, replace Contact.IsInPersona(GetObject(“personas.persona”, “f4c665b8-980e-4d6a-ade7-329b34543659”, CurrentSite.SiteID)) with Contact.IsInPersona(“f4c665b8-980e-4d6a-ade7-329b34543659”).

Hotfix 8.1.11

  • Macros - Hotfix 8.1.11 changes how macros check permissions for page collections. When a page collection (TreeNodeCollection) is accessed in a macro expression (for example through the Children property of a page), the permission check is now performed for the user who signed the macro, instead of the user viewing the page. To get a collection of pages filtered according to the permissions of the current user, use the WithPermissionsCheck property of the collection.

Fixed bugs

For a full list of bugs covered by the hotfix, open the Hotfixes page on DevNet and click Fixed bugs for the appropriate Kentico version.