예제 #1
0
 public function beforeSave()
 {
     $categoria = Categorias::findFirst(array('conditions' => array('sku' => $this->categoria)));
     if ($categoria) {
         $this->categoria = (string) $categoria->_id;
     }
 }
예제 #2
0
        }
        $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 {