request->getPost(); $article = $this->checkArticle($id); $validator = new ArticleValidator(); $validator->checkIfAllowEdit($article); $data = $this->handlePostData($post); if ($article->published == ArticleModel::PUBLISH_REJECTED) { $data['published'] = ArticleModel::PUBLISH_PENDING; } $article->update($data); if (isset($post['xm_tag_ids'])) { $this->saveTags($article, $post['xm_tag_ids']); } $this->saveDynamicAttrs($article); $this->eventsManager->fire('Article:afterUpdate', $this, $article); return $article; } }