This commit updates the remove date of the deprecated models NewsletterOption and NewsletterOptionField. When they were initially deprecated it was missed that two Newsletter model methods still used them. Those two methods are deprecated in this commit as apparently they are not used anymore in MP's codebase. [MAILPOET-5252]
64 lines
2.0 KiB
PHP
64 lines
2.0 KiB
PHP
<?php // phpcs:ignore SlevomatCodingStandard.TypeHints.DeclareStrictTypes.DeclareStrictTypesMissing
|
|
|
|
namespace MailPoet\Models;
|
|
|
|
/**
|
|
* @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 2023-10-28.
|
|
*/
|
|
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
|
|
);
|
|
}
|
|
}
|