public function updatePage() { ipRequest()->mustBePost(); $data = ipRequest()->getPost(); if (empty($data['pageId'])) { throw new \Ip\Exception("Missing required parameters"); } $pageId = (int) $data['pageId']; $page = ipContent()->getPage($pageId); if (!$page) { throw new \Ip\Exception("Page doesn't exist"); } $answer = array(); if (strtotime($data['createdAt']) === false) { $answer['errors']['createdAt'] = __('Incorrect date format. Example:', 'Ip-admin', false) . date(" Y-m-d"); } if (strtotime($data['updatedAt']) === false) { $answer['errors']['updatedAt'] = __('Incorrect date format. Example:', 'Ip-admin', false) . date(" Y-m-d"); } if ($data['alias'] != $page->getAlias()) { if (Model::getPageByAlias($page->getLanguageCode(), $data['alias'])) { $answer['errors']['alias'] = __('This alias is already occupied', 'Ip-admin'); } } $data['isVisible'] = !empty($data['isVisible']); $data['isDisabled'] = !empty($data['isDisabled']); $data['isSecured'] = !empty($data['isSecured']); $data['isBlank'] = !empty($data['isBlank']); if ($page->getUrlPath() == $data['urlPath']) { unset($data['urlPath']); } if (empty($answer['errors'])) { Model::updatePageProperties($pageId, $data); ipEvent('ipFormUpdatePageSubmitted', array($data)); $answer['status'] = 'success'; $answer['newPageUrl'] = ipPage($pageId)->getUrlPath(); } else { $answer['status'] = 'error'; } return new \Ip\Response\Json($answer); }
/** * Update properties of page * * @param int $pageId * @param array $data */ public static function updatePage($pageId, $data) { Model::updatePageProperties($pageId, $data); }