summaryrefslogtreecommitdiffstats
path: root/lib/SendGridCompatibility/Email.php
diff options
context:
space:
mode:
Diffstat (limited to 'lib/SendGridCompatibility/Email.php')
-rw-r--r--lib/SendGridCompatibility/Email.php133
1 files changed, 43 insertions, 90 deletions
diff --git a/lib/SendGridCompatibility/Email.php b/lib/SendGridCompatibility/Email.php
index b375839..5065e1f 100644
--- a/lib/SendGridCompatibility/Email.php
+++ b/lib/SendGridCompatibility/Email.php
@@ -1,181 +1,146 @@
<?php
namespace SparkPost\SendGridCompatibility;
-class Email
-{
+class Email {
public $model;
/**
* Sets up the model for saving the configuration
*/
- public function __construct()
- {
+ public function __construct() {
$this->model = array();
}
/**
- * Adds addresses as recipients
- *
+ * adds addresses as recipients
* @param string $address
* @param string $name optional
- * @return \SparkPost\SendGridCompatibility\Email
+ * @return $this
*/
- public function addTo($address, $name = null)
- {
+ public function addTo($address, $name = null) {
if (!isset($this->model['recipients'])) {
$this->model['recipients'] = array();
}
- if (isset($name)) {
- $address = array('address' => array('email' => $address, 'name' => $name));
+ if(isset($name)) {
+ $address = array('address'=>array('email'=>$address, 'name'=>$name));
} else {
- $address = array('address' => array('email' => $address));
+ $address = array('address'=>array('email'=>$address));
}
array_push($this->model['recipients'], $address);
-
return $this;
}
/**
- * Explicitly sets a list of addresses
- *
- * @param array $addresses
- * @return \SparkPost\SendGridCompatibility\Email
- */
- public function setTos(array $addresses)
- {
+ * explicitly sets a list of addresses
+ * @param array $addresses
+ * @return $this
+ */
+ public function setTos(array $addresses) {
$this->model['recipients'] = $addresses;
-
return $this;
}
/**
- * Sets the from address
- *
+ * sets the from address
* @param string $address
* @return $this
*/
- public function setFrom($address)
- {
+ public function setFrom($address) {
$this->model['from'] = array('email' => $address);
-
return $this;
}
/**
* Sets the name for the from address
- *
* @param string $name
* @return $this
* @throws \Exception
*/
- public function setFromName($name)
- {
- if (!isset($this->model['from'])) {
+ public function setFromName($name) {
+ if(!isset($this->model['from'])){
throw new \Exception('Must set \'From\' prior to setting \'From Name\'.');
}
$this->model['from']['name'] = $name;
-
return $this;
}
/**
- * Sets the reply to field
- *
+ * sets the reply to field
* @param string $address
* @return $this
*/
- public function setReplyTo($address)
- {
+ public function setReplyTo ($address) {
$this->model['replyTo'] = $address;
-
return $this;
}
/**
- * Throws an error because bcc fields are not yet implemented
- *
+ * throws an error because bcc fields are not yet implemented.
* @throws \Exception
* @param string $address
* @return $this
*/
- public function addBcc($address)
- {
+ public function addBcc($address) {
throw new \Exception('Adding bcc recipients is not yet supported, try adding them as a \'to\' address');
}
/**
- * Sets the subject header
- *
+ * sets the subject header
* @param string $subject
- * @return \SparkPost\SendGridCompatibility\Email
+ * @return $this
*/
- public function setSubject($subject)
- {
+ public function setSubject($subject) {
$this->model['subject'] = $subject;
-
return $this;
}
/**
- * Sets the text body
- *
+ * sets the text body
* @param string $text
- * @return \SparkPost\SendGridCompatibility\Email
+ * @return $this
*/
- public function setText($text)
- {
+ public function setText($text) {
$this->model['text'] = $text;
-
return $this;
}
/**
- * Sets the html body
- *
+ * sets the html body
* @param string $html
- * @return \SparkPost\SendGridCompatibility\Email
+ * @return $this
*/
- public function setHtml($html)
- {
+ public function setHtml($html) {
$this->model['html'] = $html;
-
return $this;
}
/**
* Throws an exception since adding categories is not yet supported
- *
- * @throws \Exception
* @param string $category
* @throws \Exception
*/
- public function addCategory($category)
- {
+ public function addCategory($category) {
throw new \Exception('Adding categories is not yet supported');
}
/**
* Throws an exception since adding attachments is not yet supported
- *
- * @param mixed $attachment
* @throws \Exception
+ * @param mixed $attachment
*/
- public function addAttachment($attachment)
- {
+ public function addAttachment($attachment) {
throw new \Exception('Adding attachments is not yet supported');
}
/**
* Adds transmission level substitution data
- *
* @param string $name
* @param mixed $values
- * @return \SparkPost\SendGridCompatibility\Email
+ * @return $this
*/
- public function addSubstitution($name, $values)
- {
+ public function addSubstitution($name, $values) {
if (!isset($this->model['substitutionData'])) {
$this->model['substitutionData'] = array();
}
@@ -186,46 +151,37 @@ class Email
/**
* Adds transmission level substitution data
- *
* @param string $name
* @param mixed $values
*/
- public function addSection($name, $values)
- {
+ public function addSection($name, $values) {
$this->addSubstitution($name, $values);
}
/**
* Throws an exception because arguments for third party systems is not supported
- *
- * @param $key
- * @param mixed $value
* @throws \Exception
+ * @param mixed $value
*/
- public function addUniqueArg($key, $value)
- {
+ public function addUniqueArg($key, $value) {
throw new \Exception('Adding Unique Arguments is not yet supported');
}
/**
* Throws an exception because arguments for third party systems is not supported
- *
- * @param mixed $values
* @throws \Exception
+ * @param mixed $values
*/
- public function setUniqueArgs(array $values)
- {
+ public function setUniqueArgs(array $values) {
throw new \Exception('Setting Unique Arguments is not yet supported');
}
/**
* Adds custom headers to the email header
- *
* @param string $name
* @param string $value
*/
- public function addHeader($name, $value)
- {
+ public function addHeader($name, $value) {
if (!isset($this->model['customHeaders'])) {
$this->model['customHeaders'] = array();
}
@@ -233,14 +189,11 @@ class Email
}
/**
- * Converts this object to a configuration for a SparkPost transmission
- *
+ * converts this object to a configuration for a SparkPost transmission
* @return array
*/
- public function toSparkPostTransmission()
- {
+ public function toSparkPostTransmission() {
return $this->model;
}
}
-
?>