www.victoriaeivo.com.br Open in urlscan Pro
54.85.86.211  Public Scan

Submitted URL: https://victoriaeivo.com.br/
Effective URL: https://www.victoriaeivo.com.br/
Submission: On March 06 via api from US — Scanned from US

Form analysis 2 forms found in the DOM

Name: vm.form_rsvpPOST

<form class="form-horizontal ng-scope ng-pristine ng-invalid ng-invalid-required" ng-if="vm.dateDeadline" method="post" name="vm.form_rsvp" ng-model-options="{ getterSetter: true }" ng-hide="vm.rsvpSent" ng-submit="vm.sendRsvp()">
  <div class="form-group" ng-class="{'has-error': vm.errors.rsvp_nome || (vm.form_rsvp.$dirty &amp;&amp; vm.form_rsvp.nome.$invalid)}">
    <label class="col-xs-12 col-sm-5 col-md-3 control-label" for="nome">Nome completo</label>
    <div class="col-xs-12 col-sm-7 col-md-7">
      <input class="form-control ng-pristine ng-invalid ng-invalid-required" name="nome" maxlength="60" ng-model="vm.rsvp.name" placeholder="Insira seu nome completo" required="" type="text" ng-click="vm.captchaRsvp()">
      <span class="help-block ng-binding ng-hide" ng-bind="vm.errors.rsvp_nome" ng-show="vm.errors.rsvp_nome"></span>
    </div>
  </div>
  <div class="form-group form-group-confirmacao">
    <label class="col-xs-12 col-sm-5 col-md-3 control-label" for="confirmacao">Você irá ao evento?</label>
    <div class="col-xs-12 col-sm-7 col-md-7 col-reset-height">
      <label class="radio inline">
        <input name="confirmacao" ng-model="vm.rsvp.confirmed" checked="" type="radio" value="1" class="ng-pristine ng-valid"> sim </label>
      <label class="radio inline">
        <input name="confirmacao" ng-model="vm.rsvp.confirmed" type="radio" value="0" class="ng-pristine ng-valid"> não </label>
    </div>
  </div>
  <div class="form-group form-group-qtd" ng-class="{'has-error': vm.errors.rsvp_qtd_adultos || (vm.form_rsvp.$dirty &amp;&amp; vm.form_rsvp.qtd_adultos.$invalid)}">
    <label class="col-xs-12 col-sm-5 col-md-3 control-label" for="qtd_adultos"> Quantidade de adultos incluindo você </label>
    <div class="col-xs-12 col-sm-7">
      <select class="form-control qtd ng-pristine ng-valid ng-valid-required" name="qtd_adultos" required="" ng-model="vm.rsvp.amount_adults">
        <option selected="" ng-value="1" value="1">1</option>
        <!-- ngRepeat: (key, value) in [].constructor(vm.configsRsvp.limit_adults_qty - 1) track by $index -->
        <option ng-repeat="(key, value) in [].constructor(vm.configsRsvp.limit_adults_qty - 1) track by $index" ng-value="$index + 2" ng-bind="$index + 2" value="2" class="ng-binding ng-scope">2</option>
        <!-- end ngRepeat: (key, value) in [].constructor(vm.configsRsvp.limit_adults_qty - 1) track by $index -->
        <option ng-repeat="(key, value) in [].constructor(vm.configsRsvp.limit_adults_qty - 1) track by $index" ng-value="$index + 2" ng-bind="$index + 2" value="3" class="ng-binding ng-scope">3</option>
        <!-- end ngRepeat: (key, value) in [].constructor(vm.configsRsvp.limit_adults_qty - 1) track by $index -->
        <option ng-repeat="(key, value) in [].constructor(vm.configsRsvp.limit_adults_qty - 1) track by $index" ng-value="$index + 2" ng-bind="$index + 2" value="4" class="ng-binding ng-scope">4</option>
        <!-- end ngRepeat: (key, value) in [].constructor(vm.configsRsvp.limit_adults_qty - 1) track by $index -->
        <option ng-repeat="(key, value) in [].constructor(vm.configsRsvp.limit_adults_qty - 1) track by $index" ng-value="$index + 2" ng-bind="$index + 2" value="5" class="ng-binding ng-scope">5</option>
        <!-- end ngRepeat: (key, value) in [].constructor(vm.configsRsvp.limit_adults_qty - 1) track by $index -->
        <option ng-repeat="(key, value) in [].constructor(vm.configsRsvp.limit_adults_qty - 1) track by $index" ng-value="$index + 2" ng-bind="$index + 2" value="6" class="ng-binding ng-scope">6</option>
        <!-- end ngRepeat: (key, value) in [].constructor(vm.configsRsvp.limit_adults_qty - 1) track by $index -->
        <option ng-repeat="(key, value) in [].constructor(vm.configsRsvp.limit_adults_qty - 1) track by $index" ng-value="$index + 2" ng-bind="$index + 2" value="7" class="ng-binding ng-scope">7</option>
        <!-- end ngRepeat: (key, value) in [].constructor(vm.configsRsvp.limit_adults_qty - 1) track by $index -->
        <option ng-repeat="(key, value) in [].constructor(vm.configsRsvp.limit_adults_qty - 1) track by $index" ng-value="$index + 2" ng-bind="$index + 2" value="8" class="ng-binding ng-scope">8</option>
        <!-- end ngRepeat: (key, value) in [].constructor(vm.configsRsvp.limit_adults_qty - 1) track by $index -->
        <option ng-repeat="(key, value) in [].constructor(vm.configsRsvp.limit_adults_qty - 1) track by $index" ng-value="$index + 2" ng-bind="$index + 2" value="9" class="ng-binding ng-scope">9</option>
        <!-- end ngRepeat: (key, value) in [].constructor(vm.configsRsvp.limit_adults_qty - 1) track by $index -->
        <option ng-repeat="(key, value) in [].constructor(vm.configsRsvp.limit_adults_qty - 1) track by $index" ng-value="$index + 2" ng-bind="$index + 2" value="10" class="ng-binding ng-scope">10</option>
        <!-- end ngRepeat: (key, value) in [].constructor(vm.configsRsvp.limit_adults_qty - 1) track by $index -->
      </select>
      <span class="help-block ng-binding ng-hide" ng-bind="vm.errors.rsvp_qtd_adultos" ng-show="vm.errors.rsvp_qtd_adultos"></span>
    </div>
  </div>
  <!-- ngRepeat: adult in [].constructor(vm.rsvp.amount_adults - 1) track by $index -->
  <!-- ngIf: vm.configsRsvp.limit_children_qty -->
  <div ng-if="vm.configsRsvp.limit_children_qty" class="form-group form-group-qtd ng-scope" ng-class="{'has-error': vm.errors.rsvp_qtd_criancas || (vm.form_rsvp.$dirty &amp;&amp; vm.form_rsvp.qtd_criancas.$invalid)}">
    <label class="col-xs-12 col-sm-5 col-md-3 control-label" for="qtd_criancas"> Quantidade de crianças </label>
    <div class="col-xs-12 col-sm-7">
      <select class="form-control qtd ng-pristine ng-valid ng-valid-required" name="qtd_criancas" required="" ng-model="vm.rsvp.amount_children">
        <option ng-selected="" ng-value="0" value="0">0</option>
        <!-- ngRepeat: value in [].constructor(vm.configsRsvp.limit_children_qty) track by $index -->
        <option ng-repeat="value in [].constructor(vm.configsRsvp.limit_children_qty) track by $index" ng-value="$index + 1" ng-bind="$index + 1" ng-selected="$index + 1 == 0" value="1" class="ng-binding ng-scope">1</option>
        <!-- end ngRepeat: value in [].constructor(vm.configsRsvp.limit_children_qty) track by $index -->
        <option ng-repeat="value in [].constructor(vm.configsRsvp.limit_children_qty) track by $index" ng-value="$index + 1" ng-bind="$index + 1" ng-selected="$index + 1 == 0" value="2" class="ng-binding ng-scope">2</option>
        <!-- end ngRepeat: value in [].constructor(vm.configsRsvp.limit_children_qty) track by $index -->
        <option ng-repeat="value in [].constructor(vm.configsRsvp.limit_children_qty) track by $index" ng-value="$index + 1" ng-bind="$index + 1" ng-selected="$index + 1 == 0" value="3" class="ng-binding ng-scope">3</option>
        <!-- end ngRepeat: value in [].constructor(vm.configsRsvp.limit_children_qty) track by $index -->
        <option ng-repeat="value in [].constructor(vm.configsRsvp.limit_children_qty) track by $index" ng-value="$index + 1" ng-bind="$index + 1" ng-selected="$index + 1 == 0" value="4" class="ng-binding ng-scope">4</option>
        <!-- end ngRepeat: value in [].constructor(vm.configsRsvp.limit_children_qty) track by $index -->
        <option ng-repeat="value in [].constructor(vm.configsRsvp.limit_children_qty) track by $index" ng-value="$index + 1" ng-bind="$index + 1" ng-selected="$index + 1 == 0" value="5" class="ng-binding ng-scope">5</option>
        <!-- end ngRepeat: value in [].constructor(vm.configsRsvp.limit_children_qty) track by $index -->
        <option ng-repeat="value in [].constructor(vm.configsRsvp.limit_children_qty) track by $index" ng-value="$index + 1" ng-bind="$index + 1" ng-selected="$index + 1 == 0" value="6" class="ng-binding ng-scope">6</option>
        <!-- end ngRepeat: value in [].constructor(vm.configsRsvp.limit_children_qty) track by $index -->
        <option ng-repeat="value in [].constructor(vm.configsRsvp.limit_children_qty) track by $index" ng-value="$index + 1" ng-bind="$index + 1" ng-selected="$index + 1 == 0" value="7" class="ng-binding ng-scope">7</option>
        <!-- end ngRepeat: value in [].constructor(vm.configsRsvp.limit_children_qty) track by $index -->
        <option ng-repeat="value in [].constructor(vm.configsRsvp.limit_children_qty) track by $index" ng-value="$index + 1" ng-bind="$index + 1" ng-selected="$index + 1 == 0" value="8" class="ng-binding ng-scope">8</option>
        <!-- end ngRepeat: value in [].constructor(vm.configsRsvp.limit_children_qty) track by $index -->
        <option ng-repeat="value in [].constructor(vm.configsRsvp.limit_children_qty) track by $index" ng-value="$index + 1" ng-bind="$index + 1" ng-selected="$index + 1 == 0" value="9" class="ng-binding ng-scope">9</option>
        <!-- end ngRepeat: value in [].constructor(vm.configsRsvp.limit_children_qty) track by $index -->
        <option ng-repeat="value in [].constructor(vm.configsRsvp.limit_children_qty) track by $index" ng-value="$index + 1" ng-bind="$index + 1" ng-selected="$index + 1 == 0" value="10" class="ng-binding ng-scope">10</option>
        <!-- end ngRepeat: value in [].constructor(vm.configsRsvp.limit_children_qty) track by $index -->
      </select>
      <span class="help-block ng-binding ng-hide" ng-bind="vm.errors.rsvp_qtd_criancas" ng-show="vm.errors.rsvp_qtd_criancas"></span>
    </div>
  </div><!-- end ngIf: vm.configsRsvp.limit_children_qty -->
  <!-- ngRepeat: children in [].constructor(vm.rsvp.amount_children - 0) track by $index -->
  <div class="form-group" ng-class="{'has-error': vm.errors.rsvp_email || vm.form_rsvp.email.$error.email || (vm.form_rsvp.$dirty &amp;&amp; vm.rsvp.email.$invalid)}">
    <label class="col-xs-12 col-sm-5 col-md-3 control-label" for="email">E-mail<br><span class="control-label-subtitle">Você receberá a confirmação de presença neste e-mail.</span></label>
    <div class="col-xs-12 col-sm-7 col-md-7">
      <input class="form-control ng-pristine ng-valid-email ng-invalid ng-invalid-required" name="email" maxlength="100" placeholder="exemplo@email.com" ng-model="vm.rsvp.email" required="" type="email" ng-click="vm.captchaRsvp()">
      <span class="help-block ng-binding ng-hide" ng-bind="vm.errors.rsvp_email" ng-show="vm.errors.rsvp_email"></span>
    </div>
  </div>
  <!-- ngIf: vm.configsRsvp.require_phone -->
  <div ng-if="vm.configsRsvp.require_phone" class="form-group ng-scope" ng-class="{'has-error': vm.errors.rsvp_phone || (vm.form_rsvp.$dirty &amp;&amp; vm.rsvp.phone.$invalid)}">
    <label class="col-xs-12 col-sm-5 col-md-3 control-label" for="phone">Telefone para contato</label>
    <div class="col-xs-12 col-sm-7 col-md-7">
      <input class="form-control phone-with-ddd ng-pristine ng-invalid ng-invalid-required" name="phone" maxlength="60" ng-model="vm.rsvp.phone" placeholder="(11) 99999-9999" required="" type="tel" ng-click="vm.captchaRsvp()">
      <span class="help-block ng-binding ng-hide" ng-bind="vm.errors.rsvp_phone" ng-show="vm.errors.rsvp_phone"></span>
    </div>
  </div><!-- end ngIf: vm.configsRsvp.require_phone -->
  <!-- ngIf: vm.configsRsvp.show_obs -->
  <div ng-if="vm.configsRsvp.show_obs" class="form-group ng-scope" ng-class="{'has-error': vm.errors.rsvp_obs || (vm.form_rsvp.$dirty &amp;&amp; vm.form_rsvp.obs.$invalid)}">
    <label class="col-xs-12 col-sm-5 col-md-3 control-label" for="obs">Observações</label>
    <div class="col-xs-12 col-sm-7">
      <textarea class="form-control ng-pristine ng-valid" name="obs" maxlength="160" ng-model="vm.rsvp.obs" rows="2" type="text">                </textarea>
      <span class="help-block ng-binding ng-hide" ng-bind="vm.errors.rsvp_obs" ng-show="vm.errors.rsvp_obs"></span>
    </div>
  </div><!-- end ngIf: vm.configsRsvp.show_obs -->
  <div class="form-group">
    <label class="col-xs-12 col-sm-5 col-md-3 control-label"></label>
    <div class="col-xs-12 col-sm-7" style="position: relative;">
      <div style="display: flex;justify-content: center;align-items: center;">
        <input required="" oninvalid="setCustomValidity('Para prosseguir com a sua confirmação de presença é necessário aceitar os termos de uso e serviços do Casar.com')" oninput="setCustomValidity('')" style="margin-right: 8px;margin-top: 0;"
          name="use_terms" ng-model="vm.rsvp.use_terms" type="checkbox" class="ng-pristine ng-invalid ng-invalid-required">
        <p style="margin-bottom: 0;" class="use-terms">Declaro que tive acesso, li e concordo com os <a href="https://www.casar.com/termos-de-uso/" target="_blank">Termos de uso</a> e
          <a href="https://www.casar.com/politica-de-privacidade/" target="_blank">Política de Privacidade do Casar.com</a></p>
      </div>
    </div>
  </div>
  <div class="form-group">
    <label class="col-xs-12 col-sm-5 col-md-3 control-label"></label>
    <div class="col-xs-12 col-sm-7 col-md-7">
      <p class="text-center text-danger ng-binding ng-hide" ng-bind="vm.errors._main" ng-show="vm.errors._main"></p>
      <div id="rsvpCaptcha"></div>
      <p class="text-danger ng-binding ng-hide" ng-bind="vm.errors.rsvp_token" ng-show="vm.errors.rsvp_token"></p>
    </div>
  </div>
  <div class="form-group form-group-submit">
    <div class="col-xs-12 text-center">
      <input class="btn btn-primary btn-no-js sdn-btn-primario" ng-disabled="main.nav.isLoading()" type="submit" value="Confirmar presença">
    </div>
  </div>
</form>

Name: vm.form_presentePOST

<form class="form_presente ng-pristine ng-invalid ng-invalid-required" method="post" name="vm.form_presente" ng-hide="vm.cart.pagto_url">
  <p class="text-danger ng-binding ng-hide" ng-bind="vm.errors._main" ng-show="vm.errors._main"></p>
  <p class="text-danger ng-binding ng-hide" ng-bind="vm.errors.presente" ng-show="vm.errors.presente"></p>
  <div class="form-group" ng-class="{'has-error': vm.errors.presente_comprar_nome || vm.errors.guest_name_required || (vm.form_presente.$dirty &amp;&amp; vm.form_presente.nome.$invalid)}">
    <label class="" for="nome">Insira seu nome</label>
    <input class="form-control ng-pristine ng-invalid ng-invalid-required" name="nome" ng-class="{'shake animated': vm.errors.guest_name_required_alert}" maxlength="60" ng-model="vm.cart.guest.nome" required="" type="text">
    <span class="help-block ng-binding ng-hide" ng-bind="vm.errors.presente_comprar_nome" ng-show="vm.errors.presente_comprar_nome"></span>
    <span class="help-block ng-hide" ng-show="vm.errors.guest_name_required"> Informe seu nome para os noivos </span>
  </div>
  <div class="form-group"
    ng-class="{'has-error': vm.errors.presente_comprar_msg || vm.errors.presente_comprar_msg_emoji || vm.errors.presente_comprar_msg_linhas || vm.errors.guest_msg_required || (vm.form_presente.$dirty &amp;&amp; vm.form_presente.msg.$invalid)}">
    <label class="label-pre-cart2" for="msg">Personalize a sua mensagem <br>
      <!-- ngIf: vm.cart.postcard.send && vm.errors.presente_comprar_msg_emoji -->
      <!-- ngIf: vm.cart.postcard.send && vm.errors.presente_comprar_msg_linhas -->
    </label>
    <textarea id="msgCart" ng-keyup="vm.countdownCharacters($event);vm.checkSpecialCharacters($event);vm.checkBreaklines($event)" class="form-control ng-pristine ng-valid" name="msg" ng-class="{'shake animated': vm.errors.guest_msg_required_alert}"
      maxlength="400" ng-model="vm.cart.guest.msg" rows="7" placeholder="Esta mensagem será impressa no verso do cartão de sua escolha e o casal receberá esta lembrança em casa.">                </textarea>
    <p class="countdown-cart" ng-class="{'countdown-cart-has-error': vm.cart.maxCharacters }">Caracteres: <span ng-bind="vm.cart.characters" class="ng-binding">0</span>/400</p>
    <span class="help-block ng-binding ng-hide" ng-bind="vm.errors.presente_comprar_msg" ng-show="vm.errors.presente_comprar_msg"></span>
    <span class="help-block ng-hide" ng-show="vm.errors.guest_msg_required"> Para enviar cartão físico é preciso inserir a mensagem </span>
  </div>
</form>

Text Content

Menu principal
Toggle navigation
 * Inspirações
   * Home
   * Casamentos Reais
   * Organização
   * Decoração de Casamento
   * Vestidos de Noiva
   * Chá de Panela
   * Lua de Mel
   * Dicas para Noivas
 * Fornecedores
 * Evento Casar.com
   * Home
   * O Evento
   * Edições
   * Quero Expor
   * Ingressos
   * Clippings
   * Contato
 * Site de Casamento
   * Faça seu Site
   * Lista de Casamento
   * Recursos
   * Planos
   * Exemplos Reais
   * Encontre um casamento

 * Entrar
 * Criar site

Criar site
Fechar
V I
Victoria & Ivo
 * Home
 * Como chegar
 * Hospedagem
 * Programação
 * Confirme sua presença (RSVP)
 * Beleza
 * Lista de presentes


 * Entrar
 * Criar site

Criar site
Carregando
Processando pagamento, pode demorar alguns segundos
Casamento Victoria e Ivo
30/11/2024
 * Home
 * Como chegar
 * Hospedagem
 * Programação
 * Confirme sua presença (RSVP)
 * Beleza
 * Lista de presentes


A Costa do Sauípe fica localizada aproximadamente à 80 km de Salvador.
 
O aeroporto mais próximos é o da cidade de Salvador.
 
 


CONTAGEM REGRESSIVA

269
dias
02
horas
16
minutos
56
segundos



PROGRAMAÇÃO





CONFIRME SUA PRESENÇA

Sua resposta foi registrada com sucesso
Nome completo

Você irá ao evento?
sim não
Quantidade de adultos incluindo você
1 2345678910
Quantidade de crianças
0 12345678910
E-mail
Você receberá a confirmação de presença neste e-mail.

Telefone para contato

Observações


Declaro que tive acesso, li e concordo com os Termos de uso e Política de
Privacidade do Casar.com






TUDO CERTO! JÁ ENVIAMOS A SUA RESPOSTA 😉

Conta pra gente! Você irá se casar em breve?

Não Sim, irei!



PARABÉNS!
POR AQUI ADORAMOS CELEBRAR O AMOR! ❤️

Que tal ter um site de casamento para te ajudar nessa jornada?

Aqui no Casar.com, você conta com diversos recursos para facilitar a organização
do grande dia:

Lista de presentes personalizada

Confirmação de presença exclusiva

Comunicação com os convidados

Criar meu site grátis
Não quero criar agora



PRESENTEIE AQUELES AMIGOS QUE IRÃO CASAR COM UM SITE INCRÍVEL!

Temos diversos recursos que irão ajudá-los na organização do grande dia! E o
melhor? Nosso site é gratuito!

Confira alguns benefícios:

Lista de presentes personalizada

Confirmação de presença exclusiva

Comunicação com os convidados

Indicar por WhatsApp
Não quero indicar agora




LISTA DE PRESENTES

A sua presença é o presente mais importante! No entanto, se desejar, ficaríamos
gratos com uma contribuição para o Projeto Tamar - que tem operações

É preciso habilitar javascript para o correto funcionamento dessa página
Você pode escolher até três presentes por compra.

CARRINHO VAZIO VER CARRINHO (0  PRESENTESPRESENTE)
ORDENAR LISTA POR:
A-ZMENOR PREÇOMAIOR PREÇO
ORDENAR LISTA POR:
A-ZMENOR PREÇOMAIOR PREÇO

   

 * Adega 28 Garrafas Termo
   
   R$ 1.975,86
   
   Presentear

   

 * Adega 33 Garrafas Compressor
   
   R$ 3.527,21
   
   Presentear

   

 * Aparelho de Jantar Polka Dots 20 Peças
   
   R$ 369,37
   
   Presentear

   

 * Aspirador de Pó Ciclônico 2 em 1 Vertical 1200W
   
   R$ 249,71
   
   Presentear

   

 * Aspirador Robo Keep Clean
   
   R$ 1.508,69
   
   Presentear

   

 * Assadeira Retangular Alumínio Ecolon 43 cm x 21 cm
   
   R$ 269,48
   
   Presentear

   

 * Batedeira Planetária Bowl 750W
   
   R$ 515,03
   
   Presentear

   

 * Batedeira Stand Mixer Bowl Inox
   
   R$ 2.601,19
   
   Presentear

   

 * Bomboniere Francis 130 ml
   
   R$ 52,02
   
   Presentear

   

 * Cafeteira citiz 1260W
   
   R$ 717,93
   
   Presentear

   

 * Cafeteira Expresso Modo S04
   
   R$ 479,66
   
   Presentear

   

 * Café da manhã no meio da savana após safári
   
   R$ 572,26
   
   Presentear

   

 * Cesta de pique nique safári
   
   R$ 135,26
   
   Presentear

   

 * Chaleira Elétrica Gourmand Gris 1,8L
   
   R$ 192,49
   
   Presentear

   

 * Champanhe para brindar a lua de mel
   
   R$ 208,09
   
   Presentear

   

 * Day pass para passeio em Franschhoek
   
   R$ 416,19
   
   Presentear

   

 * Degustação de queijos e vinhos
   
   R$ 176,88
   
   Presentear

   

 * Escorredor de Louças Inox Madri Cromado
   
   R$ 279,88
   
   Presentear

   

 * Espremedor de Frutas Chrome 500 ml Automático
   
   R$ 218,50
   
   Presentear

   

 * Faqueiro Bellagio 24 peças - Brinox
   
   R$ 138,38
   
   Presentear

   

 * Faqueiro Berna 30 Peças
   
   R$ 780,36
   
   Presentear

   

Ver mais presentes


MEU CARRINHO

SEU CARRINHO ESTÁ VAZIO

Retornar a lista de presentes


MEU CARRINHO

Você pode escolher até três presentes por compra.

DESCRIÇÃO DO PRESENTE

VALOR

Total  R$ 0,00

Adicionar mais itens Continuar compra


RESUMO DA SUA COMPRA

Valor Total dos Presentes
R$ 0,00

Total
R$ 0,00



Deixe sua mensagem de carinho

Insira seu nome Informe seu nome para os noivos
Personalize a sua mensagem


Caracteres: 0/400

Para enviar cartão físico é preciso inserir a mensagem

AGUARDE, VOCÊ SERÁ REDIRECIONADO PARA UM AMBIENTE SEGURO DO PAYPAL PARA
FINALIZAR SEU PAGAMENTO.


Não gostaria de enviar um cartão

Voltar para o carrinho Concluir compra