/** * Determines the current editing locale * * @param int $translation * @param MailingNode $mailing * @return string */ protected function determineLocaleAndTranslation($translation, MailingNode $mailing) { $translation = $mailing->translateOrFirst(); if (is_null($translation)) { abort(404); } return [$translation->locale, $translation]; }
/** * Populates a mailchimp campaign content * * @param Client $client * @param string $mailingId * @param MailingNode $mailing * @param MailingList $list * @return string $campaignId */ protected function makeUpdateMailchimpCampaignContentRequest(Client $client, $mailingId, MailingNode $mailing, MailingList $list) { $translation = $mailing->translateOrFirst(); set_app_locale($translation->locale); $_inBrowser = false; $mail = view($mailing->getNodeTypeName(), compact('mailing', 'list', 'translation', '_inBrowser'))->render(); return $client->post('campaigns/' . $mailingId . '/content', ['headers' => ['X-HTTP-Method-Override' => 'PUT'], 'json' => ['html' => $mail, 'url' => route('reactor.mailings.preview', $mailing->translateOrFirst()->node_name)]]); }