Suitecrm: SalesAgility modules moved away from custom dir, but installer creates files there

Created on 8 Nov 2016  路  11Comments  路  Source: salesagility/SuiteCRM

Issue

A few months ago, in version 7.5, many SalesAgility modules (AOP, AOW, etc.) were moved from the custom directory into the main modules directory. However, when creating a fresh install, the installer still creates files in the custom directory, specifically logic_hooks and vardefs definitions.

The following are the contents of the custom directory immediately after a fresh install of 7.7.6:

.:
total 32
drwxrwxr-x  7 www-data www-data 4096 Nov  8 13:29 ./
drwxr-xr-x 17 www-data www-data 4096 Nov  7 18:02 ../
drwxrwxr-x  3 www-data www-data 4096 Oct 17 14:17 application/
drwxrwxr-x  2 www-data www-data 4096 Oct 17 14:55 blowfish/
drwxrwxr-x  4 www-data www-data 4096 Nov  7 18:06 Extension/
drwxrws---  2 www-data www-data 4096 Nov  7 18:06 include/
-rwxrwxr-x  1 www-data www-data   55 Oct 17 14:17 index.html*
drwxrwxr-x 16 www-data www-data 4096 Nov  7 18:07 modules/

./application:
total 12
drwxrwxr-x 3 www-data www-data 4096 Oct 17 14:17 ./
drwxrwxr-x 7 www-data www-data 4096 Nov  8 13:29 ../
drwxrwxr-x 3 www-data www-data 4096 Oct 17 14:17 Ext/

./application/Ext:
total 12
drwxrwxr-x 3 www-data www-data 4096 Oct 17 14:17 ./
drwxrwxr-x 3 www-data www-data 4096 Oct 17 14:17 ../
drwxrwxr-x 2 www-data www-data 4096 Oct 17 14:17 LogicHooks/

./application/Ext/LogicHooks:
total 12
drwxrwxr-x 2 www-data www-data 4096 Oct 17 14:17 ./
drwxrwxr-x 3 www-data www-data 4096 Oct 17 14:17 ../
-rwxrwxr-x 1 www-data www-data 1389 Nov  7 18:07 logichooks.ext.php*

./blowfish:
total 8
drwxrwxr-x 2 www-data www-data 4096 Oct 17 14:55 ./
drwxrwxr-x 7 www-data www-data 4096 Nov  8 13:29 ../

./Extension:
total 16
drwxrwxr-x  4 www-data www-data 4096 Nov  7 18:06 ./
drwxrwxr-x  7 www-data www-data 4096 Nov  8 13:29 ../
drwxrwxr-x  3 www-data www-data 4096 Oct 17 14:17 application/
drwxrws--- 10 www-data www-data 4096 Nov  7 18:07 modules/

./Extension/application:
total 12
drwxrwxr-x 3 www-data www-data 4096 Oct 17 14:17 ./
drwxrwxr-x 4 www-data www-data 4096 Nov  7 18:06 ../
drwxrwxr-x 3 www-data www-data 4096 Oct 17 14:17 Ext/

./Extension/application/Ext:
total 12
drwxrwxr-x 3 www-data www-data 4096 Oct 17 14:17 ./
drwxrwxr-x 3 www-data www-data 4096 Oct 17 14:17 ../
drwxrwxr-x 2 www-data www-data 4096 Oct 17 14:17 LogicHooks/

./Extension/application/Ext/LogicHooks:
total 12
drwxrwxr-x 2 www-data www-data 4096 Oct 17 14:17 ./
drwxrwxr-x 3 www-data www-data 4096 Oct 17 14:17 ../
-rwxrwxr-x 1 www-data www-data 1326 Oct 17 14:17 AOW_WorkFlow_Hook.php*

./Extension/modules:
total 40
drwxrws--- 10 www-data www-data 4096 Nov  7 18:07 ./
drwxrwxr-x  4 www-data www-data 4096 Nov  7 18:06 ../
drwxrws---  3 www-data www-data 4096 Nov  7 18:06 Accounts/
drwxrws---  3 www-data www-data 4096 Nov  7 18:06 Cases/
drwxrws---  3 www-data www-data 4096 Nov  7 18:06 Contacts/
drwxrws---  3 www-data www-data 4096 Nov  7 18:06 Leads/
drwxrws---  3 www-data www-data 4096 Nov  7 18:07 Meetings/
drwxrws---  3 www-data www-data 4096 Nov  7 18:07 Opportunities/
drwxrws---  3 www-data www-data 4096 Nov  7 18:07 Project/
drwxrws---  3 www-data www-data 4096 Nov  7 18:07 Prospects/

./Extension/modules/Accounts:
total 12
drwxrws---  3 www-data www-data 4096 Nov  7 18:06 ./
drwxrws--- 10 www-data www-data 4096 Nov  7 18:07 ../
drwxrws---  3 www-data www-data 4096 Nov  7 18:06 Ext/

./Extension/modules/Accounts/Ext:
total 12
drwxrws--- 3 www-data www-data 4096 Nov  7 18:06 ./
drwxrws--- 3 www-data www-data 4096 Nov  7 18:06 ../
drwxrws--- 2 www-data www-data 4096 Nov  7 18:06 Vardefs/

./Extension/modules/Accounts/Ext/Vardefs:
total 24
drwxrws--- 2 www-data www-data 4096 Nov  7 18:06 ./
drwxrws--- 3 www-data www-data 4096 Nov  7 18:06 ../
-rwxr-xr-x 1 www-data www-data  117 Nov  7 18:06 sugarfield_jjwg_maps_address_c.php*
-rwxr-xr-x 1 www-data www-data  124 Nov  7 18:06 sugarfield_jjwg_maps_geocode_status_c.php*
-rwxr-xr-x 1 www-data www-data  113 Nov  7 18:06 sugarfield_jjwg_maps_lat_c.php*
-rwxr-xr-x 1 www-data www-data  113 Nov  7 18:06 sugarfield_jjwg_maps_lng_c.php*

./Extension/modules/Cases:
total 12
drwxrws---  3 www-data www-data 4096 Nov  7 18:06 ./
drwxrws--- 10 www-data www-data 4096 Nov  7 18:07 ../
drwxrws---  3 www-data www-data 4096 Nov  7 18:06 Ext/

./Extension/modules/Cases/Ext:
total 12
drwxrws--- 3 www-data www-data 4096 Nov  7 18:06 ./
drwxrws--- 3 www-data www-data 4096 Nov  7 18:06 ../
drwxrws--- 2 www-data www-data 4096 Nov  7 18:06 Vardefs/

./Extension/modules/Cases/Ext/Vardefs:
total 24
drwxrws--- 2 www-data www-data 4096 Nov  7 18:06 ./
drwxrws--- 3 www-data www-data 4096 Nov  7 18:06 ../
-rwxr-xr-x 1 www-data www-data  114 Nov  7 18:06 sugarfield_jjwg_maps_address_c.php*
-rwxr-xr-x 1 www-data www-data  121 Nov  7 18:06 sugarfield_jjwg_maps_geocode_status_c.php*
-rwxr-xr-x 1 www-data www-data  110 Nov  7 18:06 sugarfield_jjwg_maps_lat_c.php*
-rwxr-xr-x 1 www-data www-data  110 Nov  7 18:06 sugarfield_jjwg_maps_lng_c.php*

./Extension/modules/Contacts:
total 12
drwxrws---  3 www-data www-data 4096 Nov  7 18:06 ./
drwxrws--- 10 www-data www-data 4096 Nov  7 18:07 ../
drwxrws---  3 www-data www-data 4096 Nov  7 18:06 Ext/

./Extension/modules/Contacts/Ext:
total 12
drwxrws--- 3 www-data www-data 4096 Nov  7 18:06 ./
drwxrws--- 3 www-data www-data 4096 Nov  7 18:06 ../
drwxrws--- 2 www-data www-data 4096 Nov  7 18:06 Vardefs/

./Extension/modules/Contacts/Ext/Vardefs:
total 24
drwxrws--- 2 www-data www-data 4096 Nov  7 18:06 ./
drwxrws--- 3 www-data www-data 4096 Nov  7 18:06 ../
-rwxr-xr-x 1 www-data www-data  117 Nov  7 18:06 sugarfield_jjwg_maps_address_c.php*
-rwxr-xr-x 1 www-data www-data  124 Nov  7 18:06 sugarfield_jjwg_maps_geocode_status_c.php*
-rwxr-xr-x 1 www-data www-data  113 Nov  7 18:06 sugarfield_jjwg_maps_lat_c.php*
-rwxr-xr-x 1 www-data www-data  113 Nov  7 18:06 sugarfield_jjwg_maps_lng_c.php*

./Extension/modules/Leads:
total 12
drwxrws---  3 www-data www-data 4096 Nov  7 18:06 ./
drwxrws--- 10 www-data www-data 4096 Nov  7 18:07 ../
drwxrws---  3 www-data www-data 4096 Nov  7 18:06 Ext/

./Extension/modules/Leads/Ext:
total 12
drwxrws--- 3 www-data www-data 4096 Nov  7 18:06 ./
drwxrws--- 3 www-data www-data 4096 Nov  7 18:06 ../
drwxrws--- 2 www-data www-data 4096 Nov  7 18:06 Vardefs/

./Extension/modules/Leads/Ext/Vardefs:
total 24
drwxrws--- 2 www-data www-data 4096 Nov  7 18:06 ./
drwxrws--- 3 www-data www-data 4096 Nov  7 18:06 ../
-rwxr-xr-x 1 www-data www-data  114 Nov  7 18:06 sugarfield_jjwg_maps_address_c.php*
-rwxr-xr-x 1 www-data www-data  121 Nov  7 18:06 sugarfield_jjwg_maps_geocode_status_c.php*
-rwxr-xr-x 1 www-data www-data  110 Nov  7 18:06 sugarfield_jjwg_maps_lat_c.php*
-rwxr-xr-x 1 www-data www-data  110 Nov  7 18:06 sugarfield_jjwg_maps_lng_c.php*

./Extension/modules/Meetings:
total 12
drwxrws---  3 www-data www-data 4096 Nov  7 18:07 ./
drwxrws--- 10 www-data www-data 4096 Nov  7 18:07 ../
drwxrws---  3 www-data www-data 4096 Nov  7 18:07 Ext/

./Extension/modules/Meetings/Ext:
total 12
drwxrws--- 3 www-data www-data 4096 Nov  7 18:07 ./
drwxrws--- 3 www-data www-data 4096 Nov  7 18:07 ../
drwxrws--- 2 www-data www-data 4096 Nov  7 18:07 Vardefs/

./Extension/modules/Meetings/Ext/Vardefs:
total 24
drwxrws--- 2 www-data www-data 4096 Nov  7 18:07 ./
drwxrws--- 3 www-data www-data 4096 Nov  7 18:07 ../
-rwxr-xr-x 1 www-data www-data  117 Nov  7 18:07 sugarfield_jjwg_maps_address_c.php*
-rwxr-xr-x 1 www-data www-data  124 Nov  7 18:07 sugarfield_jjwg_maps_geocode_status_c.php*
-rwxr-xr-x 1 www-data www-data  113 Nov  7 18:07 sugarfield_jjwg_maps_lat_c.php*
-rwxr-xr-x 1 www-data www-data  113 Nov  7 18:07 sugarfield_jjwg_maps_lng_c.php*

./Extension/modules/Opportunities:
total 12
drwxrws---  3 www-data www-data 4096 Nov  7 18:07 ./
drwxrws--- 10 www-data www-data 4096 Nov  7 18:07 ../
drwxrws---  3 www-data www-data 4096 Nov  7 18:07 Ext/

./Extension/modules/Opportunities/Ext:
total 12
drwxrws--- 3 www-data www-data 4096 Nov  7 18:07 ./
drwxrws--- 3 www-data www-data 4096 Nov  7 18:07 ../
drwxrws--- 2 www-data www-data 4096 Nov  7 18:07 Vardefs/

./Extension/modules/Opportunities/Ext/Vardefs:
total 24
drwxrws--- 2 www-data www-data 4096 Nov  7 18:07 ./
drwxrws--- 3 www-data www-data 4096 Nov  7 18:07 ../
-rwxr-xr-x 1 www-data www-data  121 Nov  7 18:07 sugarfield_jjwg_maps_address_c.php*
-rwxr-xr-x 1 www-data www-data  128 Nov  7 18:07 sugarfield_jjwg_maps_geocode_status_c.php*
-rwxr-xr-x 1 www-data www-data  117 Nov  7 18:07 sugarfield_jjwg_maps_lat_c.php*
-rwxr-xr-x 1 www-data www-data  117 Nov  7 18:07 sugarfield_jjwg_maps_lng_c.php*

./Extension/modules/Project:
total 12
drwxrws---  3 www-data www-data 4096 Nov  7 18:07 ./
drwxrws--- 10 www-data www-data 4096 Nov  7 18:07 ../
drwxrws---  3 www-data www-data 4096 Nov  7 18:07 Ext/

./Extension/modules/Project/Ext:
total 12
drwxrws--- 3 www-data www-data 4096 Nov  7 18:07 ./
drwxrws--- 3 www-data www-data 4096 Nov  7 18:07 ../
drwxrws--- 2 www-data www-data 4096 Nov  7 18:07 Vardefs/

./Extension/modules/Project/Ext/Vardefs:
total 24
drwxrws--- 2 www-data www-data 4096 Nov  7 18:07 ./
drwxrws--- 3 www-data www-data 4096 Nov  7 18:07 ../
-rwxr-xr-x 1 www-data www-data  117 Nov  7 18:07 sugarfield_jjwg_maps_address_c.php*
-rwxr-xr-x 1 www-data www-data  124 Nov  7 18:07 sugarfield_jjwg_maps_geocode_status_c.php*
-rwxr-xr-x 1 www-data www-data  113 Nov  7 18:07 sugarfield_jjwg_maps_lat_c.php*
-rwxr-xr-x 1 www-data www-data  113 Nov  7 18:07 sugarfield_jjwg_maps_lng_c.php*

./Extension/modules/Prospects:
total 12
drwxrws---  3 www-data www-data 4096 Nov  7 18:07 ./
drwxrws--- 10 www-data www-data 4096 Nov  7 18:07 ../
drwxrws---  3 www-data www-data 4096 Nov  7 18:07 Ext/

./Extension/modules/Prospects/Ext:
total 12
drwxrws--- 3 www-data www-data 4096 Nov  7 18:07 ./
drwxrws--- 3 www-data www-data 4096 Nov  7 18:07 ../
drwxrws--- 2 www-data www-data 4096 Nov  7 18:07 Vardefs/

./Extension/modules/Prospects/Ext/Vardefs:
total 24
drwxrws--- 2 www-data www-data 4096 Nov  7 18:07 ./
drwxrws--- 3 www-data www-data 4096 Nov  7 18:07 ../
-rwxr-xr-x 1 www-data www-data  118 Nov  7 18:07 sugarfield_jjwg_maps_address_c.php*
-rwxr-xr-x 1 www-data www-data  125 Nov  7 18:07 sugarfield_jjwg_maps_geocode_status_c.php*
-rwxr-xr-x 1 www-data www-data  114 Nov  7 18:07 sugarfield_jjwg_maps_lat_c.php*
-rwxr-xr-x 1 www-data www-data  114 Nov  7 18:07 sugarfield_jjwg_maps_lng_c.php*

./include:
total 12
drwxrws--- 2 www-data www-data 4096 Nov  7 18:06 ./
drwxrwxr-x 7 www-data www-data 4096 Nov  8 13:29 ../
-rwxr-xr-x 1 www-data www-data 1340 Nov  7 18:06 tabConfig.php*

./modules:
total 68
drwxrwxr-x 16 www-data www-data 4096 Nov  7 18:07 ./
drwxrwxr-x  7 www-data www-data 4096 Nov  8 13:29 ../
drwxrws---  3 www-data www-data 4096 Nov  7 18:07 Accounts/
drwxrws---  2 www-data www-data 4096 Nov  7 18:06 Calls/
drwxrws---  3 www-data www-data 4096 Nov  8 13:26 Cases/
drwxrws---  3 www-data www-data 4096 Nov  7 18:07 Contacts/
drwxrws---  2 www-data www-data 4096 Nov  7 18:06 Emails/
drwxrws---  2 www-data www-data 4096 Nov  7 18:06 Home/
drwxrws---  3 www-data www-data 4096 Nov  7 18:07 Leads/
-rwxr-xr-x  1 www-data www-data 1376 Nov  7 18:07 logic_hooks.php*
drwxrws---  3 www-data www-data 4096 Nov  7 18:07 Meetings/
drwxrws---  3 www-data www-data 4096 Nov  7 18:07 Opportunities/
drwxrws---  3 www-data www-data 4096 Nov  7 18:07 Project/
drwxrws---  2 www-data www-data 4096 Nov  7 18:06 Projects/
drwxrws---  2 www-data www-data 4096 Nov  7 18:06 ProjectTask/
drwxrws---  3 www-data www-data 4096 Nov  7 18:07 Prospects/
drwxrws---  2 www-data www-data 4096 Nov  7 18:06 Users/

./modules/Accounts:
total 16
drwxrws---  3 www-data www-data 4096 Nov  7 18:07 ./
drwxrwxr-x 16 www-data www-data 4096 Nov  7 18:07 ../
drwxrws---  3 www-data www-data 4096 Nov  7 18:07 Ext/
-rwxr-xr-x  1 www-data www-data 1711 Nov  7 18:07 logic_hooks.php*

./modules/Accounts/Ext:
total 12
drwxrws--- 3 www-data www-data 4096 Nov  7 18:07 ./
drwxrws--- 3 www-data www-data 4096 Nov  7 18:07 ../
drwxrws--- 2 www-data www-data 4096 Nov  7 18:07 Vardefs/

./modules/Accounts/Ext/Vardefs:
total 12
drwxrws--- 2 www-data www-data 4096 Nov  7 18:07 ./
drwxrws--- 3 www-data www-data 4096 Nov  7 18:07 ../
-rwxr-xr-x 1 www-data www-data  510 Nov  7 18:07 vardefs.ext.php*

./modules/Calls:
total 12
drwxrws---  2 www-data www-data 4096 Nov  7 18:06 ./
drwxrwxr-x 16 www-data www-data 4096 Nov  7 18:07 ../
-rwxr-xr-x  1 www-data www-data  408 Nov  7 18:06 logic_hooks.php*

./modules/Cases:
total 16
drwxrws---  3 www-data www-data 4096 Nov  8 13:26 ./
drwxrwxr-x 16 www-data www-data 4096 Nov  7 18:07 ../
drwxrws---  3 www-data www-data 4096 Nov  7 18:07 Ext/
-rwxr-xr-x  1 www-data www-data 2313 Nov  7 18:07 logic_hooks.php*

./modules/Cases/Ext:
total 12
drwxrws--- 3 www-data www-data 4096 Nov  7 18:07 ./
drwxrws--- 3 www-data www-data 4096 Nov  8 13:26 ../
drwxrws--- 2 www-data www-data 4096 Nov  7 18:07 Vardefs/

./modules/Cases/Ext/Vardefs:
total 12
drwxrws--- 2 www-data www-data 4096 Nov  7 18:07 ./
drwxrws--- 3 www-data www-data 4096 Nov  7 18:07 ../
-rwxr-xr-x 1 www-data www-data  498 Nov  7 18:07 vardefs.ext.php*

./modules/Contacts:
total 16
drwxrws---  3 www-data www-data 4096 Nov  7 18:07 ./
drwxrwxr-x 16 www-data www-data 4096 Nov  7 18:07 ../
drwxrws---  3 www-data www-data 4096 Nov  7 18:07 Ext/
-rwxr-xr-x  1 www-data www-data  932 Nov  7 18:07 logic_hooks.php*

./modules/Contacts/Ext:
total 12
drwxrws--- 3 www-data www-data 4096 Nov  7 18:07 ./
drwxrws--- 3 www-data www-data 4096 Nov  7 18:07 ../
drwxrws--- 2 www-data www-data 4096 Nov  7 18:07 Vardefs/

./modules/Contacts/Ext/Vardefs:
total 12
drwxrws--- 2 www-data www-data 4096 Nov  7 18:07 ./
drwxrws--- 3 www-data www-data 4096 Nov  7 18:07 ../
-rwxr-xr-x 1 www-data www-data  510 Nov  7 18:07 vardefs.ext.php*

./modules/Emails:
total 12
drwxrws---  2 www-data www-data 4096 Nov  7 18:06 ./
drwxrwxr-x 16 www-data www-data 4096 Nov  7 18:07 ../
-rwxr-xr-x  1 www-data www-data  427 Nov  7 18:06 logic_hooks.php*

./modules/Home:
total 12
drwxrws---  2 www-data www-data 4096 Nov  7 18:06 ./
drwxrwxr-x 16 www-data www-data 4096 Nov  7 18:07 ../
-rwxr-xr-x  1 www-data www-data  248 Nov  7 18:06 dashlets.php*

./modules/Leads:
total 16
drwxrws---  3 www-data www-data 4096 Nov  7 18:07 ./
drwxrwxr-x 16 www-data www-data 4096 Nov  7 18:07 ../
drwxrws---  3 www-data www-data 4096 Nov  7 18:07 Ext/
-rwxr-xr-x  1 www-data www-data  778 Nov  7 18:07 logic_hooks.php*

./modules/Leads/Ext:
total 12
drwxrws--- 3 www-data www-data 4096 Nov  7 18:07 ./
drwxrws--- 3 www-data www-data 4096 Nov  7 18:07 ../
drwxrws--- 2 www-data www-data 4096 Nov  7 18:07 Vardefs/

./modules/Leads/Ext/Vardefs:
total 12
drwxrws--- 2 www-data www-data 4096 Nov  7 18:07 ./
drwxrws--- 3 www-data www-data 4096 Nov  7 18:07 ../
-rwxr-xr-x 1 www-data www-data  498 Nov  7 18:07 vardefs.ext.php*

./modules/Meetings:
total 16
drwxrws---  3 www-data www-data 4096 Nov  7 18:07 ./
drwxrwxr-x 16 www-data www-data 4096 Nov  7 18:07 ../
drwxrws---  3 www-data www-data 4096 Nov  7 18:07 Ext/
-rwxr-xr-x  1 www-data www-data  451 Nov  7 18:07 logic_hooks.php*

./modules/Meetings/Ext:
total 12
drwxrws--- 3 www-data www-data 4096 Nov  7 18:07 ./
drwxrws--- 3 www-data www-data 4096 Nov  7 18:07 ../
drwxrws--- 2 www-data www-data 4096 Nov  7 18:07 Vardefs/

./modules/Meetings/Ext/Vardefs:
total 12
drwxrws--- 2 www-data www-data 4096 Nov  7 18:07 ./
drwxrws--- 3 www-data www-data 4096 Nov  7 18:07 ../
-rwxr-xr-x 1 www-data www-data  510 Nov  7 18:07 vardefs.ext.php*

./modules/Opportunities:
total 16
drwxrws---  3 www-data www-data 4096 Nov  7 18:07 ./
drwxrwxr-x 16 www-data www-data 4096 Nov  7 18:07 ../
drwxrws---  3 www-data www-data 4096 Nov  7 18:07 Ext/
-rwxr-xr-x  1 www-data www-data 1533 Nov  7 18:07 logic_hooks.php*

./modules/Opportunities/Ext:
total 12
drwxrws--- 3 www-data www-data 4096 Nov  7 18:07 ./
drwxrws--- 3 www-data www-data 4096 Nov  7 18:07 ../
drwxrws--- 2 www-data www-data 4096 Nov  7 18:07 Vardefs/

./modules/Opportunities/Ext/Vardefs:
total 12
drwxrws--- 2 www-data www-data 4096 Nov  7 18:07 ./
drwxrws--- 3 www-data www-data 4096 Nov  7 18:07 ../
-rwxr-xr-x 1 www-data www-data  526 Nov  7 18:07 vardefs.ext.php*

./modules/Project:
total 16
drwxrws---  3 www-data www-data 4096 Nov  7 18:07 ./
drwxrwxr-x 16 www-data www-data 4096 Nov  7 18:07 ../
drwxrws---  3 www-data www-data 4096 Nov  7 18:07 Ext/
-rwxr-xr-x  1 www-data www-data 1115 Nov  7 18:07 logic_hooks.php*

./modules/Project/Ext:
total 12
drwxrws--- 3 www-data www-data 4096 Nov  7 18:07 ./
drwxrws--- 3 www-data www-data 4096 Nov  7 18:07 ../
drwxrws--- 2 www-data www-data 4096 Nov  7 18:07 Vardefs/

./modules/Project/Ext/Vardefs:
total 12
drwxrws--- 2 www-data www-data 4096 Nov  7 18:07 ./
drwxrws--- 3 www-data www-data 4096 Nov  7 18:07 ../
-rwxr-xr-x 1 www-data www-data  510 Nov  7 18:07 vardefs.ext.php*

./modules/Projects:
total 12
drwxrws---  2 www-data www-data 4096 Nov  7 18:06 ./
drwxrwxr-x 16 www-data www-data 4096 Nov  7 18:07 ../
-rwxr-xr-x  1 www-data www-data  427 Nov  7 18:06 logic_hooks.php*

./modules/ProjectTask:
total 12
drwxrws---  2 www-data www-data 4096 Nov  7 18:06 ./
drwxrwxr-x 16 www-data www-data 4096 Nov  7 18:07 ../
-rwxr-xr-x  1 www-data www-data  604 Nov  7 18:06 logic_hooks.php*

./modules/Prospects:
total 16
drwxrws---  3 www-data www-data 4096 Nov  7 18:07 ./
drwxrwxr-x 16 www-data www-data 4096 Nov  7 18:07 ../
drwxrws---  3 www-data www-data 4096 Nov  7 18:07 Ext/
-rwxr-xr-x  1 www-data www-data  677 Nov  7 18:07 logic_hooks.php*

./modules/Prospects/Ext:
total 12
drwxrws--- 3 www-data www-data 4096 Nov  7 18:07 ./
drwxrws--- 3 www-data www-data 4096 Nov  7 18:07 ../
drwxrws--- 2 www-data www-data 4096 Nov  7 18:07 Vardefs/

./modules/Prospects/Ext/Vardefs:
total 12
drwxrws--- 2 www-data www-data 4096 Nov  7 18:07 ./
drwxrws--- 3 www-data www-data 4096 Nov  7 18:07 ../
-rwxr-xr-x 1 www-data www-data  514 Nov  7 18:07 vardefs.ext.php*

./modules/Users:
total 12
drwxrws---  2 www-data www-data 4096 Nov  7 18:06 ./
drwxrwxr-x 16 www-data www-data 4096 Nov  7 18:07 ../
-rwxr-xr-x  1 www-data www-data  430 Nov  7 18:06 logic_hooks.php*

I just noticed this solving a hard-to-find bug, that was popping up in the forums frequently, and which I was suffering from myself (#2237).

While the bugs will only affect specific people with specific upgrade/migration paths, there are a few reasons why I think we should be doing this differently:

  1. The custom directory should be empty on systems that haven't been customized yet.

  2. We should have a simple way of checking our installations against the standard install. This is normally done by looking up directories and files in Github, but these files are created by the installer, so they are not here on Github,and it is non-trivial to determine what the installer is writing, and where. If the files really need to be there, it would be better to include the complete files in the repository instead of having them created at install time.

  3. This makes it terribly complicated to do migrations and move our own customizations (and add-ons we bought) from one system to another. (That's how I got my error in the first place, after moving the custom directory without accounting for everything I should have kept there. My initial system had all the SalesAgility modules in the custom directory, my new one didn't.) If we need to cherry-pick files to move, and lines inside those files (for example logic_hooks), migration gets harder, and riskier.

Possible Fix

If the files can be moved to the modules directory, move them.
Wherever the files are, if possible have them in the Github repository, not created in the installer.

Steps to Reproduce

  1. See the files in Github under the custom directory
  2. Install a fresh copy of SuiteCRM and then check all the files under the custom directory

Your Environment

  • SuiteCRM Version used: 7.7.6
  • Browser name and version (e.g. Chrome Version 51.0.2704.63 (64-bit)): irrelevant
  • Environment name and version (e.g. MySQL, PHP 7): MySQL 5.7, PHP 7.0
  • Operating System and version (e.g Ubuntu 16.04): yep, Ubuntu 16.04

Note: if this looks like a mere "Suggestion", please consider that it is the problem behind several bugs that quite a few people are running into. Even if it's partly their fault, a change here could improve SuiteCRM's reliability in practical terms, and this is much needed.

Suggestion

Most helpful comment

@samus-aran this is another one I would call a bug (as I mentioned in the end of my intial text). I had a hard time finding out what was wrong in my system and fixing it, and I've helped several other people in the forums with broken systems because of this.

Once the hook definitions fall out of place, it's really hard to diagnose and correct, especially if the person attempting it is not a developer.

All 11 comments

@pgorod - Thank you for your suggestion, we will assess the possibility of including this in a future release.

To really integrate the SA modules into the base product, they would have their code in the base classes without relying on Logic Hooks (which are an extension mechanism).

Assuming that is too much work, and too risky, the only thing I think _could be considered_ (notice I am not too sure if it's a good idea) would be to change the routines loading Logic Hooks for this special case that are extension-modules-now-part-of-the-base-product.

These routines currently only search custom/modules/[module_name]/logic_hooks.php, but we could make them search first in modules/[module_name]/logic_hooks.php, and _then_ custom/modules/[module_name]/logic_hooks.php, and have all our SalesAgility hooks defined in the modules dir.

What if both files exist? I see two ways to go:

  1. The file in custom/modules overrides the one in modules. This is the default behavior for customizations in SuiteCRM. But it makes handling the user's own customizations more difficult, because they would get mixed with SalesAgility hook definitions.
  2. The two files get merged. This is great for own customizations, because they are kept apart from the rest. The only difficulty I see is if you want to override some SalesAgility hook for some reason. But I could think of ways around this if needed (for example, custom hooks with the same name and priority get to override their siblings in modules).

I know this sounds like a lot of work but maybe it isn't so hard, and we would reconquer the clean separation of product/customizations that is so helpful for migrations and made SugarCRM so flexible and extensible.

@pgorod @shogunpol
Probably the best way forward on modules, is to implement a SugarCRM 7.x compatible REST v10 interface. This is the huge missing piece which would upgrade SuiteCRM to full module compatibility with all modules made for the current version of Sugar 7.x. How it works is, all modules (Sugar stock modules, SA stock AO modules, and third-party-created add-on custom modules) talk to the core CRM through the REST v10 interface. This way, the core is protected from the risk of runtime PHP, namespace, and other dangerous issues. Plus, the modules code environment is totally separated from the code environment of the SuiteCRM core, which is great for scalability, since the module code is fully able to run on a separate remote machine and work exactly the same as if the module ran on the same machine as the SuiteCRM core code.

That sounds great, but it's a big architectural overhaul, touching basically everything in the product, requiring changes in Studio etc... I was hoping for a much simpler change in this particular Issue.

(I admit I'm wasn't adopting a long-term vision, I was just pushing to tidy things up after the relocation of the SA modules)

The old interface could stay around and eventually get deprecated in a long time or maybe never to allow old style modules to continue to work. While the new REST v10 interface is what all the latest and greatest modules are built to talk to. REST close to the existing SOAP interface.

Yesterday I decided to take the time and install a fresh copy of SuiteCRM 7.7.9. I made a zip of the SuiteCRM download as it comes from Github, and then made another zip right after running the installer.

The idea was to get a full comparison of the two states of the directory tree, and thus allowing a full view of what changes the installer makes.

Besides the point of complicating migrations that I was discussing in this issue, there is another new issue (for me) related to this, which is: how to do proper source control on Git if you have to keep track of the upstream branch (which is uninstalled), but have your own local files in an installed state, and with a running SuiteCRM that you can change and debug.

I believe reducing the file differences between the not-installed and installed states of SuiteCRM would have multiple benefits all-round.

Here is the comparison output from Beyond Compare, just the changed stuff during installation:

Folder Compare
Produced: 21/01/2017 11:09:15

Mode:  Right Orphans
Left base folder: C:\Users\Pgr\AppData\Local\Temp\master.zip\SuiteCRM-master
Right base folder: C:\Users\Pgr\AppData\Local\Temp\installed.zip\html
Name       Size          Name                                                    Size
-------------------------------------------------------------------------------------------
                         cache                                                   4,601,779
                         +cache                                                  0
                         |\modules                                               0
                         | \Schedulers                                           0
                         +htmlclean                                              128,288
                         |+CSS                                                   28,868
                      << ||\4.6.0,3838d777a6140cd22d911b32513217ab3e982665,1.ser 28,868
                         |+HTML                                                  98,730
                      << ||\4.6.0,8a7ee8623cf4c9a94e2d1b2aaad39ea50f4c0005,2.ser 98,730
                         |\URI                                                   690
                      << | \4.6.0,5cd4f715c2e490743efbc3cb9f726382a682dc0e,1.ser 690
                         +images                                                 0
                         +include                                                2,219,537
                         |\javascript                                            2,219,537
                      << | +sugar_field_grp.js                                   20,404
                      << | +sugar_grp_emails.js                                  281,097
                      << | +sugar_grp_jsolait.js                                 41,586
                      << | +sugar_grp_project.js                                 41,315
                      << | +sugar_grp_project_template.js                        40,598
                      << | +sugar_grp_quickcomp.js                               158,050
                      << | +sugar_grp_yui_widgets.css                            26,922
                      << | +sugar_grp_yui_widgets.js                             306,603
                      << | +sugar_grp_yui2.js                                    100,288
                      << | +sugar_grp1.js                                        191,234
                      << | +sugar_grp1_jquery.js                                 451,279
                      << | \sugar_grp1_yui.js                                    560,161
                         +layout                                                 0
                         +modules                                                1,607,612
                         |+Accounts                                              38,511
                         ||+language                                             7,446
                      << |||\en_us.lang.php                                      7,446
                      << ||\Accountvardefs.php                                   31,065
                         |+ACLActions                                            3,474
                      << ||\ACLActionvardefs.php                                 3,474
                         |+ACLRoles                                              3,133
                      << ||\ACLRolevardefs.php                                   3,133
                         |+Administration                                        3,469
                      << ||+Administrationvardefs.php                            1,010
                      << ||\UpgradeHistoryvardefs.php                            2,459
                         |+Alerts                                                8,850
                         ||+language                                             1,223
                      << |||\en_us.lang.php                                      1,223
                      << ||\Alertvardefs.php                                     7,627
                         |+AM_ProjectTemplates                                   15,470
                         ||+language                                             4,254
                      << |||\en_us.lang.php                                      4,254
                      << ||\AM_ProjectTemplatesvardefs.php                       11,216
                         |+AM_TaskTemplates                                      17,757
                         ||+language                                             1,939
                      << |||\en_us.lang.php                                      1,939
                      << ||\AM_TaskTemplatesvardefs.php                          15,818
                         |+AOBH_BusinessHours                                    8,878
                         ||+language                                             1,415
                      << |||\en_us.lang.php                                      1,415
                      << ||\AOBH_BusinessHoursvardefs.php                        7,463
                         |+AOD_Index                                             10,473
                         ||+language                                             2,365
                      << |||\en_us.lang.php                                      2,365
                      << ||\AOD_Indexvardefs.php                                 8,108
                         |+AOD_IndexEvent                                        10,450
                         ||+language                                             1,363
                      << |||\en_us.lang.php                                      1,363
                      << ||\AOD_IndexEventvardefs.php                            9,087
                         |+AOK_Knowledge_Base_Categories                         8,908
                         ||+language                                             1,339
                      << |||\en_us.lang.php                                      1,339
                      << ||\AOK_Knowledge_Base_Categoriesvardefs.php             7,569
                         |+AOK_KnowledgeBase                                     15,044
                         ||+language                                             1,728
                      << |||\en_us.lang.php                                      1,728
                      << ||\AOK_KnowledgeBasevardefs.php                         13,316
                         |+AOP_Case_Events                                       9,556
                         ||+language                                             1,423
                      << |||\en_us.lang.php                                      1,423
                      << ||\AOP_Case_Eventsvardefs.php                           8,133
                         |+AOP_Case_Updates                                      11,551
                         ||+language                                             1,598
                      << |||\en_us.lang.php                                      1,598
                      << ||\AOP_Case_Updatesvardefs.php                          9,953
                         |+AOR_Charts                                            8,221
                         ||+language                                             1,213
                      << |||\en_us.lang.php                                      1,213
                      << ||\AOR_Chartvardefs.php                                 7,008
                         |+AOR_Conditions                                        11,618
                         ||+language                                             1,532
                      << |||\en_us.lang.php                                      1,532
                      << ||\AOR_Conditionvardefs.php                             10,086
                         |+AOR_Fields                                            15,079
                         ||+language                                             1,587
                      << |||\en_us.lang.php                                      1,587
                      << ||\AOR_Fieldvardefs.php                                 13,492
                         |+AOR_Reports                                           14,714
                         ||+language                                             2,814
                      << |||\en_us.lang.php                                      2,814
                      << ||\AOR_Reportvardefs.php                                11,900
                         |+AOR_Scheduled_Reports                                 9,942
                         ||+language                                             1,929
                      << |||\en_us.lang.php                                      1,929
                      << ||\AOR_Scheduled_Reportsvardefs.php                     8,013
                         |+AOS_Contracts                                         33,509
                         ||+language                                             3,957
                      << |||\en_us.lang.php                                      3,957
                      << ||\AOS_Contractsvardefs.php                             29,552
                         |+AOS_Invoices                                          35,975
                         ||+language                                             8,515
                      << |||\en_us.lang.php                                      8,515
                      << ||\AOS_Invoicesvardefs.php                              27,460
                         |+AOS_Line_Item_Groups                                  16,845
                         ||+language                                             1,400
                      << |||\en_us.lang.php                                      1,400
                      << ||\AOS_Line_Item_Groupsvardefs.php                      15,445
                         |+AOS_PDF_Templates                                     16,338
                         ||+language                                             2,522
                      << |||\en_us.lang.php                                      2,522
                      << ||\AOS_PDF_Templatesvardefs.php                         13,816
                         |+AOS_Product_Categories                                12,547
                         ||+language                                             1,749
                      << |||\en_us.lang.php                                      1,749
                      << ||\AOS_Product_Categoriesvardefs.php                    10,798
                         |+AOS_Products                                          18,256
                         ||+language                                             2,198
                      << |||\en_us.lang.php                                      2,198
                      << ||\AOS_Productsvardefs.php                              16,058
                         |+AOS_Products_Quotes                                   23,416
                         ||+language                                             2,620
                      << |||\en_us.lang.php                                      2,620
                      << ||\AOS_Products_Quotesvardefs.php                       20,796
                         |+AOS_Quotes                                            38,542
                         ||+language                                             8,486
                      << |||\en_us.lang.php                                      8,486
                      << ||\AOS_Quotesvardefs.php                                30,056
                         |+AOW_Actions                                           9,199
                         ||+language                                             1,404
                      << |||\en_us.lang.php                                      1,404
                      << ||\AOW_Actionvardefs.php                                7,795
                         |+AOW_Conditions                                        10,187
                         ||+language                                             986
                      << |||\en_us.lang.php                                      986
                      << ||\AOW_Conditionvardefs.php                             9,201
                         |+AOW_Processed                                         11,401
                         ||+language                                             1,882
                      << |||\en_us.lang.php                                      1,882
                      << ||\AOW_Processedvardefs.php                             9,519
                         |+AOW_WorkFlow                                          15,348
                         ||+language                                             1,717
                      << |||\en_us.lang.php                                      1,717
                      << ||\AOW_WorkFlowvardefs.php                              13,631
                         |+Bugs                                                  22,057
                         ||+language                                             3,871
                      << |||\en_us.lang.php                                      3,871
                      << ||\Bugvardefs.php                                       18,186
                         |+Calls                                                 28,045
                         ||+language                                             6,126
                      << |||\en_us.lang.php                                      6,126
                      << ||\Callvardefs.php                                      21,919
                         |+Calls_Reschedule                                      10,337
                         ||+language                                             1,432
                      << |||\en_us.lang.php                                      1,432
                      << ||\Calls_Reschedulevardefs.php                          8,905
                         |+CampaignLog                                           9,214
                      << ||\CampaignLogvardefs.php                               9,214
                         |+Campaigns                                             47,165
                         ||+language                                             29,216
                      << |||\en_us.lang.php                                      29,216
                      << ||\Campaignvardefs.php                                  17,949
                         |+CampaignTrackers                                      3,834
                      << ||\CampaignTrackervardefs.php                           3,834
                         |+Cases                                                 29,725
                         ||+language                                             5,857
                      << |||\en_us.lang.php                                      5,857
                      << ||\Casevardefs.php                                      23,868
                         |+Contacts                                              52,871
                         ||+language                                             10,817
                      << |||\en_us.lang.php                                      10,817
                      << ||\Contactvardefs.php                                   42,054
                         |+Currencies                                            2,998
                      << ||\Currencyvardefs.php                                  2,998
                         |+DocumentRevisions                                     5,331
                      << ||\DocumentRevisionvardefs.php                          5,331
                         |+Documents                                             23,879
                         ||+language                                             6,300
                      << |||\en_us.lang.php                                      6,300
                      << ||\Documentvardefs.php                                  17,579
                         |+DynamicFields                                         3,525
                      << ||\FieldsMetaDatavardefs.php                            3,525
                         |+EAPM                                                  14,559
                         ||+language                                             4,107
                      << |||\en_us.lang.php                                      4,107
                      << ||\EAPMvardefs.php                                      10,452
                         |+EmailAddresses                                        2,049
                      << ||\EmailAddressvardefs.php                              2,049
                         |+EmailMan                                              4,673
                      << ||\EmailManvardefs.php                                  4,673
                         |+EmailMarketing                                        5,474
                      << ||\EmailMarketingvardefs.php                            5,474
                         |+Emails                                                31,590
                         ||+language                                             15,561
                      << |||\en_us.lang.php                                      15,561
                      << ||\Emailvardefs.php                                     16,029
                         |+EmailTemplates                                        9,139
                         ||+language                                             2,849
                      << |||\en_us.lang.php                                      2,849
                      << ||\EmailTemplatevardefs.php                             6,290
                         |+EmailText                                             2,586
                      << ||\EmailTextvardefs.php                                 2,586
                         |+Employees                                             22,199
                      << ||\Employeevardefs.php                                  22,199
                         |+Favorites                                             8,781
                         ||+language                                             1,192
                      << |||\en_us.lang.php                                      1,192
                      << ||\Favoritesvardefs.php                                 7,589
                         |+FP_Event_Locations                                    13,515
                         ||+language                                             1,684
                      << |||\en_us.lang.php                                      1,684
                      << ||\FP_Event_Locationsvardefs.php                        11,831
                         |+FP_events                                             20,066
                         ||+language                                             4,255
                      << |||\en_us.lang.php                                      4,255
                      << ||\FP_eventsvardefs.php                                 15,811
                         |+Import                                                5,674
                      << ||+ImportMapvardefs.php                                 3,723
                      << ||\UsersLastImportvardefs.php                           1,951
                         |+Import_1                                              3,751
                      << ||\ImportMapvardefs.php                                 3,751
                         |+Import_2                                              1,979
                      << ||\UsersLastImportvardefs.php                           1,979
                         |+InboundEmail                                          16,888
                         ||+language                                             9,795
                      << |||\en_us.lang.php                                      9,795
                      << ||\InboundEmailvardefs.php                              7,093
                         |+jjwg_Address_Cache                                    9,588
                         ||+language                                             1,608
                      << |||\en_us.lang.php                                      1,608
                      << ||\jjwg_Address_Cachevardefs.php                        7,980
                         |+jjwg_Areas                                            11,833
                         ||+language                                             1,992
                      << |||\en_us.lang.php                                      1,992
                      << ||\jjwg_Areasvardefs.php                                9,841
                         |+jjwg_Maps                                             28,461
                         ||+language                                             11,115
                      << |||\en_us.lang.php                                      11,115
                      << ||\jjwg_Mapsvardefs.php                                 17,346
                         |+jjwg_Markers                                          12,906
                         ||+language                                             1,931
                      << |||\en_us.lang.php                                      1,931
                      << ||\jjwg_Markersvardefs.php                              10,975
                         |+Leads                                                 52,380
                         ||+language                                             12,029
                      << |||\en_us.lang.php                                      12,029
                      << ||\Leadvardefs.php                                      40,351
                         |+Meetings                                              29,100
                         ||+language                                             6,789
                      << |||\en_us.lang.php                                      6,789
                      << ||\Meetingvardefs.php                                   22,311
                         |+MergeRecords                                          117
                      << ||\MergeRecordvardefs.php                               117
                         |+Notes                                                 17,452
                         ||+language                                             2,853
                      << |||\en_us.lang.php                                      2,853
                      << ||\Notevardefs.php                                      14,599
                         |+OAuthKeys                                             8,956
                         ||+language                                             1,022
                      << |||\en_us.lang.php                                      1,022
                      << ||\OAuthKeyvardefs.php                                  7,934
                         |+OAuthTokens                                           5,040
                      << ||\OAuthTokenvardefs.php                                5,040
                         |+Opportunities                                         28,021
                         ||+language                                             6,308
                      << |||\en_us.lang.php                                      6,308
                      << ||\Opportunityvardefs.php                               21,713
                         |+OutboundEmailAccounts                                 11,128
                      << ||\OutboundEmailAccountsvardefs.php                     11,128
                         |+Project                                               23,136
                         ||+language                                             7,387
                      << |||\en_us.lang.php                                      7,387
                      << ||\Projectvardefs.php                                   15,749
                         |+ProjectTask                                           18,715
                         ||+language                                             3,280
                      << |||\en_us.lang.php                                      3,280
                      << ||\ProjectTaskvardefs.php                               15,435
                         |+ProspectLists                                         9,793
                         ||+language                                             2,206
                      << |||\en_us.lang.php                                      2,206
                      << ||\ProspectListvardefs.php                              7,587
                         |+Prospects                                             38,000
                         ||+language                                             8,622
                      << |||\en_us.lang.php                                      8,622
                      << ||\Prospectvardefs.php                                  29,378
                         |+Relationships                                         260,226
                      << ||+relationships.cache.php                              256,977
                      << ||\Relationshipvardefs.php                              3,249
                         |+Releases                                              2,386
                      << ||\Releasevardefs.php                                   2,386
                         |+Reminders                                             9,872
                         ||+language                                             715
                      << |||\en_us.lang.php                                      715
                      << ||\Remindervardefs.php                                  9,157
                         |+Reminders_Invitees                                    9,366
                         ||+language                                             715
                      << |||\en_us.lang.php                                      715
                      << ||\Reminder_Inviteevardefs.php                          8,651
                         |+Roles                                                 2,391
                      << ||\Rolevardefs.php                                      2,391
                         |+SavedSearch                                           4,059
                         ||+language                                             1,051
                      << |||\en_us.lang.php                                      1,051
                      << ||\SavedSearchvardefs.php                               3,008
                         |+Schedulers                                            7,676
                         ||+language                                             0
                      << ||+lastrun                                              10
                      << ||\Schedulervardefs.php                                 7,666
                         |+SchedulersJobs                                        7,765
                         ||+language                                             1,102
                      << |||\en_us.lang.php                                      1,102
                      << ||\SchedulersJobvardefs.php                             6,663
                         |+SecurityGroups                                        13,624
                         ||+language                                             4,800
                      << |||\en_us.lang.php                                      4,800
                      << ||\SecurityGroupvardefs.php                             8,824
                         |+Spots                                                 15,920
                         ||+language                                             6,119
                      << |||\en_us.lang.php                                      6,119
                      << ||\Spotsvardefs.php                                     9,801
                         |+SugarFeed                                             12,335
                         ||+language                                             3,867
                      << |||\en_us.lang.php                                      3,867
                      << ||\SugarFeedvardefs.php                                 8,468
                         |+Tasks                                                 18,606
                         ||+language                                             3,603
                      << |||\en_us.lang.php                                      3,603
                      << ||\Taskvardefs.php                                      15,003
                         |+TemplateSectionLine                                   8,470
                         ||+language                                             1,421
                      << |||\en_us.lang.php                                      1,421
                      << ||\TemplateSectionLinevardefs.php                       7,049
                         |+Trackers                                              4,193
                      << ||\Trackervardefs.php                                   4,193
                         |+UserPreferences                                       1,882
                      << ||\UserPreferencevardefs.php                            1,882
                         |+Users                                                 54,145
                         ||+language                                             32,124
                      << |||\en_us.lang.php                                      32,124
                      << ||\Uservardefs.php                                      22,021
                         |\vCals                                                 1,505
                      << | \vCalvardefs.php                                      1,505
                         +pdf                                                    0
                         +Relationships                                          332,602
                      << |\relationships.cache.php                               332,602
                         +smarty                                                 18,612
                         |+cache                                                 0
                         |+configs                                               0
                         |\templates_c                                           18,612
                      << | +%%00^00F^00F5D2D7%%footer.tpl.php                    4,793
                      << | +%%04^047^047CC1D0%%login.tpl.php                     7,590
                      << | +%%28^287^2879BF3B%%_head.tpl.php                     3,203
                      << | +%%79^79D^79D9896D%%displayLoginJS.tpl.php            1,254
                      << | \%%F9^F94^F946E606%%header.tpl.php                    1,772
                         +themes                                                 295,128
                         |+Suite7                                                0
                         |+SuiteP                                                294,976
                         ||+css                                                  281,215
                      << |||+deprecated.css                                      2,193
                      << |||+style.css                                           184,526
                      << |||\yui.css                                             94,496
                         ||+js                                                   12,479
                      << |||\style-min.js                                        12,479
                      << ||\pathCache.php                                        1,282
                         |\SuiteR                                                152
                      << | \pathCache.php                                        152
                         \xml                                                    0
custom     4,946         custom                                                  27,524
+Extension 1,326         +Extension                                              5,058
|                        |\modules                                               3,732
|                        | +Accounts                                             467
|                        | |\Ext                                                 467
|                        | | \Vardefs                                            467
|                     << | |  +sugarfield_jjwg_maps_address_c.php                117
|                     << | |  +sugarfield_jjwg_maps_geocode_status_c.php         124
|                     << | |  +sugarfield_jjwg_maps_lat_c.php                    113
|                     << | |  \sugarfield_jjwg_maps_lng_c.php                    113
|                        | +Cases                                                455
|                        | |\Ext                                                 455
|                        | | \Vardefs                                            455
|                     << | |  +sugarfield_jjwg_maps_address_c.php                114
|                     << | |  +sugarfield_jjwg_maps_geocode_status_c.php         121
|                     << | |  +sugarfield_jjwg_maps_lat_c.php                    110
|                     << | |  \sugarfield_jjwg_maps_lng_c.php                    110
|                        | +Contacts                                             467
|                        | |\Ext                                                 467
|                        | | \Vardefs                                            467
|                     << | |  +sugarfield_jjwg_maps_address_c.php                117
|                     << | |  +sugarfield_jjwg_maps_geocode_status_c.php         124
|                     << | |  +sugarfield_jjwg_maps_lat_c.php                    113
|                     << | |  \sugarfield_jjwg_maps_lng_c.php                    113
|                        | +Leads                                                455
|                        | |\Ext                                                 455
|                        | | \Vardefs                                            455
|                     << | |  +sugarfield_jjwg_maps_address_c.php                114
|                     << | |  +sugarfield_jjwg_maps_geocode_status_c.php         121
|                     << | |  +sugarfield_jjwg_maps_lat_c.php                    110
|                     << | |  \sugarfield_jjwg_maps_lng_c.php                    110
|                        | +Meetings                                             467
|                        | |\Ext                                                 467
|                        | | \Vardefs                                            467
|                     << | |  +sugarfield_jjwg_maps_address_c.php                117
|                     << | |  +sugarfield_jjwg_maps_geocode_status_c.php         124
|                     << | |  +sugarfield_jjwg_maps_lat_c.php                    113
|                     << | |  \sugarfield_jjwg_maps_lng_c.php                    113
|                        | +Opportunities                                        483
|                        | |\Ext                                                 483
|                        | | \Vardefs                                            483
|                     << | |  +sugarfield_jjwg_maps_address_c.php                121
|                     << | |  +sugarfield_jjwg_maps_geocode_status_c.php         128
|                     << | |  +sugarfield_jjwg_maps_lat_c.php                    117
|                     << | |  \sugarfield_jjwg_maps_lng_c.php                    117
|                        | +Project                                              467
|                        | |\Ext                                                 467
|                        | | \Vardefs                                            467
|                     << | |  +sugarfield_jjwg_maps_address_c.php                117
|                     << | |  +sugarfield_jjwg_maps_geocode_status_c.php         124
|                     << | |  +sugarfield_jjwg_maps_lat_c.php                    113
|                     << | |  \sugarfield_jjwg_maps_lng_c.php                    113
|                        | \Prospects                                            471
|                        |  \Ext                                                 471
|                        |   \Vardefs                                            471
|                     << |    +sugarfield_jjwg_maps_address_c.php                118
|                     << |    +sugarfield_jjwg_maps_geocode_status_c.php         125
|                     << |    +sugarfield_jjwg_maps_lat_c.php                    114
|                     << |    \sugarfield_jjwg_maps_lng_c.php                    114
|                        +include                                                1,340
|                     << |\tabConfig.php                                         1,340
\modules   2,074         \modules                                                19,580
                          +Accounts                                              2,221
                          |+Ext                                                  510
                          ||\Vardefs                                             510
                      <<  || \vardefs.ext.php                                    510
                      <<  |\logic_hooks.php                                      1,711
                          +Calls                                                 408
                      <<  |\logic_hooks.php                                      408
                          +Cases                                                 2,811
                          |+Ext                                                  498
                          ||\Vardefs                                             498
                      <<  || \vardefs.ext.php                                    498
                      <<  |\logic_hooks.php                                      2,313
                          +Contacts                                              1,442
                          |+Ext                                                  510
                          ||\Vardefs                                             510
                      <<  || \vardefs.ext.php                                    510
                      <<  |\logic_hooks.php                                      932
                          +Emails                                                427
                      <<  |\logic_hooks.php                                      427
                          +Home                                                  248
                      <<  |\dashlets.php                                         248
                          +Leads                                                 1,276
                          |+Ext                                                  498
                          ||\Vardefs                                             498
                      <<  || \vardefs.ext.php                                    498
                      <<  |\logic_hooks.php                                      778
                          +Meetings                                              961
                          |+Ext                                                  510
                          ||\Vardefs                                             510
                      <<  || \vardefs.ext.php                                    510
                      <<  |\logic_hooks.php                                      451
                          +Opportunities                                         2,059
                          |+Ext                                                  526
                          ||\Vardefs                                             526
                      <<  || \vardefs.ext.php                                    526
                      <<  |\logic_hooks.php                                      1,533
                          +Project                                               1,625
                          |+Ext                                                  510
                          ||\Vardefs                                             510
                      <<  || \vardefs.ext.php                                    510
                      <<  |\logic_hooks.php                                      1,115
                          +Projects                                              427
                      <<  |\logic_hooks.php                                      427
                          +ProjectTask                                           604
                      <<  |\logic_hooks.php                                      604
                          +Prospects                                             1,191
                          |+Ext                                                  514
                          ||\Vardefs                                             514
                      <<  || \vardefs.ext.php                                    514
                      <<  |\logic_hooks.php                                      677
                          +Users                                                 430
                      <<  |\logic_hooks.php                                      430
                      <<  \logic_hooks.php                                       1,376
install    899,917       install                                                 900,218
                      << \status.json                                            301
modules    50,127,967    modules                                                 50,128,007
\AOD_Index 871,492       \AOD_Index                                              871,532
                          \Index                                                 40
                           \Index                                                40
                      <<    +read.lock.file                                      0
                      <<    +segments.gen                                        20
                      <<    +segments_1                                          20
                      <<    \write.lock.file                                     0
upload     56            upload                                                  2,659
                      << \24e684c3-0674-cc93-d22f-588274697c29                   2,603
                      << .htaccess                                               2,371
                      << config.php                                              9,959
                      << install.log                                             34,663
                      << php_errors.log                                          81,656
                      << sugarcrm.log                                            247,702
                      << suitecrm.log                                            6,937
-------------------------------------------------------------------------------------------

Not all this has the same implications. Many of these changes are harmless. For me the main points deserving attention would be:

  • the jjwg Maps module. It seems like the least integrated part of SuiteCRM. It still lives largely in the custom directory, and spreads files all over the place.
  • the custom directory should be as clean as possible to facilitate managing the user's own customizations. _See_ discussion in previous posts.
  • lots of new vardefs, even in the main modules directory. These seem to be copied from include/SugarObjects/templates. I don't know if we should be bothered with this. Maybe yes to facilitate git source control as I explained above. But I am no expert with git...

There's no reason why the files on github shouldn't download directly into the same exact folder locations on the running CRM server, the app really should be installable into an empty web folder on a server with just the command git clone https://github.com/salesagility/SuiteCRM. The only differences in files should be the files which are generated after the app runs for the first time:

  1. the app configuration files config.php and config_override.php
  2. the generated variable definitions - vardefs.

We have now set up a new home for suggestions at Trello. All github issues that were labeled 'suggestion' have been moved and will be closed. Certain ones will be progressed within the new Suggestion Box and may be re-opened.

Announcement of moving Suggestions:
https://suitecrm.com/forum/suggestion-box/13691-moving-suggestions-from-github-to

New SuiteCRM Suggestion Box
https://trello.com/b/Ht7LbMqw/suitecrm-suggestion-box

@samus-aran this is another one I would call a bug (as I mentioned in the end of my intial text). I had a hard time finding out what was wrong in my system and fixing it, and I've helped several other people in the forums with broken systems because of this.

Once the hook definitions fall out of place, it's really hard to diagnose and correct, especially if the person attempting it is not a developer.

@samus-aran this is another one I would call a bug (as I mentioned in the end of my intial text). I had a hard time finding out what was wrong in my system and fixing it, and I've helped several other people in the forums with broken systems because of this.

Once the hook definitions fall out of place, it's really hard to diagnose and correct, especially if the person attempting it is not a developer.

Even when the person is a developer, I figured out the Hook wasn't firing while using a debugger; however, I had no clue why it wasn't firing as I didn't expect a system module to need hooks in the custom directory which were missing. Also, there is no task or system process in place to rebuild these hooks.

Was this page helpful?
0 / 5 - 0 ratings