public static function requestSaveCor()
 {
     try {
         $id_empreendimento = $_POST['id_empreendimento'];
         $cor = $_POST['cor'];
         $ReferenciaIntegracaoDao = new ReferenciaIntegracaoDao();
         $ReferenciaIntegracaoTO = new ReferenciaIntegracaoTO();
         $PrestaShopDao = new PrestaShopDao($id_empreendimento);
         $CorProdutoDao = new CorProdutoDao();
         $ReferenciaIntegracaoTO = new ReferenciaIntegracaoTO();
         $ReferenciaIntegracaoTO->sistema_integrado = 'PrestaShop';
         $ReferenciaIntegracaoTO->tabela = 'tbl_cor_produto';
         $ReferenciaIntegracaoTO->id_item = null;
         $ReferenciaIntegracaoTO->id_item_referencia = $cor['id_attribute'];
         $ReferenciaIntegracaoTO->tipo = 'cor';
         $ReferenciaIntegracaoTO->id_empreendimento = $id_empreendimento;
         $referencia = $ReferenciaIntegracaoDao->refExists($ReferenciaIntegracaoTO, true);
         if ($referencia) {
             $obj = new stdClass();
             $obj->nome_cor = $cor['name'];
             if (!$CorProdutoDao->updateCor($obj, 'id=' . $referencia['id_item'])) {
                 throw new Exception('Erro ao atualizar cor', 1);
             }
         } else {
             $last_id = $CorProdutoDao->saveCorProduto($cor['name'], array($id_empreendimento), true);
             if (!is_numeric($last_id)) {
                 throw new Exception('Erro ao cadastrar cor', 1);
             }
             $ReferenciaIntegracaoTO->id_item = $last_id;
             if (!$ReferenciaIntegracaoDao->save($ReferenciaIntegracaoTO)) {
                 throw new Exception('Erro ao criar referencia no sistema', 1);
             }
         }
     } catch (Exception $e) {
         $log = new KLogger("logs/logErrorPrestaShop.txt", KLogger::DEBUG);
         $log->LogError($e->getMessage() . '- file:' . $e->getFile() . ' - line:' . $e->getLine());
         $log->LogDebug(json_encode($_POST));
         $log->LogJunp();
         Flight::halt(500, $e->getMessage());
     }
 }