As many of you already know, logic hooks allow you to insert business logic (php code) at certain points within common actions a SugarCRM user may perform. Commonly used logic hooks are before_save and after_save hooks which allow you to run code after or before a record is saved, and after_login and after_logout which allows you to run code after a user logs in or out. The (mostly) complete list of available hooks and how to use them are available on the SugarCRM Developer website.
In some cases, you may need a single logic hook to work for all modules. Global logic hooks are good to use when you’re generalizing a utility for all modules. Instead of having an individual logic_hooks.php file in every /custom/modules/{module} folder, you can create /custom/modules/logic_hooks.php and put your hooks in there. The hooks in the global logic hooks file will fire for every module, even custom modules.
One issue I ran into recently was how to package and distribute a global logic hook. Installing a logic hook with a “Module Loader”-loadable package is pretty easy. Angel Magaña has a post explaining how to do just that. Adding a global logic hook is very simple. You do exactly what you would to install a regular logic hook using the logichooks entry in the $installdefs array, and instead of providing a module name, you provide an empty string.
To test this out for yourself you could use git to checkout the code or manually download the files from github. Zip up the three files together in a .zip file and load it up using the module loader. After you install the package, you’ll see the logic_hooks.php files were created properly in both /custom/modules and custom/modules/Accounts.
What other useful ways have you found to install and implement logic hooks?
-
SugarCRM Outlook Plugin for Mac
FEATUREDImplicit FrontEnd for Mac is an Outlook integration solution for SugarCRM which enables users to do all their CRM work from within Outlook. Use Email side-panel in Outlook to view CRM information, upd...
-
Email notification enabled for Project Task
Using Community Edition as Project Management software and want your users to get an email when the are assigned to a Project Task? Simply install this fix for SugarCRM CE and your users will be notif...
-
Xero Integration for Sugar by Faye
FEATUREDOur SugarCRM Xero Integration by Faye allows users to automate critical processes, reduces the duplication of efforts, and maintains data integrity across sales, CRM, and accounting functions.
- Show more addons