Gratis standaardverzending vanaf EUR 75
Zoeken

Neem contact met ons op

1

Thema

Selecteer een ontwerp zodat we u beter van dienst kunnen zijn

Selecteer je onderwerp/thema *
Productinformatie
Acties
Online bestellingen
Ruilen
Levering
Betaling
Probleem met de website
Swarovski Club
SCS-lidmaatschap
Garantie
Reparatie
Anders
$(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: 'Selecteer je onderwerp\/thema', message_en: 'Selecteer je onderwerp\/thema' } } } } } ) .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); 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/ */ data.fv.disableSubmitButtons(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

Onderwerp

Selecteer een van de volgende onderwerpen

Selecteer je onderwerp/thema *
Wat is de tracking-link van mijn bestelling?
Een product van mijn bestelling is beschadigd aangekomen
Er ontbreekt een artikel van mijn bestelling
Kunt u mijn leveradres veranderen?
Hoe kan ik mijn bestelling naar een ander land versturen?
Anders
Hoe verleng ik mijn lidmaatschap?
Hoe word ik lid van de SCS?
Wanneer ontvang ik mijn lidmaatschapspakket?
Anders
Kan mijn artikel worden gerepareerd?
Wat is de status van mijn reparatie?
Wat kost een reparatie?
Waarom moet ik naar een winkel om een artikel te laten repareren?
Anders
Kunt u mij laten weten wat de afmetingen van het product zijn?
Waar is dit product verkrijgbaar?
Welke kleuren zijn er verkrijgbaar?
Anders
Mijn postadres wordt niet herkend als geldig adres
Ik kan het betalingsproces niet afronden
Kunt u het wachtwoord voor mijn account herstellen?
Ik kan niet inloggen op mijn account
Anders
Anders
Hoe schrijf ik mij uit voor de Swarovski Club nieuwsbrief?
Waarom krijg ik nog steeds e-mail van Swarovski nadat ik mij heb uitgeschreven voor de nieuwsbrief?
Mijn Swarovski Club Voucher werkt niet
Kan mijn Swarovski Club kortingsvoucher worden verlengd?
Kan mijn Swarovski Club kortingsvoucher worden gebruikt voor afgeprijsde artikelen?
Hoe wissel ik de cadeauvoucher voor mijn verjaardag in?
Anders
Valt mijn product onder de garantievoorwaarden?
Wat is uw garantiebeleid?
Anders
Kan ik een product uit mijn online bestelling ruilen?
Kan ik een product dat ik in een winkel heb gekocht, ruilen in een ander land?
Kan ik mijn online bestelling ruilen in een winkel?
Anders
Waarom wordt mijn digitale cadeaukaart online niet geaccepteerd?
Kan ik betalen met meer dan 1 digitale cadeaukaart?
Hoe betaal ik een online aankoop met een digitale cadeaukaart
Waarom is mijn betaling geweigerd?
Waarom is mijn betaling teruggestort?
Anders
Kunt u informatie over de huidige actie geven?
Kunt u de actie verlengen?
Waarom kwam mijn aankoop niet in aanmerking voor de actie?
Anders
Kunt u mijn bestelbevestiging nog eens sturen?
Wat is de status van mijn online bestelling?
Kan ik mijn hele online bestelling annuleren?
Kan ik een deel van mijn online bestelling annuleren?
Kunt u mijn factuuradres veranderen?
Hoe stuur ik mijn online bestelling terug?
Wat is het retourbeleid voor online bestellingen?
Wat is de status van mijn online terugbetaling?
Anders
$(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: 'Selecteer je onderwerp\/thema', message_en: 'Selecteer je onderwerp\/thema' } } } } } ) .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); 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/ */ data.fv.disableSubmitButtons(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(); } };
Onderwerp *
$(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: 'Vul je onderwerp in', message_en: 'Vul je onderwerp in' }, stringLength: { message: 'Het aantal tekens voor dit veld moet tussen 0 en 40 liggen', 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); 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/ */ data.fv.disableSubmitButtons(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(); } };
3

Contactopties

Kies uw gewenste contactoptie

E-mailadres

Geschatte wachttijd: 1- 3 business days

Heeft u een vraag of wilt u meer informatie? Neem dan gerust contact met ons op via onderstaand formulier. We helpen u graag verder.

Voornaam *
Achternaam *
Telefoonnr.
E-mailadres *
Land *
Afghanistan
Albanië
Algerije
Amerikaans-Samoa
Amerikaanse Maagdeneilanden
Andorra
Angola
Anguilla
Antarctica
Antigua en Barbuda
Argentinië
Armenië
Aruba
Australië
Azerbeidzjan
Bahama's
Bahrein
Bangladesh
Barbados
België
Belize
Benin
Bermuda
Bhutan
Bolivia
Bonaire, Sint Eustatius en Saba
Bosnië en Herzegovina
Botswana
Bouveteiland
Brazilië
Brits Indische Oceaanterritorium
Britse Maagdeneilanden
Brunei Darussalam
Bulgarije
Burkina Faso
Burundi
Cambodja
Canada
Centraal-Afrikaanse Republiek
Chili
Christmaseiland
Cocoseilanden
Colombia
Comoren
Congo, de Democratische Republiek
Cookeilanden
Costa Rica
Cuba
Curaçao
Cyprus
Denemarken
Djibouti
Dominica
Dominicaanse Republiek
Duitsland
Ecuador
Egypte
El Salvador
Equatoriaal-Guinea
Eritrea
Estland
Ethiopië
Faeröer
Falklandeilanden
Fiji
Filipijnen
Finland
Frankrijk
Frans-Guyana
Frans-Polynesië
Franse Zuidelijke Gebieden
Gabon
Gambia
Georgië
Ghana
Gibraltar
Grenada
Griekenland
Groenland
Guadeloupe
Guam
Guatemala
Guernsey
Guinee
Guinee-Bissau
Guyana
Haïti
Heard en McDonaldeilanden
Heilige Stoel (Staat Vaticaanstad)
Honduras
Hongarije
Hongkong
IJsland
Ierland
India
Indonesië
Irak
Iran
Isle of Man
Israël
Italië
Ivoorkust
Jamaica
Japan
Jemen
Jersey
Jordanië
Kaaimaneilanden
Kaapverdië
Kameroen
Kazachstan
Kenia
Kirgizië
Kiribati
Kleine afgelegen eilanden van de Verenigde Staten
Koeweit
Kongo
Korea, Democratische Volksrepubliek
Kroatië
Laos, Democratische Volksrepubliek
Lesotho
Letland
Libanon
Liberia
Libië
Liechtenstein
Litouwen
Luxemburg
Macau
Macedonië
Madagaskar
Malawi
Malediven
Maleisië
Mali
Malta
Marokko
Marshalleilanden
Martinique
Mauritanië
Mauritius
Mayotte
Mexico
Micronesia, Federale Staten van
Moldavië
Monaco
Mongolië
Montenegro
Montserrat
Mozambique
Myanmar
Namibië
Nauru
Nederland
Nepal
Nicaragua
Nieuw-Caledonië
Nieuw-Zeeland
Niger
Nigeria
Niue
Noordelijke Marianen
Noorwegen
Norfolkeiland
Oeganda
Oekraïne
Oezbekistan
Oman
Oost-Timor
Oostenrijk
Pakistan
Palau
Palestijnse territoria
Panama
Papoea-Nieuw-Guinea
Paraguay
Peru
Pitcairneilanden
Polen
Porto Rico
Portugal
Qatar
Roemenië
Rwanda
Réunion
Saint Kitts en Nevis
Saint Lucia
Saint Vincent en de Grenadines
Saint-Barthélemy
Saint-Martin (Frans deel)
Saint-Pierre en Miquelon
Salomonseilanden
Samoa
San Marino
Sao Tomé en Principe
Saoedi-Arabië
Senegal
Servië
Seychellen
Sierra Leone
Singapore
Sint Maarten (Nederlands deel)
Sint-Helena, Ascension en Tristan da Cunha
Slovenië
Slowakije
Soedan
Somalië
Spanje
Sri Lanka
Suriname
Svalbard en Jan Mayen
Swaziland
Syrië, Arabische Republiek
Tadzjikistan
Taiwan
Tanzania
Thailand
Togo
Tokelau
Tonga
Trinidad en Tobago
Tsjaad
Tsjechië
Tunesië
Turkije
Turkmenistan
Turks- en Caicoseilanden
Tuvalu
Uruguay
Vanuatu
Vasteland van China
Venezuela
Verenigd Koninkrijk
Verenigde Arabische Emiraten
Verenigde Staten
Vietnam
Wallis en Futuna
Westelijke Sahara
Wit-Rusland
Zambia
Zimbabwe
Zuid-Afrika
Zuid-Georgia en de Zuidelijke Sandwicheilanden
Zuid-Korea
Zweden
Zwitserland
Ålandseilanden
Bestelnummer
Reparatienummer
Onderwerp *
Are you a member of the Swarovski Club loyalty program?
Ben je lid van de Swarovski Crystal Society (SCS)?
Lidmaatschapsnummer *
1000 tekens over
Selecteer je onderwerp/thema *
Productinformatie
Acties
Online bestellingen
Ruilen
Levering
Betaling
Probleem met de website
Swarovski Club
SCS-lidmaatschap
Garantie
Reparatie
Anders
Selecteer je onderwerp/thema *
Wat is de tracking-link van mijn bestelling?
Een product van mijn bestelling is beschadigd aangekomen
Er ontbreekt een artikel van mijn bestelling
Kunt u mijn leveradres veranderen?
Hoe kan ik mijn bestelling naar een ander land versturen?
Anders
Hoe verleng ik mijn lidmaatschap?
Hoe word ik lid van de SCS?
Wanneer ontvang ik mijn lidmaatschapspakket?
Anders
Kan mijn artikel worden gerepareerd?
Wat is de status van mijn reparatie?
Wat kost een reparatie?
Waarom moet ik naar een winkel om een artikel te laten repareren?
Anders
Kunt u mij laten weten wat de afmetingen van het product zijn?
Waar is dit product verkrijgbaar?
Welke kleuren zijn er verkrijgbaar?
Anders
Mijn postadres wordt niet herkend als geldig adres
Ik kan het betalingsproces niet afronden
Kunt u het wachtwoord voor mijn account herstellen?
Ik kan niet inloggen op mijn account
Anders
Anders
Hoe schrijf ik mij uit voor de Swarovski Club nieuwsbrief?
Waarom krijg ik nog steeds e-mail van Swarovski nadat ik mij heb uitgeschreven voor de nieuwsbrief?
Mijn Swarovski Club Voucher werkt niet
Kan mijn Swarovski Club kortingsvoucher worden verlengd?
Kan mijn Swarovski Club kortingsvoucher worden gebruikt voor afgeprijsde artikelen?
Hoe wissel ik de cadeauvoucher voor mijn verjaardag in?
Anders
Valt mijn product onder de garantievoorwaarden?
Wat is uw garantiebeleid?
Anders
Kan ik een product uit mijn online bestelling ruilen?
Kan ik een product dat ik in een winkel heb gekocht, ruilen in een ander land?
Kan ik mijn online bestelling ruilen in een winkel?
Anders
Waarom wordt mijn digitale cadeaukaart online niet geaccepteerd?
Kan ik betalen met meer dan 1 digitale cadeaukaart?
Hoe betaal ik een online aankoop met een digitale cadeaukaart
Waarom is mijn betaling geweigerd?
Waarom is mijn betaling teruggestort?
Anders
Kunt u informatie over de huidige actie geven?
Kunt u de actie verlengen?
Waarom kwam mijn aankoop niet in aanmerking voor de actie?
Anders
Kunt u mijn bestelbevestiging nog eens sturen?
Wat is de status van mijn online bestelling?
Kan ik mijn hele online bestelling annuleren?
Kan ik een deel van mijn online bestelling annuleren?
Kunt u mijn factuuradres veranderen?
Hoe stuur ik mijn online bestelling terug?
Wat is het retourbeleid voor online bestellingen?
Wat is de status van mijn online terugbetaling?
Anders
* Verplichte velden
$(this).closest('#be-contactEmailFormConfigWrapper').find('.js-be-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('Alleen letters zijn toegestaan'); messagesEN.push('Alleen letters zijn toegestaan'); 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('Minimale lengte is 2 tekens'); messagesEN.push('Minimale lengte is 2 tekens'); errorOccured |= true; } if (errorOccured) { return { valid: false, message: messages.join('<br/>'), message_en: messagesEN } } else { return true; } } }, notEmpty: { message: 'Voer je voornaam in.', message_en: 'Voer je voornaam in.' }, stringLength: { message: 'Je hebt de maximale lengte van 40 tekens voor dit veld overschreden', message_en: 'You have exceeded the maximum length of 40 characters for this field', max: 40 }, } }, '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('Alleen letters zijn toegestaan'); messagesEN.push('Alleen letters zijn toegestaan'); 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('Minimale lengte is 2 tekens'); messagesEN.push('Minimale lengte is 2 tekens'); errorOccured |= true; } if (errorOccured) { return { valid: false, message: messages.join('<br/>'), message_en: messagesEN } } else { return true; } } }, notEmpty: { message: 'Voer je achternaam in.', message_en: 'Voer je achternaam in.' }, stringLength: { message: 'Je hebt de maximale lengte van 40 tekens voor dit veld overschreden', message_en: 'You have exceeded the maximum length of 40 characters for this field', max: 40 }, } }, '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('voer je telefoonnummer in (alleen cijfers, geen spaties)'); messagesEN.push('voer je telefoonnummer in (alleen cijfers, geen spaties)'); errorOccured |= true; } if (errorOccured) { return { valid: false, message: messages.join('<br/>'), message_en: messagesEN } } else { return true; } } }, stringLength: { message: 'Je hebt de maximale lengte van 20 tekens voor dit veld overschreden', message_en: 'You have exceeded the maximum length of 20 characters for this field', max: 20 }, callbackPhone: { alias: 'callback', message: 'Voer je telefoonnummer in', message_en: 'Voer je telefoonnummer in', 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: 'Voer je e-mailadres in.', message_en: 'Voer je e-mailadres in.' }, notEmpty: { message: 'Voer je e-mailadres in.', message_en: 'Voer je e-mailadres in.' }, stringLength: { message: 'Het aantal tekens voor dit veld moet tussen 0 en 70 liggen', 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: 'Voer je land\/regio in.', message_en: 'Voer je land\/regio in.' } } }, 'values[contactEmailFormDefinition_swaClubMember]': { trigger: 'change', validators: { } }, 'values[contactEmailFormDefinition_scsMember]': { trigger: 'change', validators: { } }, 'values[contactEmailFormDefinition_scsMemberNumber]': { trigger: 'blur', validators: { notEmpty: { message: 'Voer je SCS-lidmaatschapsnummer in', message_en: 'Voer je SCS-lidmaatschapsnummer in' }, stringLength: { message: 'Het aantal tekens voor dit veld moet tussen 0 en 11 liggen', 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: 'Voer een bericht in', message_en: 'Voer een bericht in' }, stringLength: { message: 'Het aantal tekens voor dit veld moet tussen 0 en 1000 liggen', 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: 'Het aantal tekens voor dit veld moet tussen 0 en 40 liggen', 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: 'Het aantal tekens voor dit veld moet tussen 0 en 40 liggen', 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: 'Selecteer je onderwerp\/thema', message_en: 'Selecteer je onderwerp\/thema' } } }, 'values[contactEmailFormDefinition_contactSubject]': { trigger: 'change', validators: { notEmpty: { message: 'Selecteer je onderwerp\/thema', message_en: 'Selecteer je onderwerp\/thema' } } }, 'values[contactEmailFormDefinition_contactSubjectTxt]': { trigger: 'blur', validators: { notEmpty: { message: 'Vul je onderwerp in', message_en: 'Vul je onderwerp in' }, stringLength: { message: 'Het aantal tekens voor dit veld moet tussen 0 en 40 liggen', 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); 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/ */ data.fv.disableSubmitButtons(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(); } };
Telefoonnummer

Telefoonnummer

Geschatte wachttijd: 2- 5 Minuten

Klantendienst België
Openingstijden: Ma - Vr: 09:00 - 18:00

Telefoon:
+32 (0) 246 33048