public function subscribe($email, $list = NULL)
 {
     if (!is_null($list)) {
         $list = $this->findOrCreateList($list);
     }
     $subscriber = new Subscriber();
     $subscriber->email = $email;
     $subscriber->save();
 }
 /**
  * @param string $email
  * @param string|NULL $listName
  */
 public function unsubscribe($email, $listName = NULL)
 {
     $subscriber = Subscriber::where('email', $email)->first();
     if (is_null($subscriber)) {
         return;
     }
     foreach ($subscriber->lists as $list) {
         if ($list->name == $listName || $listName === NULL) {
             $list->subscribers()->detach($subscriber);
         }
     }
     if (is_null($listName)) {
         $subscriber->delete();
     }
 }