Use api data fix service for save form api

[MAILPOET-3415]
This commit is contained in:
Rostislav Wolny
2021-02-10 14:02:47 +01:00
committed by Veljko V
parent 1fbed46411
commit 08b5fae173

View File

@ -7,6 +7,7 @@ use MailPoet\API\JSON\Error as APIError;
use MailPoet\API\JSON\ResponseBuilders\FormsResponseBuilder;
use MailPoet\Config\AccessControl;
use MailPoet\Entities\FormEntity;
use MailPoet\Form\ApiDataSanitiser;
use MailPoet\Form\DisplayFormInWPContent;
use MailPoet\Form\FormFactory;
use MailPoet\Form\FormsRepository;
@ -50,6 +51,9 @@ class Forms extends APIEndpoint {
/** @var Emoji */
private $emoji;
/** @var ApiDataSanitiser */
private $dataSanitiser;
public function __construct(
Listing\BulkActionController $bulkAction,
Listing\Handler $listingHandler,
@ -58,7 +62,8 @@ class Forms extends APIEndpoint {
FormsRepository $formsRepository,
FormsResponseBuilder $formsResponseBuilder,
WPFunctions $wp,
Emoji $emoji
Emoji $emoji,
ApiDataSanitiser $dataSanitiser
) {
$this->bulkAction = $bulkAction;
$this->listingHandler = $listingHandler;
@ -68,6 +73,7 @@ class Forms extends APIEndpoint {
$this->formsRepository = $formsRepository;
$this->formsResponseBuilder = $formsResponseBuilder;
$this->emoji = $emoji;
$this->dataSanitiser = $dataSanitiser;
}
public function get($data = []) {
@ -188,6 +194,7 @@ class Forms extends APIEndpoint {
$formId = (isset($data['id']) ? (int)$data['id'] : 0);
$name = (isset($data['name']) ? $data['name'] : WPFunctions::get()->__('New form', 'mailpoet'));
$body = (isset($data['body']) ? $data['body'] : []);
$body = $this->dataSanitiser->sanitiseBody($body);
$settings = (isset($data['settings']) ? $data['settings'] : []);
$styles = (isset($data['styles']) ? $data['styles'] : '');
$status = (isset($data['status']) ? $data['status'] : FormEntity::STATUS_ENABLED);