Implement NewsletterTempates::delete() API using Doctrine

[MAILPOET-2647]
This commit is contained in:
Jan Jakeš
2020-03-05 17:24:17 +01:00
committed by Veljko V
parent 32f5777945
commit 196fb6794c

View File

@ -67,15 +67,18 @@ class NewsletterTemplates extends APIEndpoint {
}
public function delete($data = []) {
$id = (isset($data['id']) ? (int)$data['id'] : false);
$template = NewsletterTemplate::findOne($id);
if ($template instanceof NewsletterTemplate) {
$template->delete();
return $this->successResponse(null, ['count' => 1]);
} else {
$template = isset($data['id'])
? $this->newsletterTemplatesRepository->findOneById((int)$data['id'])
: null;
if (!$template) {
return $this->errorResponse([
APIError::NOT_FOUND => WPFunctions::get()->__('This template does not exist.', 'mailpoet'),
]);
}
$this->newsletterTemplatesRepository->remove($template);
$this->newsletterTemplatesRepository->flush();
return $this->successResponse(null, ['count' => 1]);
}
}