Add hooks for GA tracking feature [PREMIUM-2]

This commit is contained in:
Alexey Stoletniy
2017-03-08 14:17:24 +03:00
parent 16dc81150d
commit e2864e2243
4 changed files with 28 additions and 6 deletions

View File

@@ -29,12 +29,12 @@ class Newsletters extends APIEndpoint {
APIError::NOT_FOUND => __('This newsletter does not exist.', 'mailpoet')
));
} else {
return $this->successResponse(
$newsletter
$newsletter = $newsletter
->withSegments()
->withOptions()
->asArray()
);
->asArray();
$newsletter = apply_filters('mailpoet_api_newsletters_get_after', $newsletter);
return $this->successResponse($newsletter);
}
}
@@ -51,6 +51,8 @@ class Newsletters extends APIEndpoint {
unset($data['options']);
}
$data = apply_filters('mailpoet_api_newsletters_save_before', $data);
$newsletter = Newsletter::createOrUpdate($data);
$errors = $newsletter->getErrors();
@@ -93,6 +95,8 @@ class Newsletters extends APIEndpoint {
$newsletter = Newsletter::filter('filterWithOptions')
->findOne($newsletter->id);
do_action('mailpoet_api_newsletters_save_after', $newsletter);
// if this is a post notification, process newsletter options and update its schedule
if($newsletter->type === Newsletter::TYPE_NOTIFICATION) {
// generate the new schedule from options and get the new "next run" date
@@ -204,6 +208,7 @@ class Newsletters extends APIEndpoint {
if(!empty($errors)) {
return $this->errorResponse($errors);
} else {
do_action('mailpoet_api_newsletters_duplicate_after', $newsletter, $duplicate);
return $this->successResponse(
Newsletter::findOne($duplicate->id)->asArray(),
array('count' => 1)