Universal Customization

Replace all calls to include() (and similar calls) to a new function that checks the ‘custom’ folder for that path and calls include and then calls the one specified if not found. SearchForm2 an extremely important file to be able to custom load but all references to it include it directly using include() so there’s no upgrade safe way to override it on a system wide basis. I’m sure there are many other files that have the same issue. This should allow almost every piece of SuiteCRM to be able to be customized in an upgrade-safe manner.