private function areaFactory($result) { $areas = array(); if (is_array($result)) { if (count($result) > 0) { foreach ($result as $value) { $area = new \Entity\Area(); $area->setAreaId($value['idarea']); $area->setName($value['name']); $areas[] = $area; } } } return $areas; }
public function postAreaAction() { try { $app = \Slim\Slim::getInstance(); $data = $app->request->getBody(); $areaPost = json_decode($data); $area = new \Entity\Area(); $area->setName($areaPost->name); $this->validateArea($area); $areaRep = new \Repository\AreaRepository(); $areaRep->insert($area); $returnAreas = $areaRep->finByName($area->getName()); if (count($returnAreas) > 1) { throw new Exception('Many areas'); } $resource = new \League\Fractal\Resource\Item($returnAreas[0], new \Transformer\AreaTransformer()); return $this->writeJson($resource, 200); } catch (\Exception $exc) { return $this->error($exc->getMessage()); } }