Firmengeschenke finden leicht gemacht. Mit der umfangreichen Kollektion an Geschenken von Swarovski ist es leicht, genau das Richtige zu finden. Ganz gleich, ob du dich für langjährige Treue bedanken, Anerkennung ausdrücken oder Talent beziehungsweise neue Aufgabenbereiche feiern möchtest. Von Deko-Objekten für Heim und Büro über Schmuck und Firmenauszeichnungen bis hin zu Elektro- und maßgefertigten Artikeln – hier findest du viele brillante Ideen. Wir freuen uns, deine Fragen zu beantworten.
$(this).closest('#us-corporateGiftsContactFormConfigWrapper').find('.js-us-corporateGiftsContactFormConfig')
.formValidation(
{
autoFocus: false,
framework: 'bootstrap',
icon: {
valid: null,
invalid: null,
validating: null
},
fields: {
'values[corporateGiftsContactFormDefinition_title]': {
trigger: 'change',
validators: {
notEmpty: {
message: '\u003Cspan style=\'color:#ff0000;\'\u003Eerror.genericConfigurableForm.global-b2bCustomerContact-title\u003C\/span\u003E',
message_en: '\u003Cspan style=\'color:#ff0000;\'\u003Eerror.genericConfigurableForm.global-b2bCustomerContact-title\u003C\/span\u003E'
}
}
},
'values[corporateGiftsContactFormDefinition_firstName]': {
trigger: 'blur',
validators: {
notEmpty: {
message: 'Please enter your first name.',
message_en: 'Please enter your first name.'
},
stringLength: {
message: 'Sie haben mehr Zeichen eingegeben als die in diesem Feld erlaubte Anzahl von 40 Zeichen',
message_en: 'You have exceeded the maximum length of 40 characters for this field',
max: 40
},
}
},
'values[corporateGiftsContactFormDefinition_lastName]': {
trigger: 'blur',
validators: {
notEmpty: {
message: 'Please enter your last name.',
message_en: 'Please enter your last name.'
},
stringLength: {
message: 'Sie haben mehr Zeichen eingegeben als die in diesem Feld erlaubte Anzahl von 40 Zeichen',
message_en: 'You have exceeded the maximum length of 40 characters for this field',
max: 40
},
}
},
'values[corporateGiftsContactFormDefinition_jobTitle]': {
trigger: 'blur',
validators: {
stringLength: {
message: 'Sie haben mehr Zeichen eingegeben als die in diesem Feld erlaubte Anzahl von 40 Zeichen',
message_en: 'You have exceeded the maximum length of 40 characters for this field',
max: 40
},
}
},
'values[corporateGiftsContactFormDefinition_companyName]': {
trigger: 'blur',
validators: {
notEmpty: {
message: 'Bitte gib einen Firmennamen ein.',
message_en: 'Please enter your company name.'
},
stringLength: {
message: 'Sie haben mehr Zeichen eingegeben als die in diesem Feld erlaubte Anzahl von 40 Zeichen',
message_en: 'You have exceeded the maximum length of 40 characters for this field',
max: 40
},
}
},
'values[corporateGiftsContactFormDefinition_email]': {
trigger: 'blur',
validators: {
regexp: {
regexp: new RegExp('^(?=.{0,255}$)(?=.{0,64}@)(?:[a-zA-Z0-9!#$%&\'*+\/=?^_‘{|}~-]+(?:\\.[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](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\\.)+(?=[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: 'Geschäftliche E-Mail-Adresse',
message_en: 'Please enter your business email address'
},
notEmpty: {
message: 'Geschäftliche E-Mail-Adresse',
message_en: 'Please enter your business email address'
},
stringLength: {
message: 'In diesem Feld darf die Anzahl der Zeichen nur zwischen 0 und 70 liegen',
message_en: 'The number of characters for this field must be between 0 and 70',
min: 0
,
max: 70
},
}
},
'values[corporateGiftsContactFormDefinition_emailConfirm]': {
trigger: 'blur',
validators: {
regexp: {
regexp: new RegExp('^(?=.{0,255}$)(?=.{0,64}@)(?:[a-zA-Z0-9!#$%&\'*+\/=?^_‘{|}~-]+(?:\\.[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](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\\.)+(?=[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: 'Geschäftliche E-Mail-Adresse',
message_en: 'Please enter your business email address'
},
notEmpty: {
message: 'Geschäftliche E-Mail-Adresse',
message_en: 'Please enter your business email address'
},
stringLength: {
message: 'In diesem Feld darf die Anzahl der Zeichen nur zwischen 0 und 70 liegen',
message_en: 'The number of characters for this field must be between 0 and 70',
min: 0
,
max: 70
},
identical: {
field: 'values[corporateGiftsContactFormDefinition_email]',
message: 'Die Angaben stimmen nicht überein.',
message_en: 'The fields do not match.'
}
}
},
'values[corporateGiftsContactFormDefinition_country]': {
trigger: 'change',
validators: {
notEmpty: {
message: '\u003Cspan style=\'color:#ff0000;\'\u003Eerror.genericConfigurableForm.global-b2bCustomerContact-country\u003C\/span\u003E',
message_en: '\u003Cspan style=\'color:#ff0000;\'\u003Eerror.genericConfigurableForm.global-b2bCustomerContact-country\u003C\/span\u003E'
}
}
},
'values[corporateGiftsContactFormDefinition_phone]': {
trigger: 'blur',
validators: {
stringLength: {
message: 'Sie haben mehr Zeichen eingegeben als die in diesem Feld erlaubte Anzahl von 20 Zeichen',
message_en: 'You have exceeded the maximum length of 20 characters for this field',
max: 20
},
callbackPhone: {
alias: 'callback',
message: '\u003Cspan style=\'color:#ff0000;\'\u003Eerror.genericConfigurableForm.global-b2bCustomerContact-phone\u003C\/span\u003E',
message_en: '\u003Cspan style=\'color:#ff0000;\'\u003Eerror.genericConfigurableForm.global-b2bCustomerContact-phone\u003C\/span\u003E',
callback: function (value, validator, $field) {
var matchesRegex = true;
var regexList = [];
for (var i = 0; i < regexList.length; i++) {
matchesRegex = matchesRegex && (value.match(regexList[i])[0] === value);
}
var prefixCountry = $field.siblings('.flag-container').children('.selected-flag').attr('title');
var isValidPrefix = prefixCountry !== undefined && prefixCountry !== 'Unknown';
return value === '' || (matchesRegex && isValidPrefix);
}
},
}
},
'values[corporateGiftsContactFormDefinition_companySize]': {
trigger: 'change',
validators: {
notEmpty: {
message: '\u003Cspan style=\'color:#ff0000;\'\u003Eerror.genericConfigurableForm.global-b2bCustomerContact-companySize\u003C\/span\u003E',
message_en: '\u003Cspan style=\'color:#ff0000;\'\u003Eerror.genericConfigurableForm.global-b2bCustomerContact-companySize\u003C\/span\u003E'
}
}
},
'values[corporateGiftsContactFormDefinition_message]': {
trigger: 'blur',
validators: {
notEmpty: {
message: 'Please fill in your contact reason',
message_en: 'Please fill in your contact reason'
},
stringLength: {
message: 'In diesem Feld darf die Anzahl der Zeichen nur zwischen 0 und 1000 liegen',
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) {
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('small[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", "help-block");
$(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) {
/* Remove the field messages */
$errorContent = data.element.closest('.form-combo-molecule').find('.errors');
$errorContent.find('small[data-field="' + data.field + '"]').remove();
$errorContent.find('small[data-fv-result="INVALID"]').removeAttr("style");
})
.on('success.form.fv', function() {
var formId = 'corporateGiftsContactForm';
if (!formId || formId === 'cfRequest' || formId === 'cfResponse') {
formId = 'corporateGiftsContactFormDefinition';
}
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();
}
};