/** * @deprecated 4.9.0 * @param EE_Message $message * @return array An array with 'messenger' and 'message_type' as the index and the corresponding valid object if * available. * Eg. Valid Messenger and Message Type: * array( * 'messenger' => new EE_Email_messenger(), * 'message_type' => new EE_Registration_Approved_message_type() * ) * Valid Messenger and Invalid Message Type: * array( * 'messenger' => new EE_Email_messenger(), * 'message_type' => null * ) */ public function validate_for_use(EE_Message $message) { // EE_messages has been deprecated $this->_class_is_deprecated(__FUNCTION__); return array('messenger' => $message->messenger_object(), 'message_type' => $message->message_type_object()); }
/** * _process_message * * @param EE_Message $message * @param mixed $sending_messenger (optional) * @return bool */ protected function _process_message(EE_Message $message, $sending_messenger = null) { // these *should* have been validated in the execute() method above $messenger = $message->messenger_object(); $message_type = $message->message_type_object(); //do actions for sending messenger if it differs from generating messenger and swap values. if ($sending_messenger instanceof EE_messenger && $messenger instanceof EE_messenger && $sending_messenger->name != $messenger->name) { $messenger->do_secondary_messenger_hooks($sending_messenger->name); $messenger = $sending_messenger; } // send using messenger, but double check objects if ($messenger instanceof EE_messenger && $message_type instanceof EE_message_type) { //set hook for message type (but only if not using another messenger to send). if (!isset($this->_did_hook[$message_type->name])) { $message_type->do_messenger_hooks($messenger); $this->_did_hook[$message_type->name] = 1; } //if preview then use preview method return $this->_message_repository->is_preview() ? $this->_do_preview($message, $messenger, $message_type, $this->_message_repository->is_test_send()) : $this->_do_send($message, $messenger, $message_type); } return false; }