Further refactored triggers for generic events