nineinchnick\nfy\components\MailQueue::send PHP Method

send() public method

public send ( $message, $category = null )
    public function send($message, $category = null)
    {
        $stringMessage = $message;
        if (!is_string($message)) {
            $stringMessage = print_r($message, true);
        }
        if ($this->beforeSend($message) !== true) {
            Yii::info(Yii::t('app', "Not sending message '{msg}' to queue {queue_label}.", ['msg' => $stringMessage, 'queue_label' => $this->label]), 'nfy');
            return false;
        }
        $success = true;
        if ($this->sendToSubscriptionQueue) {
            $this->subscriptionQueue->send($message, $category);
        }
        $mailMessage = call_user_func($this->composeCallback, $message);
        foreach ($this->getSubscriptions() as $subscription) {
            if ($this->beforeSendSubscription($message, $subscription->subscriber_id) !== true) {
                continue;
            }
            if ($category !== null && !$subscription->matchCategory($category)) {
                continue;
            }
            if (!$mailMessage->setTo(call_user_func($this->recipientCallback, $subscription->subscriber_id))->send()) {
                Yii::error(Yii::t('app', "Failed to save message '{msg}' in queue {queue_label} for the subscription {subscription_id}.", ['msg' => $stringMessage, 'queue_label' => $this->label, 'subscription_id' => $subscription->subscriber_id]), 'nfy');
                $success = false;
            }
            $this->afterSendSubscription($message, $subscription->subscriber_id);
        }
        $this->afterSend($message);
        Yii::info(Yii::t('app', "Sent message '{msg}' to queue {queue_label}.", ['msg' => $stringMessage, 'queue_label' => $this->label]), 'nfy');
        return $success;
    }