File "NewsletterOptionField.php"
Full Path: /home/warrior1/public_html/wp-content/plugins/mailpoet/lib/Models/NewsletterOptionField.php
File size: 1.92 KB
MIME-type: text/x-php
Charset: utf-8
<?php
namespace MailPoet\Models;
if (!defined('ABSPATH')) exit;
/**
* @property string $name
* @property string $newsletterType
*
* @deprecated This model is deprecated. Use \MailPoet\Newsletter\Options\NewsletterOptionFieldsRepository and
* \MailPoet\Entities\NewsletterOptionFieldEntity instead. This class can be removed after 2022-11-11.
*/
class NewsletterOptionField extends Model {
public static $_table = MP_NEWSLETTER_OPTION_FIELDS_TABLE; // phpcs:ignore PSR2.Classes.PropertyDeclaration
/**
* @deprecated
*/
public function __construct() {
self::deprecationError(__METHOD__);
parent::__construct();
$this->addValidations('name', [
'required' => __('Please specify a name.', 'mailpoet'),
]);
$this->addValidations('newsletter_type', [
'required' => __('Please specify a newsletter type.', 'mailpoet'),
]);
}
/**
* @deprecated
*/
public function newsletters() {
return $this->has_many_through(
__NAMESPACE__ . '\Newsletter',
__NAMESPACE__ . '\NewsletterOption',
'option_field_id',
'newsletter_id'
)->select_expr(MP_NEWSLETTER_OPTION_TABLE . '.value');
}
/**
* @deprecated This is here for displaying the deprecation warning for properties.
*/
public function __get($key) {
self::deprecationError('property "' . $key . '"');
return parent::__get($key);
}
/**
* @deprecated This is here for displaying the deprecation warning for static calls.
*/
public static function __callStatic($name, $arguments) {
self::deprecationError($name);
return parent::__callStatic($name, $arguments);
}
private static function deprecationError($methodName) {
trigger_error(
'Calling ' . esc_html($methodName) . ' is deprecated and will be removed. Use \MailPoet\Newsletter\Options\NewsletterOptionFieldsRepository and \MailPoet\Entities\NewsletterOptionFieldEntity instead.',
E_USER_DEPRECATED
);
}
}