public function beforeSave() { $categoria = Categorias::findFirst(array('conditions' => array('sku' => $this->categoria))); if ($categoria) { $this->categoria = (string) $categoria->_id; } }
} $response->setStatusCode(201, 'Created'); $response->setContent("<?xml version='1.0' encoding='ISO-8859-1'?><response><status>OK</status><mensagem>Foram criadas {$total} categorias de um total de " . count($xml) . " de produtos enviados</mensagem></response>"); } else { $response->setStatusCode(401, 'Não autorizado'); $response->setContent("<?xml version='1.0' encoding='ISO-8859-1'?><response><status>ERROR</status><mensagem>Chave inválida</mensagem></response>"); } return $response; }); // Update Categoria $app->post('/update/category/{key}/{codigo}', function ($key, $codigo) use($app, $di) { $response = new Response(); $conta = Contas::findFirst(array('conditions' => array('key' => $key))); if ($conta) { setDatabase($di, $conta->host, $conta->database); $categoria = Categorias::findFirst(array('conditions' => array('sku' => $codigo))); if ($categoria) { $xml = simplexml_load_string($_POST['xml']); $categoria->nome = (string) $xml->nome; if ($categoria->save()) { $response->setStatusCode(200, 'OK'); $response->setContent("<?xml version='1.0' encoding='ISO-8859-1'?><response><status>OK</status><mensagem>Categoria {$codigo} alterada com sucesso</mensagem></response>"); } else { $response->setStatusCode(400, 'Invalid Request'); $errors = array(); foreach ($categoria->getMessages() as $message) { $errors[] = $message->getMessage(); } $response->setContent("<?xml version='1.0' encoding='ISO-8859-1'?><response><status>ERROR</status><mensagem>{$errors[0]}</mensagem></response>"); } } else {