Index: units/email_events/email_events_event_handler.php =================================================================== --- units/email_events/email_events_event_handler.php (revision 15437) +++ units/email_events/email_events_event_handler.php (working copy) @@ -97,6 +97,9 @@ $module = $this->Application->GetVar('module'); $object->addFilter('module_filter', '%1$s.Module = ' . $this->Conn->qstr($module)); } + else { + $object->addFilter('module_filter', '%1$s.Module IN (SELECT Name FROM ' . TABLE_PREFIX . 'Modules WHERE Loaded = 1)'); + } if ( !$event->Special && !$this->Application->isDebugMode() ) { // no special Index: units/helpers/email_message_helper.php =================================================================== --- units/helpers/email_message_helper.php (revision 15437) +++ units/helpers/email_message_helper.php (working copy) @@ -80,7 +80,7 @@ try { $this->Application->Parser->CompileRaw($object->GetField($field), 'email_template'); } - catch (ParserException $e) { + catch (Exception $e) { if ( $this->Application->isDebugMode() ) { $this->Application->Debugger->appendHTML('Error in Email Template: ' . $e->getMessage() . ' (line: ' . $e->getLine() . ')'); } Index: units/phrases/phrases_event_handler.php =================================================================== --- units/phrases/phrases_event_handler.php (revision 15437) +++ units/phrases/phrases_event_handler.php (working copy) @@ -37,6 +37,23 @@ } /** + * Hides phrases from disabled modules + * + * @param kEvent $event + * @return void + * @access protected + */ + protected function SetCustomQuery(kEvent $event) + { + parent::SetCustomQuery($event); + + $object = $event->getObject(); + /* @var $object kDBList */ + + $object->addFilter('module_filter', '%1$s.Module IN (SELECT Name FROM ' . TABLE_PREFIX . 'Modules WHERE Loaded = 1)'); + } + + /** * Apply some special processing to object being * recalled before using it in other events that * call prepareObject