%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /var/www/pn/beta/64801_wp-content/plugins/mailpoet/lib/Subscribers/
Upload File :
Create Path :
Current File : /var/www/pn/beta/64801_wp-content/plugins/mailpoet/lib/Subscribers/Source.php

<?php

namespace MailPoet\Subscribers;

use MailPoet\Models\Subscriber;

class Source {

  const FORM = 'form';
  const IMPORTED = 'imported';
  const ADMINISTRATOR = 'administrator';
  const API = 'api';
  const WORDPRESS_USER = 'wordpress_user';
  const UNKNOWN = 'unknown';

  private static $allowed_sources = array(
    Source::FORM,
    Source::IMPORTED,
    Source::ADMINISTRATOR,
    Source::API,
    Source::WORDPRESS_USER,
    Source::UNKNOWN,
  );

  static function setSource(Subscriber $subscriber, $source) {
    if((isset($subscriber->source)) && ($subscriber->source !== Source::UNKNOWN)) {
      // we don't want to override source
      return $subscriber;
    }
    if(!in_array($source, Source::$allowed_sources)) {
      throw new \InvalidArgumentException('Invalid source "' . $source . '""');
    }
    $subscriber->set('source', $source);
    return $subscriber;
  }

}

Zerion Mini Shell 1.0