'staff_2', 'requestData' => [ 'articleId' => [ 'validation' => DataValidator::dataStoreId('article'), 'error' => ERRORS::INVALID_TOPIC ], 'title' => [ 'validation' => DataValidator::oneOf(DataValidator::notBlank()->length(1, 200),DataValidator::nullType()), 'error' => ERRORS::INVALID_TITLE ], 'content' => [ 'validation' => DataValidator::oneOf(DataValidator::content(),DataValidator::nullType()), 'error' => ERRORS::INVALID_CONTENT ], ] ]; } public function handler() { $article = Article::getDataStore(Controller::request('articleId')); if (Controller::request('topicId')) { $newArticleTopic = Topic::getDataStore(Controller::request('topicId')); if (!$newArticleTopic->isNull()) { $article->topic = $newArticleTopic; } else { throw new RequestException(ERRORS::INVALID_TOPIC); return; } } if(Controller::request('content')) { $fileUploader = FileUploader::getInstance(); $fileUploader->setPermission(FileManager::PERMISSION_ARTICLE); $content = Controller::request('content', true); $imagePaths = $this->uploadImages(true); $article->content = $this->replaceWithImagePaths($imagePaths, $content); } if(Controller::request('title')) { $article->title = Controller::request('title'); } if(Controller::request('position')) { $article->position = Controller::request('position'); } $article->lastEdited = Date::getCurrentDate(); $article->store(); Log::createLog('EDIT_ARTICLE', $article->title); Response::respondSuccess(); } }