MITGLIEDERBEREICH
SWAROVSKI CRYSTAL SOCIETY
MITGLIEDER LOGIN
ONLINE-KONTO ERSTELLEN
Gib unten deine SCS Mitgliedsnummer und ein gültiges Datum ein, um dein Konto zu registrieren
Mitgliedsnr. *
-
Mitgliedschafts Nr. *
Karte gültig seit *
Karte gültig seit *
E-mail address *
Set a password *
Mind. 7 Zeichen / inkl. 1 Ziffer
$(this).closest('#at-registerWithMembershipNumberAndDateFormDefinitionWrapper').find('.js-at-registerWithMembershipNumberAndDateFormDefinition')
.formValidation(
{
autoFocus: false,
framework: 'bootstrap',
icon: {
valid: null,
invalid: null,
validating: null
},
fields: {
'values[registerWithMembershipNumberAndDateFormDefinition_membershipNumber1]': {
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-9]+$', ''))) {
messages.push('Bitte gib eine Zahl ein');
messagesEN.push('Please enter a numeric value');
errorOccured |= true;
}
if (errorOccured) {
return {
valid: false,
message: messages.join('<br/>'),
message_en: messagesEN
}
} else {
return true;
}
}
},
notEmpty: {
message: 'Bitte gib eine Mitgliedsnr. ein',
message_en: 'Please enter a membership no.'
},
stringLength: {
message: 'In diesem Feld darf die Anzahl der Zeichen nur zwischen 3 und 3 liegen',
message_en: 'The number of characters for this field must be between 3 and 3',
min: 3
,
max: 3
},
}
},
'values[registerWithMembershipNumberAndDateFormDefinition_membershipNumber2]': {
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-9]+$', ''))) {
messages.push('Bitte gib eine Zahl ein');
messagesEN.push('Please enter a numeric value');
errorOccured |= true;
}
if (errorOccured) {
return {
valid: false,
message: messages.join('<br/>'),
message_en: messagesEN
}
} else {
return true;
}
}
},
notEmpty: {
message: 'Bitte gib eine Mitgliedsnr. ein',
message_en: 'Please enter a membership no.'
},
stringLength: {
message: 'In diesem Feld darf die Anzahl der Zeichen nur zwischen 7 und 7 liegen',
message_en: 'The number of characters for this field must be between 7 and 7',
min: 7
,
max: 7
},
}
},
'values[registerWithMembershipNumberAndDateFormDefinition_validFromMonth]': {
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-9]+$', ''))) {
messages.push('Bitte gib einen gültigen Monat ein.');
messagesEN.push('Please enter a valid month');
errorOccured |= true;
}
if (errorOccured) {
return {
valid: false,
message: messages.join('<br/>'),
message_en: messagesEN
}
} else {
return true;
}
}
},
notEmpty: {
message: 'Bitte gib einen gültigen Monat ein.',
message_en: 'Please enter a valid month'
},
stringLength: {
message: 'In diesem Feld darf die Anzahl der Zeichen nur zwischen 2 und 2 liegen',
message_en: 'The number of characters for this field must be between 2 and 2',
min: 2
,
max: 2
},
}
},
'values[registerWithMembershipNumberAndDateFormDefinition_validFromYear]': {
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-9]+$', ''))) {
messages.push('Bitte gib ein gültiges Jahr ein');
messagesEN.push('Please enter a valid year');
errorOccured |= true;
}
if (errorOccured) {
return {
valid: false,
message: messages.join('<br/>'),
message_en: messagesEN
}
} else {
return true;
}
}
},
notEmpty: {
message: 'Bitte gib ein gültiges Jahr ein',
message_en: 'Please enter a valid year'
},
stringLength: {
message: 'In diesem Feld darf die Anzahl der Zeichen nur zwischen 4 und 4 liegen',
message_en: 'The number of characters for this field must be between 4 and 4',
min: 4
,
max: 4
},
}
},
'values[registerWithMembershipNumberAndDateFormDefinition_email]': {
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.!#$%&\'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+$', ''))) {
messages.push('Please enter a valid email address.');
messagesEN.push('Please enter a valid email address.');
errorOccured |= true;
}
if (errorOccured) {
return {
valid: false,
message: messages.join('<br/>'),
message_en: messagesEN
}
} else {
return true;
}
}
},
notEmpty: {
message: 'Please enter an email address.',
message_en: 'Please enter an email address.'
},
stringLength: {
message: 'In diesem Feld darf die Anzahl der Zeichen nur zwischen 1 und 70 liegen',
message_en: 'The number of characters for this field must be between 1 and 70',
min: 1
,
max: 70
},
}
},
'values[registerWithMembershipNumberAndDateFormDefinition_password]': {
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-9])(?=.*[A-Z]).{7,}$)', ''))) {
messages.push('The password must be at least 7 characters long and contain a number and a capital letter.');
messagesEN.push('The password must be at least 7 characters long and contain a number and a capital letter.');
errorOccured |= true;
}
if (errorOccured) {
return {
valid: false,
message: messages.join('<br/>'),
message_en: messagesEN
}
} else {
return true;
}
}
},
notEmpty: {
message: 'Please set a password.',
message_en: 'Please set a password.'
},
}
}
}
}
)
.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 = 'registerWithMembershipNumberAndDate';
if (!formId || formId === 'cfRequest' || formId === 'cfResponse') {
formId = 'registerWithMembershipNumberAndDateFormDefinition';
}
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();
}
};
DAS FINDEN SIE IM MITGLIEDERBEREICH:
SCS Inside
Sonderangebote, Vorschauen, Kristallgewinne, Voranmeldungen, Mitgliederporträts und spezielle Publikationen. All dies und mehr wurde exklusiv auf die Interessen der SCS Mitglieder zugeschnitten.
Designer
Erfahren Sie alles über die einzelnen Swarovski Designer, ihre Philosophien und Arbeitsweisen. Lesen und laden Sie einzelne Designerlisten und persönliche Interviews herunter.
Services and Downloads
Video-Tipps für die Pflege und Präsentation von Swarovski Kristall, Silver Crystal und SCS Artikelverzeichnisse, regelmäßig aktualisierte Listen von Silver Crystal Außerprogrammnahmen, Reisedokumentationen und Zugang zu myScreensaver.
Archiv
Entdecken Sie das exklusive SCS Archiv für eine Reihe von beliebten Top-Angeboten aus längst vergangenen Tagen.