model = $model; } /** * update name of tactic, specified by tactic identifier, given in url. * @param int $tactic_id * @param Account $account * @return HttpResponse */ public function updateName(int $tactic_id, Account $account): HttpResponse { return Control::runChecked([ "name" => [Validators::lenBetween(1, 50), Validators::nameWithSpaces()], ], function (HttpRequest $request) use ($tactic_id, $account) { $failures = $this->model->updateName($tactic_id, $request["name"], $account->getId()); if (!empty($failures)) { //TODO find a system to handle Unauthorized error codes more easily from failures. return new JsonHttpResponse($failures, HttpCodes::BAD_REQUEST); } return HttpResponse::fromCode(HttpCodes::OK); }); } /** * @param int $id * @param Account $account * @return HttpResponse */ public function saveContent(int $id, Account $account): HttpResponse { return Control::runChecked([ "content" => [], ], function (HttpRequest $req) use ($id) { if ($fail = $this->model->updateContent($id, json_encode($req["content"]))) { return new JsonHttpResponse([$fail], HttpCodes::BAD_REQUEST); } return HttpResponse::fromCode(HttpCodes::OK); }); } }