public function actionDelete($id) { $pageId = new \MongoId($id); $page = Page::findByPk($pageId); if (empty($page)) { throw new BadRequestHttpException('Failed to find page'); } if (!$page->deletable) { throw new BadRequestHttpException(\Yii::t('microsite', 'page_cannt_delete')); } if ($page->delete()) { $result = PageComponent::deleteAll(['pageId' => $pageId]); } else { throw new ServerErrorHttpException('Delete fail'); } return ['message' => 'OK']; }
/** * Delete page component * * <b>Request Type: </b>DELETE<br/> * <b>Request Endpoint: </b>http://{server-domain}/api/microsite/page-component/{id} * <b>Summary: </b>This api is for delete page component * * <b>Response Example: </b> * <pre> * {'message' : 'OK'} * </pre> */ public function actionDelete($id) { $pageComponentId = new \MongoId($id); $pageComponent = PageComponent::findByPk($pageComponentId); if (empty($pageComponent)) { throw new ServerErrorHttpException(\Yii::t('common', 'data_error')); } $result = PageComponent::deleteAll(['$or' => [['_id' => $pageComponentId], ['parentId' => $pageComponentId]]]); if ($result) { $tabId = $pageComponent->pageId === $pageComponent->parentId ? null : $pageComponent->parentId; $inc = -1; $condition = ['order' => ['$gt' => $pageComponent->order]]; $this->_updateOrder($condition, $inc, $pageComponent->pageId, $tabId, $pageComponent->tabIndex); } else { throw new ServerErrorHttpException(\Yii::t('common', 'delete_fail')); } return ['message' => 'OK']; }