Нет описания

NewsletterOptionField.php 939B

12345678910111213141516171819202122232425262728293031323334353637
  1. <?php
  2. namespace MailPoet\Models;
  3. if (!defined('ABSPATH')) exit;
  4. use MailPoet\WP\Functions as WPFunctions;
  5. /**
  6. * @property string $name
  7. * @property string $newsletterType
  8. */
  9. class NewsletterOptionField extends Model {
  10. public static $_table = MP_NEWSLETTER_OPTION_FIELDS_TABLE; // phpcs:ignore PSR2.Classes.PropertyDeclaration
  11. public function __construct() {
  12. parent::__construct();
  13. $this->addValidations('name', [
  14. 'required' => WPFunctions::get()->__('Please specify a name.', 'mailpoet'),
  15. ]);
  16. $this->addValidations('newsletter_type', [
  17. 'required' => WPFunctions::get()->__('Please specify a newsletter type.', 'mailpoet'),
  18. ]);
  19. }
  20. public function newsletters() {
  21. return $this->has_many_through(
  22. __NAMESPACE__ . '\Newsletter',
  23. __NAMESPACE__ . '\NewsletterOption',
  24. 'option_field_id',
  25. 'newsletter_id'
  26. )->select_expr(MP_NEWSLETTER_OPTION_TABLE . '.value');
  27. }
  28. }