function validatePasswordField(id, errorMessagePosition) {
	var passwordValidation = new LiveValidation(id, {insertAfterWhatNode: errorMessagePosition, validMessage: '✔', wait: 500});
	passwordValidation.add(Validate.Presence, {failureMessage: "Bitte geben Sie ein Passwort an."});
	passwordValidation.add(Validate.Format, {pattern: /.*(?=.{6,})(?=.*[a-zA-Z])(?=.*\d).*/i, failureMessage: "Damit Ihr Passwort sicher ist, muss es mindestens 6 Zeichen lang sein und einen Buchstaben sowie eine Zahl enthalten."});
}

function validateEmailField(id, errorMessagePosition) {
	var emailValidation = new LiveValidation(id, {insertAfterWhatNode: errorMessagePosition, validMessage: '✔', wait: 500});
	emailValidation.add(Validate.Presence, {failureMessage: "Bitte geben Sie eine E-Mail-Addresse an."});
	emailValidation.add(Validate.Email, {failureMessage: "Die eingegebene E-Mail-Adresse ist nicht g\u00FCltig."} );
}

function validateTwoFieldsForMatch(compareToElementId, sourceElementId, errorMessagePosition, abstractObjectNames) {
	var matchValidation = new LiveValidation(sourceElementId, {insertAfterWhatNode: errorMessagePosition, validMessage: '✔', wait: 500});
	matchValidation.add(Validate.Confirmation, {match: compareToElementId, failureMessage: "Die "+abstractObjectNames+" stimmen nicht \u00FCberein."} );
}

function validateEmptyField(id, errorMessagePosition) {
	var emptyValidation = new LiveValidation(id, {insertAfterWhatNode: errorMessagePosition, validMessage: ' ', wait: 500});
	emptyValidation.add(Validate.Presence, {failureMessage: " "});
}

function validateEmptyFieldWithText(id, errorMessagePosition, abstractObjectText) {
	var emptyValidationText = new LiveValidation(id, {insertAfterWhatNode: errorMessagePosition, validMessage: '✔', wait: 500});
	emptyValidationText.add(Validate.Presence, {failureMessage: "Bitte geben Sie "+abstractObjectText+" an."});
}

function validateVatNumber(id, errorMessagePosition) {
	var vatNumberValidation = new LiveValidation(id, {insertAfterWhatNode: errorMessagePosition, validMessage: '✔', wait: 500});
	vatNumberValidation.add(Validate.Presence, {failureMessage: "Bitte geben Sie eine Ust-IdNr. an."});
	vatNumberValidation.add(Validate.Format, {pattern: /(^DE\d{9}$)|(^ATU\d{8}$)|(^BE\d{10}$)|(^BG(\d{9}|\d{10})$)|(^CY\S{9}$)|(^CZ(\d{8}|\d{9}|\d{10})$)|(^DK\d{2} \d{2} \d{2} \d{2}$)|(^EE\d{9}$)|(^EL\d{9}$)|(^ES\S{9}$)|(^FI\d{8}$)|(^FR\S{2} \d{9}$)|(^GB(\S{5}|(\d{3} \d{4} \d{2})|(\d{3} \d{4} \d{2} \d{3}))$)|(^HU\d{8}$)|(^IE\S{8}$)|(^IT\d{11}$)|(^LT(\d{9}|\d{12})$)|(^LU\d{8}$)|(^LV\d{11}$)|(^MT\d{8}$)|(^NL\S{12}$)|(^PL\d{10}$)|(^PT\d{9}$)|(^RO\d{2,10}$)|(^SE\d{12}$)|(^SI\d{8}$)|(^SK\d{10}$)/i,failureMessage: "Bitte prüfen Sie das Format (DE999999999)"});
}

