Free standard shipping over 99 EUR
Pesquisar

Contacte-nos

1

Topic

In order to better assist you, please select a topic

Selecione o assunto/tema *
Online Orders
Swarovski Club
Delivery
Exchange
Warranty
Repair
Product Information
Promotions
Payment
SCS membership
Website Issue
Data Privacy
Other
$(this).closest('#contactTopicFormConfigWrapper').find('.js-contactTopicFormConfig') .formValidation( { autoFocus: false, framework: 'bootstrap', icon: { valid: null, invalid: null, validating: null }, fields: { 'values[contactTopicFormDefinition_contactTopic]': { trigger: 'change', validators: { notEmpty: { message: 'Selecione o assunto\/tema', message_en: 'Selecione o assunto\/tema' } } } } } ) .on('success.field.fv', function() { /* note: we need to check if there is an error in the form, as the plugin does a validation on field level. Validating the whole form on blur of a field is no option, as the customer does not want to see error messages on all fields when entering one field. In case of an error on at least one field we disable the submit button manually */ var $form = $(this).closest('form'); if ($form.find('.form-group.has-error').length > 0) { var $button = $form.find('.js-button'); if (!$button.hasClass('disabled')) { $button.addClass('disabled'); } } }) .on('err.field.fv', function(e, data) { /* * On error field validation, enable submit button. * Source: https://old.formvalidation.io/examples/enabling-submit-button/ */ data.fv.disableSubmitButtons(false); $(data.element).attr('aria-invalid', 'true'); // Get error messages var messages = data.fv.getMessages(data.element); // ✅ Announce error to screen readers if ($(data.element).closest('.js-advent-calendar-container').length > 0 && messages.length > 0 && window.ACC && window.ACC.adventcalendar && typeof ACC.adventcalendar.adventcalendarUpdateErrorSpanAttributes === 'function') { const selectedField = data.element.attr('id'); ACC.adventcalendar.adventcalendarUpdateErrorSpanAttributes(selectedField, true); ACC.adventcalendar.announceToScreenReader('Error: ' + messages[0]); } if(data.element.closest('.form-combo-molecule').length){ /* Get the messages of field */ var messages = data.fv.getMessages(data.element); /* Get the error message content of the field */ var errorContent = data.element.closest('.form-combo-molecule').find('.errors'); /* Get the hidden error message of the field */ var errorField = errorContent.find('.swa-form-input__error-message[data-field="' + data.field + '"][style="display: none;"]'); /* Loop over the messages */ for (var i in messages) { if (errorField[1] == undefined) { var newErrorContainer = document.createElement("small"); $(newErrorContainer).attr("class", "swa-form-input__error-message swa-headline-sans--supertiny"); $(newErrorContainer).attr("data-field", data.field); $(newErrorContainer).attr("data-fv-validator", "callback"); $(newErrorContainer).attr("data-fv-for", $(data.element[0]).attr("name") ); $(newErrorContainer).attr("data-fv-result", "INVALID"); $(newErrorContainer).attr("data-tracked", "true"); $(newErrorContainer).html(messages[i]); if (errorContent.text().includes(messages[i])) { $(newErrorContainer).hide(); } errorContent.append(newErrorContainer); } } } }) .on('success.field.fv', function(e, data) { /* * On success field validation, enable submit button. * Source: https://old.formvalidation.io/examples/enabling-submit-button/ */ if ($(data.element).closest('.js-advent-calendar-container').length > 0 && window.ACC && window.ACC.adventcalendar && typeof ACC.adventcalendar.adventcalendarUpdateErrorSpanAttributes === 'function') { const selectedField = data.element.attr('id'); ACC.adventcalendar.adventcalendarUpdateErrorSpanAttributes(selectedField, false); } data.fv.disableSubmitButtons(false); // ✅ Remove aria-invalid on field $(data.element).attr('aria-invalid', 'false'); /* Remove the field messages */ $errorContent = data.element.closest('.form-combo-molecule').find('.errors'); $errorContent.find('.swa-form-input__error-message[data-field="' + data.field + '"]').remove(); $errorContent.find('.swa-form-input__error-message[data-fv-result="INVALID"]').removeAttr("style"); }) .on('success.form.fv', function() { var formId = 'ShortContactTopic'; if (!formId || formId === 'cfRequest' || formId === 'cfResponse') { formId = 'contactTopicFormDefinition'; } ACC.tracking.pushFormSubmit(formId); }); var replaceDatePatternWithValue = function(mandatory, fieldConfigCode, fieldConfigPattern) { var date = fieldConfigPattern.toUpperCase(); var year = $("#" + fieldConfigCode + "_year").val(); var month = $("#" + fieldConfigCode + "_month").val(); var day = $("#" + fieldConfigCode + "_day").val(); date = date.replace(/[Y]+/, year); date = date.replace(/[M]+/, month); date = date.replace(/[D]+/, day); var hiddenDateField = $('.js-' + fieldConfigCode + '_hidden'); if (mandatory) { hiddenDateField.val(date); } else { hiddenDateField.val(date == "" ? "" : date); } }; var triggerFormValidation = function(fieldId, mandatory, fieldCode, dateFormat) { replaceDatePatternWithValue(mandatory, fieldCode, dateFormat); $('.js-fieldCode').formValidation('revalidateField', 'values[fieldCode_'+ fieldId + ']'); }; var removeDateMoleculeError = function(molecule) { if(molecule.hasClass('has-error')){ molecule.removeClass('has-error'); molecule.find('.help-block').find('span').remove(); } };
2

Assunto

Selecione um dos seguintes assuntos

Selecione o assunto/tema *
Qual é a hiperligação de rastreamento da minha encomenda?
Um artigo da minha encomenda chegou danificado
Um artigo da minha encomenda não foi enviado
Pode alterar o meu endereço de entrega?
Como poderei enviar a minha encomenda para outro país?
Outro
O meu artigo pode ser reparado?
Qual o estado da minha reparação?
Quanto custa uma reparação?
Porque devo deslocar-me a uma loja para a reparação de um artigo?
Outro
Poderia indicar o tamanho do produto?
Onde está disponível este produto?
Quais as opções de cores disponíveis?
Como posso pedir um produto Swarovski Created Diamonds feito sob encomenda?
outro
O meu endereço postal não é reconhecido como um endereço válido
Não consigo concluir o processo de pagamento da compra
Posso repor a palavra-passe da minha conta?
Não consigo iniciar sessão na minha conta
Outro
Outro
Pedido de Acesso do Titular dos Dados
Direito ao apagamento (‘direito a ser esquecido’)
Reclamações
Como renovo a minha subscrição?
Como me torno sócio SCS?
Quando irei receber o meu pacote de subscrição?
Outro
Como cancelo a minha subscrição da newsletter do Swarovski Club?
Por que motivo continuo a receber e-mails da Swarovski depois de cancelar a subscrição da newsletter?
O meu cupão Swarovski Club não funciona
O meu cupão de desconto Swarovski Club pode ser alargado?
O meu cupão de desconto Swarovski Club pode ser usado em artigos em saldo?
Como utilizo o meu cupão de oferta de aniversário?
Outro
O meu produto está coberto pela garantia?
Qual é a vossa política de garantia?
Outro
Posso trocar um produto da minha encomenda online?
Posso trocar um produto comprado numa loja de outro país?
Posso trocar a minha compra online numa loja?
Outro
Por que motivo o meu cartão presente eletrónico não é aceite online?
Posso usar mais de 1 cartão presente eletrónico para pagamento?
Como faço para pagar uma compra online com um cartão presente eletrónico?
Por que motivo o meu pagamento foi rejeitado?
Por que motivo o meu pagamento foi reembolsado?
Outro
Poderia dar informações sobre a promoção atual?
Pode estender a promoção?
Por que motivo a minha compra não é elegível para a promoção?
Outro
Poderia reenviar a confirmação da minha encomenda?
Qual é o estado da minha encomenda online?
Posso cancelar a minha encomenda online completa?
Posso cancelar parte da minha encomenda online?
Pode alterar o meu endereço de faturação?
Como posso devolver a minha encomenda online?
Qual é a vossa política de devoluções online?
Qual é o estado do meu reembolso online?
Outro
$(this).closest('#contactSubjectFormConfigWrapper').find('.js-contactSubjectFormConfig') .formValidation( { autoFocus: false, framework: 'bootstrap', icon: { valid: null, invalid: null, validating: null }, fields: { 'values[contactSubjectFormDefinition_contactSubject]': { trigger: 'change', validators: { notEmpty: { message: 'Selecione o assunto\/tema', message_en: 'Selecione o assunto\/tema' } } } } } ) .on('success.field.fv', function() { /* note: we need to check if there is an error in the form, as the plugin does a validation on field level. Validating the whole form on blur of a field is no option, as the customer does not want to see error messages on all fields when entering one field. In case of an error on at least one field we disable the submit button manually */ var $form = $(this).closest('form'); if ($form.find('.form-group.has-error').length > 0) { var $button = $form.find('.js-button'); if (!$button.hasClass('disabled')) { $button.addClass('disabled'); } } }) .on('err.field.fv', function(e, data) { /* * On error field validation, enable submit button. * Source: https://old.formvalidation.io/examples/enabling-submit-button/ */ data.fv.disableSubmitButtons(false); $(data.element).attr('aria-invalid', 'true'); // Get error messages var messages = data.fv.getMessages(data.element); // ✅ Announce error to screen readers if ($(data.element).closest('.js-advent-calendar-container').length > 0 && messages.length > 0 && window.ACC && window.ACC.adventcalendar && typeof ACC.adventcalendar.adventcalendarUpdateErrorSpanAttributes === 'function') { const selectedField = data.element.attr('id'); ACC.adventcalendar.adventcalendarUpdateErrorSpanAttributes(selectedField, true); ACC.adventcalendar.announceToScreenReader('Error: ' + messages[0]); } if(data.element.closest('.form-combo-molecule').length){ /* Get the messages of field */ var messages = data.fv.getMessages(data.element); /* Get the error message content of the field */ var errorContent = data.element.closest('.form-combo-molecule').find('.errors'); /* Get the hidden error message of the field */ var errorField = errorContent.find('.swa-form-input__error-message[data-field="' + data.field + '"][style="display: none;"]'); /* Loop over the messages */ for (var i in messages) { if (errorField[1] == undefined) { var newErrorContainer = document.createElement("small"); $(newErrorContainer).attr("class", "swa-form-input__error-message swa-headline-sans--supertiny"); $(newErrorContainer).attr("data-field", data.field); $(newErrorContainer).attr("data-fv-validator", "callback"); $(newErrorContainer).attr("data-fv-for", $(data.element[0]).attr("name") ); $(newErrorContainer).attr("data-fv-result", "INVALID"); $(newErrorContainer).attr("data-tracked", "true"); $(newErrorContainer).html(messages[i]); if (errorContent.text().includes(messages[i])) { $(newErrorContainer).hide(); } errorContent.append(newErrorContainer); } } } }) .on('success.field.fv', function(e, data) { /* * On success field validation, enable submit button. * Source: https://old.formvalidation.io/examples/enabling-submit-button/ */ if ($(data.element).closest('.js-advent-calendar-container').length > 0 && window.ACC && window.ACC.adventcalendar && typeof ACC.adventcalendar.adventcalendarUpdateErrorSpanAttributes === 'function') { const selectedField = data.element.attr('id'); ACC.adventcalendar.adventcalendarUpdateErrorSpanAttributes(selectedField, false); } data.fv.disableSubmitButtons(false); // ✅ Remove aria-invalid on field $(data.element).attr('aria-invalid', 'false'); /* Remove the field messages */ $errorContent = data.element.closest('.form-combo-molecule').find('.errors'); $errorContent.find('.swa-form-input__error-message[data-field="' + data.field + '"]').remove(); $errorContent.find('.swa-form-input__error-message[data-fv-result="INVALID"]').removeAttr("style"); }) .on('success.form.fv', function() { var formId = 'ShortContactSubject'; if (!formId || formId === 'cfRequest' || formId === 'cfResponse') { formId = 'contactSubjectFormDefinition'; } ACC.tracking.pushFormSubmit(formId); }); var replaceDatePatternWithValue = function(mandatory, fieldConfigCode, fieldConfigPattern) { var date = fieldConfigPattern.toUpperCase(); var year = $("#" + fieldConfigCode + "_year").val(); var month = $("#" + fieldConfigCode + "_month").val(); var day = $("#" + fieldConfigCode + "_day").val(); date = date.replace(/[Y]+/, year); date = date.replace(/[M]+/, month); date = date.replace(/[D]+/, day); var hiddenDateField = $('.js-' + fieldConfigCode + '_hidden'); if (mandatory) { hiddenDateField.val(date); } else { hiddenDateField.val(date == "" ? "" : date); } }; var triggerFormValidation = function(fieldId, mandatory, fieldCode, dateFormat) { replaceDatePatternWithValue(mandatory, fieldCode, dateFormat); $('.js-fieldCode').formValidation('revalidateField', 'values[fieldCode_'+ fieldId + ']'); }; var removeDateMoleculeError = function(molecule) { if(molecule.hasClass('has-error')){ molecule.removeClass('has-error'); molecule.find('.help-block').find('span').remove(); } };
Assunto *
$(this).closest('#contactSubjectOtherFormConfigWrapper').find('.js-contactSubjectOtherFormConfig') .formValidation( { autoFocus: false, framework: 'bootstrap', icon: { valid: null, invalid: null, validating: null }, fields: { 'values[contactSubjectOtherFormDefinition_contactSubjectTxt]': { trigger: 'keyup', validators: { notEmpty: { message: 'Introduza o assunto', message_en: 'Introduza o assunto' }, stringLength: { message: 'Este campo deve ter entre 0 e 40 caracteres', message_en: 'The number of characters for this field must be between 0 and 40', min: 0 , max: 40 }, } } } } ) .on('success.field.fv', function() { /* note: we need to check if there is an error in the form, as the plugin does a validation on field level. Validating the whole form on blur of a field is no option, as the customer does not want to see error messages on all fields when entering one field. In case of an error on at least one field we disable the submit button manually */ var $form = $(this).closest('form'); if ($form.find('.form-group.has-error').length > 0) { var $button = $form.find('.js-button'); if (!$button.hasClass('disabled')) { $button.addClass('disabled'); } } }) .on('err.field.fv', function(e, data) { /* * On error field validation, enable submit button. * Source: https://old.formvalidation.io/examples/enabling-submit-button/ */ data.fv.disableSubmitButtons(false); $(data.element).attr('aria-invalid', 'true'); // Get error messages var messages = data.fv.getMessages(data.element); // ✅ Announce error to screen readers if ($(data.element).closest('.js-advent-calendar-container').length > 0 && messages.length > 0 && window.ACC && window.ACC.adventcalendar && typeof ACC.adventcalendar.adventcalendarUpdateErrorSpanAttributes === 'function') { const selectedField = data.element.attr('id'); ACC.adventcalendar.adventcalendarUpdateErrorSpanAttributes(selectedField, true); ACC.adventcalendar.announceToScreenReader('Error: ' + messages[0]); } if(data.element.closest('.form-combo-molecule').length){ /* Get the messages of field */ var messages = data.fv.getMessages(data.element); /* Get the error message content of the field */ var errorContent = data.element.closest('.form-combo-molecule').find('.errors'); /* Get the hidden error message of the field */ var errorField = errorContent.find('.swa-form-input__error-message[data-field="' + data.field + '"][style="display: none;"]'); /* Loop over the messages */ for (var i in messages) { if (errorField[1] == undefined) { var newErrorContainer = document.createElement("small"); $(newErrorContainer).attr("class", "swa-form-input__error-message swa-headline-sans--supertiny"); $(newErrorContainer).attr("data-field", data.field); $(newErrorContainer).attr("data-fv-validator", "callback"); $(newErrorContainer).attr("data-fv-for", $(data.element[0]).attr("name") ); $(newErrorContainer).attr("data-fv-result", "INVALID"); $(newErrorContainer).attr("data-tracked", "true"); $(newErrorContainer).html(messages[i]); if (errorContent.text().includes(messages[i])) { $(newErrorContainer).hide(); } errorContent.append(newErrorContainer); } } } }) .on('success.field.fv', function(e, data) { /* * On success field validation, enable submit button. * Source: https://old.formvalidation.io/examples/enabling-submit-button/ */ if ($(data.element).closest('.js-advent-calendar-container').length > 0 && window.ACC && window.ACC.adventcalendar && typeof ACC.adventcalendar.adventcalendarUpdateErrorSpanAttributes === 'function') { const selectedField = data.element.attr('id'); ACC.adventcalendar.adventcalendarUpdateErrorSpanAttributes(selectedField, false); } data.fv.disableSubmitButtons(false); // ✅ Remove aria-invalid on field $(data.element).attr('aria-invalid', 'false'); /* Remove the field messages */ $errorContent = data.element.closest('.form-combo-molecule').find('.errors'); $errorContent.find('.swa-form-input__error-message[data-field="' + data.field + '"]').remove(); $errorContent.find('.swa-form-input__error-message[data-fv-result="INVALID"]').removeAttr("style"); }) .on('success.form.fv', function() { var formId = 'contactSubjectOther'; if (!formId || formId === 'cfRequest' || formId === 'cfResponse') { formId = 'contactSubjectOtherFormDefinition'; } ACC.tracking.pushFormSubmit(formId); }); var replaceDatePatternWithValue = function(mandatory, fieldConfigCode, fieldConfigPattern) { var date = fieldConfigPattern.toUpperCase(); var year = $("#" + fieldConfigCode + "_year").val(); var month = $("#" + fieldConfigCode + "_month").val(); var day = $("#" + fieldConfigCode + "_day").val(); date = date.replace(/[Y]+/, year); date = date.replace(/[M]+/, month); date = date.replace(/[D]+/, day); var hiddenDateField = $('.js-' + fieldConfigCode + '_hidden'); if (mandatory) { hiddenDateField.val(date); } else { hiddenDateField.val(date == "" ? "" : date); } }; var triggerFormValidation = function(fieldId, mandatory, fieldCode, dateFormat) { replaceDatePatternWithValue(mandatory, fieldCode, dateFormat); $('.js-fieldCode').formValidation('revalidateField', 'values[fieldCode_'+ fieldId + ']'); }; var removeDateMoleculeError = function(molecule) { if(molecule.hasClass('has-error')){ molecule.removeClass('has-error'); molecule.find('.help-block').find('span').remove(); } };

{"didYouKnowLabel":"Sabia que:","product-size":["Para saber o seu tamanho ideal, utilize o nosso guia de tamanhos.","Para mais informações, consulte o nosso <a href="/s-swarovski-ring-size/" target="_blank" rel="noopener noreferrer">Guia de Tamanhos</a>."],"product-availability":["Para verificar a disponibilidade na loja, siga estes passos: <br/>1. Escolha o seu produto na nossa loja online. <br/>2. Na página de detalhes do produto, ao lado de “Adicionar ao carrinho,” selecione “Encontrar em loja,” depois clique em “Click & Collect: Verificar disponibilidade.” <br/>3. Introduza a sua localização atual ou preferida e veja as opções disponíveis.","Para mais informações, consulte as nossas <a href="/s-faq-order/?accordionID=CC-Overview_AE-product_availibility" target="_blank" rel="noopener noreferrer">FAQ</a>."],"product-colors":["Por favor use o Filtro de Cor na página de lista de produtos ou verifique as variações de cor na página de detalhes do produto para encontrar a correspondência perfeita."],"promotion-info":["A Swarovski realiza promoções ao longo do ano; para se manter atualizado, recomendamos inscrever-se na nossa newsletter."],"promotion-extension":["Nossas promoções sempre têm períodos de validade definidos e, assim que a data de término passa, os códigos de desconto deixam de funcionar automaticamente ou o preço padrão retorna. Os pedidos feitos antes do lançamento de uma promoção não podem ser alterados para aproveitar a nova promoção."],"promotion-quality":["Verifique os Termos & Condições da promoção para garantir que o seu artigo é elegível e confirme que a sua encomenda foi efetuada durante o período promocional.","Para mais detalhes, consulte as nossas <a href="/s-faq-order/?accordionID=CC-Overview_AE-purchase_qualify" target="_blank" rel="noopener noreferrer">FAQ</a>."],"order-resendOrderConfirmation":["Com certeza! Se você deseja uma atualização sobre seu pedido, visite <a href="/s-faq-orderstatus/Swarovski-Order-Status-FAQs/" target="_blank" rel="noopener noreferrer">Estado da encomenda</a>. Se você não souber o número do seu pedido, basta fornecer seu endereço de e-mail e reenviaremos a confirmação do pedido."],"order-orderStatus":["Pode facilmente verificar o estado da sua encomenda aqui <a href="/s-faq-orderstatus/Swarovski-Order-Status-FAQs/" target="_blank" rel="noopener noreferrer">Estado da encomenda</a>."],"order-cancelEntire":["Pode ser possível cancelar a sua encomenda dentro de aproximadamente 15 minutos após a receção da confirmação da encomenda.","Para mais informações, consulte as nossas <a href="/s-faq-order/?accordionID=CC-Overview_AE-cancel_order_new" target="_blank" rel="noopener noreferrer">FAQ</a>."],"order-cancelPartially":["Cancelamentos parciais não são possíveis, apenas cancelamentos completos do pedido em aproximadamente 15 minutos após a confirmação.","Veja <a href="/s-faq-order/?accordionID=CC-Overview_AE-cancel_order_new" target="_blank" rel="noopener noreferrer">FAQ</a> para mais detalhes."],"order-changeBillingAddress":["Não conseguimos alterar um endereço de cobrança."],"order-return":["Você pode seguir os passos descritos em nosso <a href="/s-faq-return/?accordionID=CC-Overview_AE-how-do-I-return-my-item" target="_blank" rel="noopener noreferrer">FAQ</a> para obter orientações detalhadas."],"order-returnPolicy":["Para mais informações sobre nossa política de devolução, clique aqui <a href="/s-faq-return/?accordionID=CC-Overview_AE-can-I-do-a-return" target="_blank" rel="noopener noreferrer">FAQ</a>"],"order-onlineRefundStatus":["As devoluções demoram cerca de 14 dias úteis. Receberá um email de confirmação assim que recebermos a sua devolução, e o reembolso pode demorar até 10 dias úteis a aparecer na sua conta.","Para mais detalhes, consulte as nossas <a href="/s-faq-return/?accordionID=CC-Purchase-Returns_AE-when-will-I-receive-my-refund" target="_blank" rel="noopener noreferrer">FAQ</a>."],"exchange-exchangeProduct":["Trocas não são possíveis. Por favor, devolva os artigos indesejados de acordo com a nossa política de devoluções e faça uma nova encomenda para o produto correto.","Para mais detalhes, consulte as nossas <a href="/s-faq-return/?accordionID=CC-Purchase-Returns_AE-exchange-purchase" target="_blank" rel="noopener noreferrer">FAQ</a>."],"exchange-exchangeInStore":["Você pode encontrar informações detalhadas em nosso <a href="/s-faq-return/?accordionID=CC-Purchase-Returns_AE-exchange-product" target="_blank" rel="noopener noreferrer">FAQ</a>."],"exchange-exchangeProductFromAnotherCountry":["Por várias razões, a Swarovski não tem uma política global de trocas ou reembolsos. Portanto, não podemos trocar, substituir ou reembolsar produtos comprados em outros países."],"delivery-tracking":["Você recebeu o link de rastreamento com sua confirmação de envio. Alternativamente, você pode verificar o progresso de sua remessa aqui: <a href="/s-faq-orderstatus/Swarovski-Order-Status-FAQs/" target="_blank" rel="noopener noreferrer">Estado da encomenda</a>."],"delivery-damagedItem":["Pedimos desculpas pelo inconveniente. Por favor, entre em contato com o nosso serviço de atendimento ao cliente e forneça fotos da caixa de envio e do produto danificado para que possamos encontrar uma solução para você."],"delivery-missingItem":["Pedimos desculpas pelo inconveniente. A caixa de envio foi violada? Por favor, entre em contato com o nosso serviço de atendimento ao cliente com fotos da caixa de envio, iremos investigar e encontrar uma solução para você."],"delivery-changeAddress":["Alterar o endereço ou a data de entrega pode não ser possível depois que a encomenda estiver em trânsito. Por favor use o portal online do nosso parceiro de entrega para gerir as opções de entrega.","Para mais detalhes, consulte as nossas <a href="/s-faq-shipping/Swarovski-Shipping-FAQs/?accordionID=CC-Overview_AE-delivery_address" target="_blank" rel="noopener noreferrer">FAQ</a>."],"delivery-changeCountry":["A entrega para outro país/região não é possível. Por favor, faça seu pedido na loja online do destino de entrega. Para alterar o país/região e idioma, clique no nome do país/região no menu de seleção."],"payment-electronicCard":["Os cartões-presente eletrônicos são inseridos na etapa de pagamento do checkout. Confirme se você está inserindo o número do cartão de 10 ou 16 dígitos corretamente. Certifique-se de que não está inserindo um código de desconto ou voucher.","Para mais informações, consulte aqui <a href="/s-faq-giftcard-voucher/Swarovski-Gift-Cards-Voucher-FAQs/?accordionID=CC-Purchase-Vouchers_AE-voucher-not-working" target="_blank" rel="noopener noreferrer">FAQ</a>"],"payment-multipleElectronicGiftCards":["Para pagar com vários cartões-presente, siga os passos para fundir os cartões-presente na fase de pagamento."],"payment-payWith":["Para resgatar seu cartão-presente, siga estas etapas fáceis descritas em nosso <a href="/s-faq-giftcard-voucher/Swarovski-Gift-Cards-Voucher-FAQs/?accordionID=CC-Purchase-Vouchers_AE-redeem-gift-card" target="_blank" rel="noopener noreferrer">FAQ</a>."],"payment-rejection":["Certifique-se de que seus dados pessoais e de pagamento estão consistentes. Para mais informações, consulte nossas <a href="/s-faq-payment/Swarovski-Payment-FAQs/?accordionID=CC-Purchase-Payment_AE-methods" target="_blank" rel="noopener noreferrer">FAQ</a>."],"website-unableToCheckout":["Por favor, verifique aqui antes de nos contatar <a href="/s-faq-order/?accordionID=CC-Purchase-Order_AE-website-issue" target="_blank" rel="noopener noreferrer">Problema no site FAQ</a>."],"website-resetPassword":["Por favor, use a função "esqueceu sua senha".","Para mais informações, por favor visite <a href="/s-faq-order/?accordionID=CC-Purchase-Order_AE-reset_pasword" target="_blank" rel="noopener noreferrer">FAQ</a>."],"website-unableToLogin":["Por favor, use a função "esqueceu sua senha".","Para mais informações, por favor visite <a href="/s-faq-order/?accordionID=CC-Purchase-Order_AE-reset_pasword" target="_blank" rel="noopener noreferrer">FAQ</a>."],"swarovskiclub-unsubscribeNewsletter":["Enviamos dois tipos de e-mails: boletins informativos com promoções e coleções, e atualizações de membros (recompensas, status ou alterações do programa). Para cancelar a inscrição em boletins, clique em "cancelar inscrição" na parte inferior do e-mail ou atualize suas configurações em "Minha conta" no Swarovski.com. Para parar todas as comunicações, incluindo recompensas, entre em contato com o Serviço de Atendimento ao Cliente para encerrar sua conta."],"swarovskiclub-emailAfterUnsubscribe":["Se você cancelou a inscrição em nosso boletim informativo, mas continua sendo membro do Swarovski Club, você ainda receberá e-mails sobre recompensas, status de nível ou alterações no programa. Para interromper isso, entre em contato com o Atendimento ao Cliente para fechar sua conta. Você também pode estar inscrito para atualizações de uma de nossas submarcas."],"swarovskiclub-voucherNotWorking":["Para mais detalhes, acesse nossa entrada no FAQ sobre como vincular sua associação ao clube e usar seu voucher de desconto <a href="/s-faq-club/?accordionID=CC-Membership-Swa-Club_AE-not-use-discount-voucher" target="_blank" rel="noopener noreferrer">FAQ</a>."],"swarovskiclub-extendedVoucher":["Os vouchers de desconto do Swarovski Club não podem ser estendidos. O período de validade está especificado nos Termos e Condições incluídos no e-mail de recompensa que você recebeu."],"swarovskiclub-saleItem":["Os vouchers de desconto do Swarovski Club não podem ser usados em itens em promoção. Para mais detalhes, consulte os Termos e Condições incluídos no e-mail de recompensa que você recebeu."],"swarovskiclub-birthdayGiftVoucher":["Você pode retirar seu presente na loja de sua preferência. Se você não tiver uma ou não souber qual visitar, pode fazer login na sua conta e selecionar uma loja preferida. Alternativamente, você também pode usar nosso Localizador de Lojas para encontrar uma loja que ofereça o Swarovski Club. Clientes em alguns mercados podem resgatar seu presente online na próxima compra online."],"scsmembership-renewMembership":["Para renovar sua assinatura, siga estas etapas simples descritas em nossa <a href="/s-faq-scs/Swarovski-Crystal-Society-FAQs-/?accordionID=SCS-LP_FAQ_AE-how-can-I-renew-membership" target="_blank" rel="noopener noreferrer">FAQ</a>"],"scsmembership-becomeMember":["Para se tornar um novo membro, siga estas etapas simples descritas em nossa <a href="/s-faq-scs/Swarovski-Crystal-Society-FAQs-/?accordionID=CC-Membership-SCS_AE-how-to-join-renew-online" target="_blank" rel="noopener noreferrer">FAQ</a>"],"scsmembership-membershipArrival":["Os pacotes de adesão são normalmente enviados 4-6 semanas após a inscrição, com novas adesões ou renovações despachadas no primeiro dia do mês seguinte. Para adesões de 3 anos (2º e 3º anos), os pacotes são enviados no início do ano, permitindo que os membros aproveitem o presente anual e explorem novas novidades."],"warranty-itemCoveredByWarrant":["A Swarovski oferece uma garantia completa para defeitos de fabrico e materiais em produtos adquiridos em lojas oficiais ou revendedores autorizados.","Para mais detalhes sobre a nossa política de garantia, consulte as nossas <a href="/s-faq-warranty/?accordionID=CC-Products-Warranty_AE-policy" target="_blank" rel="noopener noreferrer">FAQ</a>."],"warranty-warrantyPolicy":["Para uma visão completa de nossa política de garantia, visite nossa seção dedicada de <a href="/s-faq-warranty/?accordionID=CC-Products-Warranty_AE-policy" target="_blank" rel="noopener noreferrer">Perguntas frequentes</a>."],"repair-repairableItem":["Para saber mais, leve o seu produto e o comprovativo de compra à loja Swarovski mais próxima para avaliação.","Pode encontrar a loja mais próxima utilizando o nosso <a href="/store-finder/?features=repairService" target="_blank" rel="noopener noreferrer">Localizador de Lojas</a>."],"repair-status":["Pode facilmente verificar o estado da sua reparação aqui <a href="/s-faq-repairs/Swarovski-Repair-Replacement-FAQs/?accordionID=CheckRepairStatusThemedAccordionEntryComponent" target="_blank" rel="noopener noreferrer">Ver estado de reparação</a>."],"repair-cost":["Para saber o seu tamanho ideal, utilize o nosso guia de tamanhos.","Para mais informações, consulte o nosso <a href="/store-finder/?features=repairService" target="_blank" rel="noopener noreferrer">Guia de Tamanhos</a>."],"repair-visitStore":["Você precisa visitar uma loja porque apenas as lojas autorizadas estão equipadas para avaliar e reparar corretamente o produto."]}
3

Opções de contacto

Escolha a sua opção de contacto preferida

E-mail

Tempo de espera previsto: 1- 3 dias úteis

ご質問やご不明な点がございましたら、以下のフォームよりお気軽にお問い合わせください。喜んでお手伝いさせていただきます。

Nome próprio *
Apelido *
Telefone
E-mail *
País *
アイスランド
アイルランド
アゼルバイジャン
アフガニスタン
アメリカ領サモア
アメリカ領ヴァージン諸島
アラブ首長国連邦
アルジェリア
アルゼンチン
アルバ
アルバニア
アルメニア
アンギラ
アンゴラ
アンティグア・バーブーダ
アンドラ
イエメン
イギリス領インド洋地域
イギリス領ヴァージン諸島
イスラエル
イタリア
イラク
イラン
インド
インドネシア
ウォリス・フツナ
ウガンダ
ウクライナ
ウズベキスタン
ウルグアイ
エクアドル
エジプト
エストニア
エチオピア
エリトリア
エルサルバドル
オマーン
オランダ
オーストラリア
オーストリア
オーランド諸島
カザフスタン
カタール
カナダ
カメルーン
カーボベルデ
ガイアナ
ガボン
ガンビア
ガーナ
ガーンジー島
キスギスタン
キプロス
キュラソー島
キューバ
キリバス
ギニア
ギニアビサウ
ギリシャ
クウェート
クック諸島
クリスマス島
クロアチア
グアテマラ
グアドループ
グアム
グリーンランド
グレナダ
ケイマン諸島
ケニア
ココス諸島
コスタリカ
コモロ
コロンビア
コロンビア
コンゴ
コンゴ民主共和国
コートジボアール
サウジアラビア
サウスジョージア・サウスサンドウィッチ諸島
サモア
サントメ・プリンシペ
サンピエール島・ミクロン島
サンマリノ
サン・バルテルミー島
サン・マルタン(フランス領)
ザンビア
シエラレオネ
シリア・アラブ共和国
シンガポール
シント・マールテン(オランダ領)
ジブチ
ジブラルタル
ジャマイカ
ジャージー島
ジョージア
ジンバブエ
スイス
スウェーデン
スペイン
スリナム
スリランカ
スロバキア
スロベニア
スワジランド
スヴァールバル諸島およびヤンマイエン島
スーダン
セイシェル
セネガル
セルビア
セントクリストファー・ネイビス
セントビンセントおよびグレナディーン諸島
セントヘレナ・アセンションおよびトリスタンダクーニャ
セントルシア
ソマリア
ソロモン諸島
タイ
タジキスタン
タンザニア
タークス・カイコス諸島
チェコ
チャド
チュニジア
チリ
ツバル
デンマーク
トケラウ
トリニダード・トバゴ
トルクメニスタン
トルコ
トンガ
トーゴ
ドイツ
ドミニカ
ドミニカ共和国
ナイジェリア
ナウル
ナミビア
ニウエ
ニカラグア
ニジェール
ニューカレドニア
ニュージーランド
ネパール
ノルウェー
ノーフォーク島
ハイチ
ハンガリー
ハード島とマクドナルド諸島
バヌアツ
バハマ
バミューダ諸島
バルバドス
バングラディシュ
バーレーン
パキスタン
パナマ
パプア・ニューギニア
パラオ
パラグアイ
パレスチナ自治区
ピトケアン諸島
フィジー
フィリピン
フィンランド
フェロー諸島
フォークランド諸島
フランス
フランス領ギアナ
フランス領ポリネシア
フランス領南方・南極地域
ブラジル
ブルガリア
ブルキナファソ
ブルネイ・ダルサラーム
ブルンジ
ブータン
ブーベ島
プエルトリコ
ベトナム
ベニン
ベネズエラ
ベラルーシ
ベリーズ
ベルギー
ペルー
ホンジュラス
ボスニア・ヘルツェゴビナ
ボツワナ
ボネール、シント・ユースタティウスおよびサバ
ボリビア
ポルトガル
ポーランド
マカオ特別行政区
マセドニア
マダガスカル
マヨット
マラウィ
マリ
マルタ
マルティニーク
マレーシア
マン島
マーシャル諸島
ミクロネシア連邦
ミャンマー
メキシコ
モザンビーク
モナコ
モルディブ
モルドバ
モロッコ
モンゴル
モンテネグロ
モントセラト
モーリシャス
モーリタニア
ヨルダン
ラオス
ラトビア
リトアニア
リヒテンシュタイン
リビア
リベリア
ルクセンブルク
ルワンダ
ルーマニア
レソト
レバノン
レユニオン
ローマ教皇庁(バチカン市国)
中国大陸地区
中央アフリカ共和国
北マリアナ諸島
南アフリカ
南極大陸
台湾地区
合衆国領有小離島
日本
朝鮮民主主義人民共和国
東ティモール
米国
英国
西サハラ
赤道ギニア
韓国
香港特別行政区
Número do pedido
Número da reparação
Assunto *
0
É membro da Swarovski Crystal Society (SCS)?
Número de membro *
Restam 1000 caracteres
Selecione o assunto/tema *
オンラインでの注文
Swarovski Club
配送
交換
保証
修理
商品情報
プロモーション
お支払い
SCSメンバーシップ
ウェブサイトで問題が発生した場合
データプライバシー
その他
Selecione o assunto/tema *
注文した商品の追跡リンクを教えてください。
注文した商品が破損して届きました。
注文した商品の一部が届きません。
配送先住所の変更はできますか?
注文した商品を他の国に送るにはどうすればよいですか?
その他
購入した商品は修理してもらえますか?
依頼した修理品の現在の状況を教えてください。
修理代はいくらですか?
修理のために来店する必要があるのはなぜですか?
その他
商品のサイズについて教えてください。
この商品はどこで購入できますか?
どのようなカラーバリエーションがありますか?
Swarovski Created Diamonds のメイド・トゥ・オーダー商品(注文品)はどのように注文できますか?
その他
配送先住所が有効な住所として認識されません。
チェックアウトを完了できません。
私のアカウントのパスワードをリセットしてもらえますか?
アカウントにログインできません。
その他
その他
データ主体の情報開示請求
消去権(「忘れられる権利」)
苦情
メンバーシップを更新する方法を教えてください。
SCS会員になる方法を教えてください?
会員キットはいつ届きますか?
その他
Swarovski Clubニュースレターの配信を停止する方法を教えてください。
ニュースレターの配信を停止した後も、Swarovskiからメールが届くのはなぜですか?
Swarovski Clubクーポンが使えません。
Swarovski Clubの割引クーポンの有効期限は延長できますか?
Swarovski Clubの割引クーポンはセール商品に使用できますか?
バースデークーポンの利用方法を教えてください。
その他
購入した商品は保証の対象ですか?
保証ポリシーについて教えてください。
その他
オンラインで注文した商品の交換はできますか?
オンラインで購入した商品を店舗で交換することはできますか?
他の国の店舗で購入した商品の交換はできますか?
その他
eギフトカードがオンラインで適用されないのはなぜですか?
複数のeギフトカードを使って支払いをすることはできますか?
オンライン購入の際、eギフトカードで支払いをする方法を教えてください。
支払いが拒否されたのはなぜですか?
支払いが返金されたのはなぜですか?
その他
最新のプロモーション情報について教えてください。
プロモーションの延長はできますか?
購入した商品がプロモーションの対象にならないのは、なぜですか?
その他
注文確認メールを再送してもらえますか?
オンラインの注文状況は今どうなっていますか?
オンラインで注文した商品をすべてキャンセルできますか?
オンラインで注文した商品の一部をキャンセルできますか?
請求先住所の変更はできますか?
オンラインで注文した商品の返品方法を教えてください。
オンライン返品ポリシーについて教えてください。
オンラインの返金処理は今どのような状況ですか?
その他

Observe que, ao clicar no botão “Enviar”, você aceita que a conversa e outros dados fornecidos por você serão armazenados pela Swarovski. Para mais informações, leia nossa política de privacidade de dados.

* Campos obrigatórios
$(this).closest('#jp-contactEmailFormConfigWrapper').find('.js-jp-contactEmailFormConfig') .formValidation( { autoFocus: false, framework: 'bootstrap', icon: { valid: null, invalid: null, validating: null }, fields: { 'values[contactEmailFormDefinition_title]': { trigger: 'change', validators: { } }, 'values[contactEmailFormDefinition_firstName]': { trigger: 'blur', validators: { callback: { callback: function(value, validator, $field) { var messages = []; var messagesEN = []; var errorOccured = false; if ($field.attr('regexCheckDisabled') === 'true') { return true; } if (!value.trim().match(new RegExp('^[. \\u3000\'\\-a-zA-Z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02B8\\u0370-\\u03FF\\u1F00-\\u1FFF\\u0400-\\u052F\\u1C80-\\u1C8F\\u2DE0-\\u2DFF\\uA640-\\uA69F\\u4E00-\\u9FFF\\u3400-\\u4DBF\\u3040-\\u30FF\\uF900-\\uFAFF\\uFF66-\\uFF9F\\u1100-\\u11FF\\u3130-\\u318F\\uA960-\\uA97F\\uAC00-\\uD7FF\\u3005\\u3006\\u3024\\u3029\\u3031-\\u3035\\u0E00-\\u0E7F]*$', ''))) { messages.push('Only letters are allowed'); messagesEN.push('Only letters are allowed'); errorOccured |= true; } if (!value.trim().match(new RegExp('(?:^$)|(?:^.*[a-zA-Z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02B8\\u0370-\\u03FF\\u1F00-\\u1FFF\\u0400-\\u052F\\u1C80-\\u1C8F\\u2DE0-\\u2DFF\\uA640-\\uA69F]{2}.*$)|(?:^.*[^a-zA-Z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02B8\\u0370-\\u03FF\\u1F00-\\u1FFF\\u0400-\\u052F\\u1C80-\\u1C8F\\u2DE0-\\u2DFF\\uA640-\\uA69F. \\u3000\'\\-].*$)', ''))) { messages.push('Comprimento mínimo de 2 caracteres'); messagesEN.push('Comprimento mínimo de 2 caracteres'); errorOccured |= true; } if (errorOccured) { return { valid: false, message: messages.join('<br/>'), message_en: messagesEN } } else { return true; } } }, notEmpty: { message: 'Introduza o seu nome próprio.', message_en: 'Introduza o seu nome próprio.' }, stringLength: { message: 'Ultrapassou o comprimento máximo de 35 carateres para este campo', message_en: 'You have exceeded the maximum length of 35 characters for this field', max: 35 }, } }, 'values[contactEmailFormDefinition_lastName]': { trigger: 'blur', validators: { callback: { callback: function(value, validator, $field) { var messages = []; var messagesEN = []; var errorOccured = false; if ($field.attr('regexCheckDisabled') === 'true') { return true; } if (!value.trim().match(new RegExp('^[. \\u3000\'\\-a-zA-Z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02B8\\u0370-\\u03FF\\u1F00-\\u1FFF\\u0400-\\u052F\\u1C80-\\u1C8F\\u2DE0-\\u2DFF\\uA640-\\uA69F\\u4E00-\\u9FFF\\u3400-\\u4DBF\\u3040-\\u30FF\\uF900-\\uFAFF\\uFF66-\\uFF9F\\u1100-\\u11FF\\u3130-\\u318F\\uA960-\\uA97F\\uAC00-\\uD7FF\\u3005\\u3006\\u3024\\u3029\\u3031-\\u3035\\u0E00-\\u0E7F]*$', ''))) { messages.push('Only letters are allowed'); messagesEN.push('Only letters are allowed'); errorOccured |= true; } if (!value.trim().match(new RegExp('(?:^$)|(?:^.*[a-zA-Z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02B8\\u0370-\\u03FF\\u1F00-\\u1FFF\\u0400-\\u052F\\u1C80-\\u1C8F\\u2DE0-\\u2DFF\\uA640-\\uA69F]{2}.*$)|(?:^.*[^a-zA-Z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02B8\\u0370-\\u03FF\\u1F00-\\u1FFF\\u0400-\\u052F\\u1C80-\\u1C8F\\u2DE0-\\u2DFF\\uA640-\\uA69F. \\u3000\'\\-].*$)', ''))) { messages.push('Comprimento mínimo de 2 caracteres'); messagesEN.push('Comprimento mínimo de 2 caracteres'); errorOccured |= true; } if (errorOccured) { return { valid: false, message: messages.join('<br/>'), message_en: messagesEN } } else { return true; } } }, notEmpty: { message: 'Introduza o seu apelido.', message_en: 'Introduza o seu apelido.' }, stringLength: { message: 'Ultrapassou o comprimento máximo de 35 carateres para este campo', message_en: 'You have exceeded the maximum length of 35 characters for this field', max: 35 }, } }, 'values[contactEmailFormDefinition_phone]': { trigger: 'blur', validators: { callback: { callback: function(value, validator, $field) { var messages = []; var messagesEN = []; var errorOccured = false; if ($field.attr('regexCheckDisabled') === 'true') { return true; } if (!value.trim().match(new RegExp('^[\\\\+]{0,1}[0-9\\\\(\\\\)\\- \\\\.]*$', ''))) { messages.push('Introduza o seu número de telefone (apenas números, sem espaços)'); messagesEN.push('Introduza o seu número de telefone (apenas números, sem espaços)'); errorOccured |= true; } if (errorOccured) { return { valid: false, message: messages.join('<br/>'), message_en: messagesEN } } else { return true; } } }, stringLength: { message: 'Ultrapassou o comprimento máximo de 20 carateres para este campo', message_en: 'You have exceeded the maximum length of 20 characters for this field', max: 20 }, callbackPhone: { alias: 'callback', message: 'Introduza o seu número de telefone', message_en: 'Introduza o seu número de telefone', callback: function (value, validator, $field) { if (value === '') { return true; } var prefixCountry = $field.siblings('.flag-container').children('.selected-flag').attr('title'); var isValidPrefix = prefixCountry !== undefined && prefixCountry !== 'Unknown'; if (!isValidPrefix) { return false; } var prefix = prefixCountry.split("+")[1]; var isMinimumLength = true; var minLength = ""; if (minLength !== null) { if (value.startsWith("+")) { if ((value.length - prefix.length - 1) < minLength) { isMinimumLength = false; } } else if (value.length < minLength) { isMinimumLength = false; } } return isMinimumLength; } }, } }, 'values[contactEmailFormDefinition_email]': { trigger: 'blur', validators: { regexp: { regexp: new RegExp('^(?=.{0,255}$)(?=.{0,64}@)(?:(?!^\\.)(?!.*\\.@)(?!.*\\.\\.)[a-zA-Z0-9!#.$%&\'*+\/=?^_‘{|}~-]+|\"(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x21\\x23-\\x5b\\x5d-\\x7f]|\\\\[\\x01-\\x09\\x0b\\x0c\\x0e-\\x7f]){1,62}\")@(?!-)(?!.*\\.-)(?!.*-\\.)(?:[a-zA-Z0-9-]{1,61}\\.){1,126}(?=[a-zA-Z0-9-]*[a-zA-Z][a-zA-Z0-9-]*$)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?$', ''), message: 'Introduza o seu endereço de e-mail.', message_en: 'Introduza o seu endereço de e-mail.' }, notEmpty: { message: 'Introduza o seu endereço de e-mail.', message_en: 'Introduza o seu endereço de e-mail.' }, stringLength: { message: 'Este campo deve ter entre 0 e 70 caracteres', message_en: 'The number of characters for this field must be between 0 and 70', min: 0 , max: 70 }, } }, 'values[contactEmailFormDefinition_country]': { trigger: 'change', validators: { notEmpty: { message: 'Introduza o seu país\/a sua região.', message_en: 'Introduza o seu país\/a sua região.' } } }, 'values[contactEmailFormDefinition_swaClubMember]': { trigger: 'change', validators: { } }, 'values[contactEmailFormDefinition_scsMember]': { trigger: 'change', validators: { } }, 'values[contactEmailFormDefinition_scsMemberNumber]': { trigger: 'blur', validators: { notEmpty: { message: 'Introduza um n.º de membro SCS', message_en: 'Introduza um n.º de membro SCS' }, stringLength: { message: 'Este campo deve ter entre 0 e 11 caracteres', message_en: 'The number of characters for this field must be between 0 and 11', min: 0 , max: 11 }, } }, 'values[contactEmailFormDefinition_message]': { trigger: 'blur', validators: { notEmpty: { message: 'Introduza uma mensagem', message_en: 'Introduza uma mensagem' }, stringLength: { message: 'Este campo deve ter entre 0 e 1000 caracteres', message_en: 'The number of characters for this field must be between 0 and 1000', min: 0 , max: 1000 }, } }, 'values[contactEmailFormDefinition_contactOrderNo]': { trigger: 'blur', validators: { callback: { callback: function(value, validator, $field) { var messages = []; var messagesEN = []; var errorOccured = false; if ($field.attr('regexCheckDisabled') === 'true') { return true; } if (!value.trim().match(new RegExp('^([a-zA-Z0-9]{15})$|^$', ''))) { messages.push('Please enter a valid order number (15 digits)'); messagesEN.push('Please enter a valid order number (15 digits)'); errorOccured |= true; } if (errorOccured) { return { valid: false, message: messages.join('<br/>'), message_en: messagesEN } } else { return true; } } }, stringLength: { message: 'Este campo deve ter entre 0 e 40 caracteres', message_en: 'The number of characters for this field must be between 0 and 40', min: 0 , max: 40 }, } }, 'values[contactEmailFormDefinition_contactRepairNo]': { trigger: 'blur', validators: { stringLength: { message: 'Este campo deve ter entre 0 e 40 caracteres', message_en: 'The number of characters for this field must be between 0 and 40', min: 0 , max: 40 }, } }, 'values[contactEmailFormDefinition_contactTopic]': { trigger: 'change', validators: { notEmpty: { message: 'Selecione o assunto\/tema', message_en: 'Selecione o assunto\/tema' } } }, 'values[contactEmailFormDefinition_contactSubject]': { trigger: 'change', validators: { notEmpty: { message: 'Selecione o assunto\/tema', message_en: 'Selecione o assunto\/tema' } } }, 'values[contactEmailFormDefinition_contactSubjectTxt]': { trigger: 'blur', validators: { notEmpty: { message: 'Introduza o assunto', message_en: 'Introduza o assunto' }, stringLength: { message: 'Este campo deve ter entre 0 e 40 caracteres', message_en: 'The number of characters for this field must be between 0 and 40', min: 0 , max: 40 }, } } } } ) .on('success.field.fv', function() { /* note: we need to check if there is an error in the form, as the plugin does a validation on field level. Validating the whole form on blur of a field is no option, as the customer does not want to see error messages on all fields when entering one field. In case of an error on at least one field we disable the submit button manually */ var $form = $(this).closest('form'); if ($form.find('.form-group.has-error').length > 0) { var $button = $form.find('.js-button'); if (!$button.hasClass('disabled')) { $button.addClass('disabled'); } } }) .on('err.field.fv', function(e, data) { /* * On error field validation, enable submit button. * Source: https://old.formvalidation.io/examples/enabling-submit-button/ */ data.fv.disableSubmitButtons(false); $(data.element).attr('aria-invalid', 'true'); // Get error messages var messages = data.fv.getMessages(data.element); // ✅ Announce error to screen readers if ($(data.element).closest('.js-advent-calendar-container').length > 0 && messages.length > 0 && window.ACC && window.ACC.adventcalendar && typeof ACC.adventcalendar.adventcalendarUpdateErrorSpanAttributes === 'function') { const selectedField = data.element.attr('id'); ACC.adventcalendar.adventcalendarUpdateErrorSpanAttributes(selectedField, true); ACC.adventcalendar.announceToScreenReader('Error: ' + messages[0]); } if(data.element.closest('.form-combo-molecule').length){ /* Get the messages of field */ var messages = data.fv.getMessages(data.element); /* Get the error message content of the field */ var errorContent = data.element.closest('.form-combo-molecule').find('.errors'); /* Get the hidden error message of the field */ var errorField = errorContent.find('.swa-form-input__error-message[data-field="' + data.field + '"][style="display: none;"]'); /* Loop over the messages */ for (var i in messages) { if (errorField[1] == undefined) { var newErrorContainer = document.createElement("small"); $(newErrorContainer).attr("class", "swa-form-input__error-message swa-headline-sans--supertiny"); $(newErrorContainer).attr("data-field", data.field); $(newErrorContainer).attr("data-fv-validator", "callback"); $(newErrorContainer).attr("data-fv-for", $(data.element[0]).attr("name") ); $(newErrorContainer).attr("data-fv-result", "INVALID"); $(newErrorContainer).attr("data-tracked", "true"); $(newErrorContainer).html(messages[i]); if (errorContent.text().includes(messages[i])) { $(newErrorContainer).hide(); } errorContent.append(newErrorContainer); } } } }) .on('success.field.fv', function(e, data) { /* * On success field validation, enable submit button. * Source: https://old.formvalidation.io/examples/enabling-submit-button/ */ if ($(data.element).closest('.js-advent-calendar-container').length > 0 && window.ACC && window.ACC.adventcalendar && typeof ACC.adventcalendar.adventcalendarUpdateErrorSpanAttributes === 'function') { const selectedField = data.element.attr('id'); ACC.adventcalendar.adventcalendarUpdateErrorSpanAttributes(selectedField, false); } data.fv.disableSubmitButtons(false); // ✅ Remove aria-invalid on field $(data.element).attr('aria-invalid', 'false'); /* Remove the field messages */ $errorContent = data.element.closest('.form-combo-molecule').find('.errors'); $errorContent.find('.swa-form-input__error-message[data-field="' + data.field + '"]').remove(); $errorContent.find('.swa-form-input__error-message[data-fv-result="INVALID"]').removeAttr("style"); }) .on('success.form.fv', function() { var formId = 'contactEmail'; if (!formId || formId === 'cfRequest' || formId === 'cfResponse') { formId = 'contactEmailFormDefinition'; } ACC.tracking.pushFormSubmit(formId); }); var replaceDatePatternWithValue = function(mandatory, fieldConfigCode, fieldConfigPattern) { var date = fieldConfigPattern.toUpperCase(); var year = $("#" + fieldConfigCode + "_year").val(); var month = $("#" + fieldConfigCode + "_month").val(); var day = $("#" + fieldConfigCode + "_day").val(); date = date.replace(/[Y]+/, year); date = date.replace(/[M]+/, month); date = date.replace(/[D]+/, day); var hiddenDateField = $('.js-' + fieldConfigCode + '_hidden'); if (mandatory) { hiddenDateField.val(date); } else { hiddenDateField.val(date == "" ? "" : date); } }; var triggerFormValidation = function(fieldId, mandatory, fieldCode, dateFormat) { replaceDatePatternWithValue(mandatory, fieldCode, dateFormat); $('.js-fieldCode').formValidation('revalidateField', 'values[fieldCode_'+ fieldId + ']'); }; var removeDateMoleculeError = function(molecule) { if(molecule.hasClass('has-error')){ molecule.removeClass('has-error'); molecule.find('.help-block').find('span').remove(); } };
Telefone

Telefone

Tempo de espera previsto: 2- 5 Minutos

カスタマーサービス日本

営業時間: 月曜~金曜 9:30~17:30

フリーダイヤル番号:

0120 10 8700