Livrare gratuită la comenzi de peste 250 RON
Căutare
* Câmpuri obligatorii
Salutation *
Dna/Dra
Dl
Prenume *
Nume de familie *
Funcția deținută
Denumire societate *
Vă rugăm să vă selectați țara *
Afganistan
Africa de Sud
Albania
Algeria
Andorra
Angola
Anguilla
Antarctica
Antigua și Barbuda
Arabia Saudită
Argentina
Armenia
Aruba
Australia
Austria
Azerbaidjan
Bahamas
Bahrain
Bangladesh
Barbados
Belarus
Belgia
Belize
Benin
Bhutan
Bolivia
Bonaire, Sf Eustațiu și Saba
Bosnia și Herțegovina
Botswana
Brazilia
Brunei, Domiciliul Păcii
Bulgaria
Burkina Faso
Burundi
Cambodgia
Camerun
Canada
Cehia
Chile
China Continentală
Ciad
Cipru
Coasta de Fildeș
Columbia
Comore
Comunitatea Insulelor Mariane de Nord
Congo
Congo, Republica Democrată
Coreea de Nord
Coreea de Sud
Costa Rica
Croația
Cuba
Curaçao
Danemarca
Djibouti
Dominica
Ecuador
Egipt
El Salvador
Elveția
Emiratele Arabe Unite
Eritreea
Estonia
Eswatini
Etiopia
Fiji
Filipine
Finlanda
Franța
Gabon
Gambia
Georgia
Georgia de Sud și Insulele Sandwich de Sud
Germania
Ghana
Gibraltar
Grecia
Grenada
Groenlanda
Guadelupa
Guam
Guatemala
Guernsey
Guineea
Guineea Ecuatorială
Guineea-Bissau
Guyana
Guyana Franceză
Haiti
Honduras
India
Indonezia
Insula Bouvet
Insula Crăciunului
Insula Heard și Insulele McDonald
Insula Jersey
Insula Man
Insula Norfolk
Insulele Bermude
Insulele Cayman
Insulele Cocos (Keeling)
Insulele Cook
Insulele Falkland
Insulele Feroe
Insulele Marshall
Insulele Minore Îndepărtate ale Statelor Unite
Insulele Pitcairn
Insulele Solomon
Insulele Turks și Caicos
Insulele Virgine Americane
Insulele Virgine Britanice
Insulele Åland
Iordania
Irak
Iran
Irlanda
Islanda
Israel
Italia
Jamaica
Japonia
Kazahstan
Kenya
Kiribati
Kuweit
Kârgâzstan
Laos, Republica Populară Democrată
Lesotho
Letonia
Liban
Liberia
Libia
Liechtenstein
Lituania
Luxemburg
Macedonia
Madagascar
Malawi
Malaysia
Maldive
Mali
Malta
Maroc
Martinica
Mauritania
Mauritius
Mayotte
Mexic
Micronezia, Statele Federate ale
Moldova
Monaco
Mongolia
Montserrat
Mozambic
Muntenegru
Myanmar
Namibia
Nauru
Nepal
Nicaragua
Niger
Nigeria
Niue
Norvegia
Noua Caledonie
Noua Zeelandă
Oman
Pakistan
Palau
Panama
Papua Noua Guinee
Paraguay
Peru
Polinezia Franceză
Polonia
Portugalia
Puerto Rico
Qatar
RAS Hong Kong
RAS Macao
Regatul Unit
Regiunea Taiwan
Republica Arabă Siriană
Republica Capului Verde
Republica Centrafricană
Republica Dominicană
România
Rwanda
Réunion
Sahara de Vest
Saint Barthélemy
Saint Pierre și Miquelon
Saint Vincent și Grenadinele
Saint-Martin (Franța)
Samoa Americană
San Marino
Senegal
Serbia
Seychelles
Sfânta Elena, Ascension și Tristan da Cunha
Sfânta Lucia
Sfântul Cristofor și Nevis
Sfântul Scaun (Cetatea Vaticanului)
Sierra Leone
Singapore
Sint Maarten (Țările de Jos)
Slovacia
Slovenia
Somalia
Spania
Sri Lanka
Statele Unite
Sudan
Suedia
Suriname
Svalbard și Jan Mayen
São Tomé și Príncipe
Tadjikistan
Tailanda
Tanzania
Teritoriile Palestiniene
Teritoriile australe și antarctice franceze
Teritoriul Britanic din Oceanul Indian
Timorul de Est
Togo
Tokelau
Tonga
Trinidad și Tobago
Tunisia
Turcia
Turkmenistan
Tuvalu
Ucraina
Uganda
Ungaria
Uruguay
Uruguay
Uzbekistan
Vanuatu
Venezuela
Vietnam
Wallis și Futuna
Yemen
Zambia
Zimbabwe
Țările de Jos
Telefon *
Adresa de e-mail de serviciu *
Confirmar e-mail profissional  *
Numărul de angajați *
1-10 angajati
11-50 angajati
51-200 angajati
201-500 angajati
501-1,000 angajati
1,001-5,000 angajati
5,001-10,000 angajati
>10,000 angajati
1000 caractere rămase
.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 = 'professionalCustomersContactForm'; if (!formId || formId === 'cfRequest' || formId === 'cfResponse') { formId = 'professionalCustomersContactFormDefinition'; } 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(); } };
$(this).closest('#professionalCustomersContactFormConfigWrapper').find('.js-professionalCustomersContactFormConfig') .formValidation( { autoFocus: false, framework: 'bootstrap', icon: { valid: null, invalid: null, validating: null }, fields: { 'values[professionalCustomersContactFormDefinition_title]': { trigger: 'change', validators: { notEmpty: { message: 'Vă rugăm să alegeți un titlu', message_en: 'Vă rugăm să alegeți un titlu' } } }, 'values[professionalCustomersContactFormDefinition_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('Sunt permise numai litere'); messagesEN.push('Sunt permise numai litere'); 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('Lungimea minimă este de 2 caractere'); messagesEN.push('Lungimea minimă este de 2 caractere'); errorOccured |= true; } if (errorOccured) { return { valid: false, message: messages.join('<br/>'), message_en: messagesEN } } else { return true; } } }, notEmpty: { message: 'Vă rugăm să vă introduceți prenumele.', message_en: 'Vă rugăm să vă introduceți prenumele.' }, stringLength: { message: 'Ați depășit lungimea maximă de 40 caractere pentru acest câmp', message_en: 'You have exceeded the maximum length of 40 characters for this field', max: 40 }, } }, 'values[professionalCustomersContactFormDefinition_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('Sunt permise numai litere'); messagesEN.push('Sunt permise numai litere'); 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('Lungimea minimă este de 2 caractere'); messagesEN.push('Lungimea minimă este de 2 caractere'); errorOccured |= true; } if (errorOccured) { return { valid: false, message: messages.join('<br/>'), message_en: messagesEN } } else { return true; } } }, notEmpty: { message: 'Vă rugăm să vă introduceți numele de familie.', message_en: 'Vă rugăm să vă introduceți numele de familie.' }, stringLength: { message: 'Ați depășit lungimea maximă de 40 caractere pentru acest câmp', message_en: 'You have exceeded the maximum length of 40 characters for this field', max: 40 }, } }, 'values[professionalCustomersContactFormDefinition_jobTitle]': { trigger: 'blur', validators: { stringLength: { message: 'Ați depășit lungimea maximă de 40 caractere pentru acest câmp', message_en: 'You have exceeded the maximum length of 40 characters for this field', max: 40 }, } }, 'values[professionalCustomersContactFormDefinition_companyName]': { trigger: 'blur', validators: { notEmpty: { message: 'Vă rugăm să indicați denumirea societății dvs.', message_en: 'Vă rugăm să indicați denumirea societății dvs.' }, stringLength: { message: 'Ați depășit lungimea maximă de 40 caractere pentru acest câmp', message_en: 'You have exceeded the maximum length of 40 characters for this field', max: 40 }, } }, 'values[professionalCustomersContactFormDefinition_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: 'Vă rugăm să completați adresa de e-mail de serviciu.', message_en: 'Vă rugăm să completați adresa de e-mail de serviciu.' }, notEmpty: { message: 'Vă rugăm să completați adresa de e-mail de serviciu.', message_en: 'Vă rugăm să completați adresa de e-mail de serviciu.' }, stringLength: { message: 'Numărul de caractere pentru acest câmp trebuie să fie între 0 și 70', message_en: 'The number of characters for this field must be between 0 and 70', min: 0 , max: 70 }, } }, 'values[professionalCustomersContactFormDefinition_emailConfirm]': { 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: 'Vă rugăm să completați adresa de e-mail de serviciu.', message_en: 'Vă rugăm să completați adresa de e-mail de serviciu.' }, notEmpty: { message: 'Vă rugăm să completați adresa de e-mail de serviciu.', message_en: 'Vă rugăm să completați adresa de e-mail de serviciu.' }, stringLength: { message: 'Numărul de caractere pentru acest câmp trebuie să fie între 0 și 70', message_en: 'The number of characters for this field must be between 0 and 70', min: 0 , max: 70 }, identical: { field: 'values[professionalCustomersContactFormDefinition_email]', message: 'Câmpurile nu corespund.', message_en: 'The fields do not match.' } } }, 'values[professionalCustomersContactFormDefinition_country]': { trigger: 'change', validators: { notEmpty: { message: 'Vă rugăm să introduceți țara\/regiunea.', message_en: 'Vă rugăm să introduceți țara\/regiunea.' } } }, 'values[professionalCustomersContactFormDefinition_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('vă rugăm să introduceți numărul dvs. de telefon. (doar cifre, fără spații)'); messagesEN.push('vă rugăm să introduceți numărul dvs. de telefon. (doar cifre, fără spații)'); errorOccured |= true; } if (errorOccured) { return { valid: false, message: messages.join('<br/>'), message_en: messagesEN } } else { return true; } } }, notEmpty: { message: 'Vă rugăm să introduceți numărul dvs. de telefon', message_en: 'Vă rugăm să introduceți numărul dvs. de telefon' }, stringLength: { message: 'Ați depășit lungimea maximă de 20 caractere pentru acest câmp', message_en: 'You have exceeded the maximum length of 20 characters for this field', max: 20 }, callbackPhone: { alias: 'callback', message: 'Vă rugăm să introduceți numărul dvs. de telefon', message_en: 'Vă rugăm să introduceți numărul dvs. de telefon', 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[professionalCustomersContactFormDefinition_companySize]': { trigger: 'change', validators: { notEmpty: { message: '\u003Cspan style=\'color:#ff0000;\'\u003Eerror.genericConfigurableForm.global-b2bCustomerContact-companySize, error.genericConfigurableForm.companySize\u003C\/span\u003E', message_en: '\u003Cspan style=\'color:#ff0000;\'\u003Eerror.genericConfigurableForm.global-b2bCustomerContact-companySize, error.genericConfigurableForm.companySize\u003C\/span\u003E' } } }, 'values[professionalCustomersContactFormDefinition_message]': { trigger: 'blur', validators: { notEmpty: { message: 'Vă rugăm să completați motivul pentru care ne contactați', message_en: 'Vă rugăm să completați motivul pentru care ne contactați' }, stringLength: { message: 'Numărul de caractere pentru acest câmp trebuie să fie între 0 și 1000', message_en: 'The number of characters for this field must be between 0 and 1000', min: 0 , max: 1000 }, } }, } } ) .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 = 'professionalCustomersContactForm'; if (!formId || formId === 'cfRequest' || formId === 'cfResponse') { formId = 'professionalCustomersContactFormDefinition'; } 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(); } };

dispatcher-check