Source of file Templates.php
Size: 4,070 Bytes - Last Modified: 2021-12-23T10:39:01+00:00
/var/www/docs.ssmods.com/process/src/src/Api/Traits/Templates.php
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132 | <?php namespace Sunnysideup\CampaignMonitor\Api\Traits; use Sunnysideup\CampaignMonitor\Model\CampaignMonitorCampaign; trait Templates { /** * @param mixed $templatID * * @return mixed */ public function getTemplate($templatID) { $wrap = new \CS_REST_Templates( $templatID, $this->getAuth() ); $result = $wrap->get(); return $this->returnResult( $result, 'GET /api/v3/templates/{ID}', 'Got Summary' ); } /** * @todo check 201 / 201!!! * * @return mixed */ public function createTemplate(CampaignMonitorCampaign $campaignMonitorCampaign) { $name = 'Template for ' . $campaignMonitorCampaign->Name; if (! $name) { $name = 'no name set'; } $wrap = new \CS_REST_Templates(null, $this->getAuth()); $result = $wrap->create( $this->Config()->get('client_id'), [ 'Name' => $name, 'HtmlPageURL' => $campaignMonitorCampaign->PreviewLink(), 'ZipFileURL' => '', ] ); if (null !== $result->http_status_code && (201 === $result->http_status_code || 201 === $result->http_status_code)) { $code = $result->response; $campaignMonitorCampaign->CreateFromWebsite = false; $campaignMonitorCampaign->CreatedFromWebsite = true; $campaignMonitorCampaign->TemplateID = $code; } else { $campaignMonitorCampaign->CreateFromWebsite = false; $campaignMonitorCampaign->CreatedFromWebsite = false; $code = 'Error'; if (is_object($result->response)) { $code = $result->response->Code . ':' . $result->response->Message; } $campaignMonitorCampaign->MessageFromNewsletterServer = $code; } $campaignMonitorCampaign->write(); return $this->returnResult( $result, 'POST /api/v3/templates/{clientID}', 'Created Template' ); } /** * @param string $templateID * * @return mixed */ public function updateTemplate(CampaignMonitorCampaign $campaignMonitorCampaign, $templateID) { $name = 'Template for ' . $campaignMonitorCampaign->Name; if (! $name) { $name = 'no name set'; } $wrap = new \CS_REST_Templates($templateID, $this->getAuth()); $result = $wrap->create( $this->Config()->get('client_id'), [ 'Name' => $name, 'HtmlPageURL' => $campaignMonitorCampaign->PreviewLink(), 'ZipFileURL' => '', ] ); if (null !== $result->http_status_code && (201 === $result->http_status_code || 201 === $result->http_status_code)) { $code = $result->response; $campaignMonitorCampaign->CreateFromWebsite = false; $campaignMonitorCampaign->CreatedFromWebsite = true; } else { $campaignMonitorCampaign->CreateFromWebsite = false; $campaignMonitorCampaign->CreatedFromWebsite = false; $code = 'Error'; if (is_object($result->response)) { $code = $result->response->Code . ':' . $result->response->Message; } $campaignMonitorCampaign->MessageFromNewsletterServer = $code; } $campaignMonitorCampaign->write(); return $this->returnResult( $result, 'PUT /api/v3/templates/{ID}', 'Updated Template' ); } /** * @param int|string $templateID * * @return mixed */ public function deleteTemplate($templateID) { $wrap = new \CS_REST_Templates($templateID, $this->getAuth()); $result = $wrap->delete(); return $this->returnResult( $result, 'DELETE /api/v3/templates/{ID}', 'Deleted Template' ); } } |