V.2072 Changelog:
    - SugarCRM 12.* suppport
    - Acoustic General Settings design has been updated to Acoustic branded color and style

V.2070 Changelog:
    - SugarCRM 10.* suppport

V.2069 Changelog:
	- Additional "Acoustic Campaign" re-branding has been applied

V.2068 Changelog:
    - Solution has been re-branded to "Acoustic Campaign" ("Watson Campaign Automation" replaced by "Acoustic Campaign")

V.2067 Changelog:
    - SugarCRM "loadBean" function definition has been updated according to recommendations from SugarCRM:
		- old definition : public function loadBean($serviceBase, $args, $aclToCheck = 'view', $options = Array())
		- new definition : public function loadBean(ServiceBase $serviceBase, array $args, $aclToCheck = 'view', array $options = Array())
		
V.2066 Changelog:
    - Added support for SugarCRM 9.*

V.2065 Changelog:
	- SugarCRM "retrieve" function definition has been updated according to recommendations from SugarCRM:
		- old definition : public function retrieve()
		- new definition : public function retrieve($id = -1, $encode = true, $deleted = true)

V.2064 Changelog:
    - Fixed Lead Convert process where Contact created from Lead was not getting Lead's activities (Calls, Meetings, Tasks, etc.)

V.2063 Changelog:
    - Fixed WCA Campaign Sync feature (Invalid Platform name was used in the WCA Sync Campaign code)

V.2062 Changelog:
    - Allowed solution to be installed at SugarCRM 8.*

V.2061 Changelog:
    - Compatibility with SugarCRM 7.11

V.2060 Changelog:
    - Added ('duplicate_on_record_copy' => 'no') parameter for the SP_ENGAGEID field on a Lead and Contact entities in order to prevent Engage ID from being inherited while converting Lead to a Contact

V.2059 Changelog:
    - Fixed: Sync Campaign was not working due to Sugar Token provided in a URL instead of HTTP Header

V.2058 Changelog:
    - Fixed: Adding mailing personalization with special characters could break the send process (send process hangs and does not response)

V.2057 Changelog:
    - Updated relationships metadata model for WCA Campaign and WCA Campaign Member (required for SugarCRM 7.9)

V.2056 Changelog:
    - Added compatibility with SugarCRM 7.9 (updated relationships metadata model for Mailing Templates, Template Folders, Security Roles, Users)

V.2055 Changelog:
    - Added a fix for the case when ALLOW_CRM_BLOCK is missing in a Mailing Template body

V.2054 Changelog:
    - Added a fix for Sugar CRM 7.8: Send WCA Email was not working from a Lead/Contact form because Sugar token was provided in a URL instead of HTTP header

    V.2053 Changelog:
    - All "IBM Marketing Cloud" labels were changed to "Watson Campaign Automation"

V.2052 Changelog:
    - Compatibility with SugarCRM 7.8
    - Added custom color for all IBM MC entity icons (RGB 65 120 190)
    - Added custom abbreviations for every IBM MC entity icon

V.2051 Changelog:
    - Added duplicate detection for Mailing Template Folders
    - Some labels on a Template Folder manager are now dynamic
    - Added icons for all IBM MC entities

V.2050 Changelog:
    - Enhanced error handling for Sync Mailing Templates process:
            - Error handler for the case when IBM MC organization is not available

V.2049 Changelog:
    - Folders for Mailing Templates:
            - Added following entities:
                - IBM Marketing Cloud - Mailing Templates
                - IBM Marketing Cloud - Template Folders
                - IBM Marketing Cloud - Security Roles
            - Added custom dialog to synchronize Mailing Templates from IBM Marketing Cloud to SugarCRM
            - Added custom dialog to create/configure/edit Mailing Template Folders:
                - Add/Remove Mailing Templates to/from Folder
                - Add/Remove Security Roles that have access to Folder
                - Add/Remove Users who have access to Folder
            - Send IBM Marketing Cloud Email wizard has been modified in order to use Mailing Templates Folders instead of displaying list of Mailing Templates
            - "Create" button is now hidden on all IBM MC custom entities (records in all entities are created via code)
            
V.2048 Changelog:
    - Send IBM Marketing Cloud Email from a Campaign has been refactored:
            - Enhanced performance on Send IBM MC Email initialization phase
            - Enhanced performance during Send IBM MC Email process
            - Recipients from Campaign's Target Lists are now retrieved dynamically by batches during Send process 
            (in previous version all recipients were retrieved during initialization phase; as a result Send Wizard was taking a long time to start up and the end user might have thought that something is wrong) 
    - "Send IBM Marketing Cloud Email" button is no longer active for the non-synchronized Leads and Contacts (Sync To IBM Marketing Cloud = FALSE)
    - Enhanced error handling for Send IBM Marketing Cloud Email from a Campaign

V.2047 Changelog:
    - Enhanced error handling for Sync Campaign process
    - Added localization for error messages that could fire during Sync Campaign process
    - Added additional tooltip for "OAuth Token" step at Sync Campaign dialog
    - Added localization for "OAuth Token" step at Sync Campaign dialog

V.2046 Changelog:
    - Redesigned IBM Marketing Cloud General Settings form
    - Added following localization:
            - French
            - Spanish
            - German
            - Brazilian Portuguese
            - Japanese
            - Simplified Chinese
        for custom objects at following entities / areas:
            - Lead
            - Contact
            - Campaign
            - Task
            - Administration
        for custom entities:
            - IBM Marketing Cloud - Deleted Object Pointer
            - IBM Marketing Cloud - Merged Object Pointer
            - IBM Marketing Cloud - Mailing
            - IBM Marketing Cloud - Mailing History (currently hidden in the package)
            - IBM Marketing Cloud - Campaign
            - IBM Marketing Cloud - Campaign Member
        for custom dialogs:
            - Send IBM Marketing Cloud Email
            - Sync IBM Marketing Cloud Campaign

V.2040 Changelog:
    - Performance optimization for IBM Marketing Cloud Campaign Integration:
        - When SugarCRM Campaign is re-synced - all existing IBM Marketing Cloud Campaign Members are deleted faster and greater number of members is supported.
        - When IBM Marketing Cloud Campaign is manually deleted in SugarCRM - all existing IBM Marketing Cloud Campaign Members are deleted faster and greater number of members is supported. 

V.2039 Changelog:
    - Hotfix for SugarCRM Campaign to IBM Marketing Cloud Integration:
        - Fixed: Campaign could hang at the end of sync process
        - Fixed: Campaign Members could be created without IBM Marketing Cloud Member ID and without relation to parent Lead/Contact
    
V.2038 Changelog:
    - Enhanced IBM Marketing Cloud Campaign Integration:
        - Sync process now supports any number of Campaign Members (previous version was limited to 1000 members).
        - Added Total Members and Unique Members counters that are displayed at the end of Sync process in order to provide user a Sync summary.
    
    - Removed IBM Marketing Cloud Mailing History entity from the UI.
    - Added dash (-) separator to the IBM Marketing Cloud Mailing "Name" to separate Mailing Template Name and Mailing Date.
    - Minor update to the Contact Insight warning message that is displayed if Contact Insight data cannot be displayed for the current record.

V.2037 Changelog:
    - Fixed an issue with duplicated Send Wizard windows being opened after user performs logout and login to SugarCRM.
    - Several label updates on IBM Marketing Cloud Campaign and Campaign Member.

V.2036 Changelog:
    - Added dash (-) character between 'IBM Marketing Cloud' and following object name for better readability (i.e. IBM Marketing Cloud - Deleted Object Pointer, IBM Marketing Cloud - Mailings, etc.).

V.2035 Changelog:
    - All labels that contained words 'Silverpop', 'Engage' or 'Silverpop Engage' were replaced by 'IBM Marketing Cloud'.
    - Added README and LICENSE files.

V.2033 Changelog:
    - SugarCRM Campaign Integration to IBM Marketing Cloud Contact List:
        - IBM Marketing Cloud Campaign and IBM Marketing Cloud Campaign Member entities with corresponding relationship model have been added.
        - List View and Record View for IBM Marketing Cloud Campaign and IBM Marketing Cloud Campaign Members are configured by default to display all important information.
        - SugarCRM Campaign UI has been updated to display new button: Sync IBM Marketing Cloud Campaign.
        - Background code for Sync IBM Marketing Cloud Campaign button.
        - Sync IBM Marketing Cloud Campaign wizard has been added. The wizard sequentially displays all phases of the 'Sync IBM Marketing Cloud Campaign' process.
        - IBM Marketing Cloud Campaign Members are deleted automatically once their parent IBM Marketing Cloud Campaign is deleted.

    - Enhanced error handling for IBM Marketing Cloud General Settings and Send IBM Marketing Cloud Email Wizard:
        - Validation for Endpoint and Refresh Token: if Endpoint and/or Refresh Token are incorrect user will be presented with an error message and IBM Marketing Cloud General Settings will not be saved (Endpoint and Refresh Token will be dropped to NULL values).
        - Validation for List ID during Send IBM Marketing Cloud Email Wizard initialization: user will be presented with an error message in case List ID specified in General Settings does not exist on IBM Marketing Cloud side.
        - Validation for Host during Send IBM Marketing Cloud Email Wizard initialization: user will see an error message in case Host is incorrect in IBM Marketing Cloud General Settings.
        - Validation for Shared Templates during Send IBM Marketing Cloud Email Wizard initialization: user will see an error message in case there are no Shared Templates in IBM Marketing Cloud organization.
        - Additional tooltips added to Send IBM Marketing Cloud Email Wizard in order to help user understand why particular initialization step may hang or does not complete.

V.2008 Changelog:
    - IBM Marketing Cloud General Settings are now working as expected at SugarCRM OnDemand instances.

V.2007 Changelog:
    - Maintain Customization for Campaign module. 
    - Multi line support for SP_CRM_BLOCK (backlog D-17718).

V.2000 Changelog:
    - Added Maintain Customization architecture in order to prevent any existing SugarCRM customization from being overwritten by the IBM Marketing Cloud Integration package.
    - Added Reply to , From Name, From Address fields to IBM Marketing Cloud Mailing entity in SugarCRM. These fields are now populated with corresponding mailing data after the mailing has been sent from SugarCRM.
    - Added multi window support for Send IBM Marketing Cloud Email process. Several Send IBM Marketing Cloud Email wizards can be opened in order to run simultaneous Send Mailing processes. 
    - Fixed an issue with '<' character in a Subject field of the Send IBM Marketing Cloud Email wizard. Send IBM Marketing Cloud Email process could not send a mailing if Subject contained '<' character.

