Let the platform do the work

Enabling Backward Compatibility

Overview

How to enable backward compatibility for a module.

Enabling Backward Compatibility

Backward Compatibility Mode is not a permanent solution for modules with legacy customizations. If you should need to temporarily get a module working due to legacy customizations, you can follow the steps below to enable the legacy MVC framework. Please note that switching stock Sugar modules from the Sidecar framework to backward compatibility mode is not supported and may result in unexpected behaviors in the application.

Enabling BWC

To enable backward compatibility, you must first create a file in ./custom/Extension/application/Ext/Include/ for the module. If the module is custom, there will already be an existing file in this folder pertaining to the module that you can edit.

./custom/Extension/application/Ext/Include/<file>.php

  <?php

$bwcModules[] = '<module key>';

Once the file is in place, you will need to navigate to Admin > Repair > Quick Repair and Rebuild. The Quick Repair can wait until you have completed the following sections for this customization.

Verifying BWC Is Enabled

To verify that backward compatibility is enabled, you can inspect App.metadata.get().modules after running a Quick Repair and Rebuild in your browser's console window:

Using Developer Tools in Google Chrome

  1. Open Developer Tools
    • This can be done in the following ways:
      1. Command + Option + i

      2. View > Developer > Developer Tools

      3. Right-click on the web page and selecting "Inspect Element"

  2. Select the "Console" tab

  3. Run the following command, replacing <module key> and verify that it returns true:

  App.metadata.get().modules.<module key>.isBwcEnabled

Using Firebug in Google Chrome or Mozilla Firefox

  1. Open Firebug
  2. Select the "Console" tab

  3. Run the following command, replacing <module key>, and verify that it returns true:

  App.metadata.get().modules.<module key>.isBwcEnabled