/** * Add recipient-specific values to the batch. * * @since 2.0.0 * * @param Prompt_User $recipient * @return $this */ public function add_recipient(Prompt_User $recipient) { if (!$recipient->get_wp_user()) { trigger_error(__('Did not add an invalid post recipient', 'Postmatic'), E_USER_NOTICE); return $this; } $prompt_site = $this->context->get_site(); $prompt_author = $this->context->get_author(); $subscribed_object = $prompt_author->is_subscribed($recipient->id()) ? $prompt_author : $prompt_site; $unsubscribe_link = new Prompt_Unsubscribe_Link($recipient->get_wp_user()); $values = array('id' => $recipient->id(), 'to_name' => $recipient->get_wp_user()->display_name, 'to_address' => $recipient->get_wp_user()->user_email, 'subscribed_object_label' => html_entity_decode($subscribed_object->subscription_object_label()), 'unsubscribe_url' => $unsubscribe_link->url()); if (is_a($subscribed_object, 'Prompt_User') and $prompt_author->id()) { $values['from_name'] = get_option('blogname') . ' [' . $prompt_author->get_wp_user()->display_name . ']'; } $values = array_merge($values, $this->mail_command_values($recipient->id(), $subscribed_object)); return $this->add_individual_message_values($values); }