		// Language specific JS values managed through CMS
		DI = {
			lang : {
				datePicker : {
					dayNamesLong		: ["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],
					dayNamesMin			: ["S","M","T","W","T","F","S"],
					monthNames			: ['Jan','Feb','Mar','Apr','May','Jun','July','Aug','Sep','Oct','Nov','Dec'],
					buttonImage			: '/img/icons/calendar.png',
					prevText			: 'Prev',
					nextText			: 'Next',
					buttonText			: 'Click to choose date'
				},
				searchDateRange : {
					rangeText			: 'Selected search period: ',
					rangeTextSeparator	: ' to '
				},
				errorMessages : {
					defaultGlobalErrorMessage : [
						'There is a problem with some of the information you have submitted.<br/>Please amend the fields highlighted below and re-submit this form.'
					],
					defaultFormFieldErrorMessages : {
						validateAccountNumber: 'Invalid account number.',
						validateAlphaNumeric: 'This field should contain letters and numbers only.',
						validateCreditCard: 'Invalid card number.',
						cardSecurityCode: 'Invalid card security code.',
						validateDateRestriction: 'Invalid date.',
						validateDateTimeRange: function(validationRoutineDetails) {
							var dateParts, maxDate, minDate;
							if (validationRoutineDetails.maxDate) {
								dateParts = validationRoutineDetails.maxDate.split("-");
								maxDate = dateParts[2] + '-' + dateParts[1] + '-' + dateParts[0];
							}
							if (validationRoutineDetails.minDate) {
								dateParts = validationRoutineDetails.minDate.split("-");
								minDate = dateParts[2] + '-' + dateParts[1] + '-' + dateParts[0];
							}
							if (maxDate && minDate) {
								return 'Please ensure that the date you have entered is between ' + minDate + ' and ' + maxDate + '.';
							}
							else if (maxDate && (minDate === undefined)) {
								return 'Please ensure that the date you have entered is earlier than ' + maxDate + '.';
							}
							else if (minDate && (maxDate === undefined)) {
								return 'Please ensure that the date you have entered is later than ' + minDate + '.';
							}
							else {
								return 'Invalid date. Please ensure that the date you have entered is within the given range.';
							}
						},
						validateDoubleRange: function(validationRoutineDetails) {
							if (validationRoutineDetails.max && validationRoutineDetails.min) {
								return 'Please ensure that number you have entered has two decimal places and is between \u00A3' + validationRoutineDetails.min + '.00 and \u00A3' + validationRoutineDetails.max + '.00.';
							}
							else {
								return 'Please ensure that number you have entered has two decimal places and falls within the given range.';
							}
						},
						validateEmail: 'Invalid email address.',
						validateLength: function(validationRoutineDetails) {
							if (validationRoutineDetails.max && validationRoutineDetails.min) {
								return 'Please ensure that the length of your input is between ' + validationRoutineDetails.min + ' and ' + validationRoutineDetails.max + ' characters in length.';
							}
							else if (validationRoutineDetails.max && (validationRoutineDetails.min === undefined)) {
								return 'Please ensure that the length of your input is less than ' + validationRoutineDetails.max + ' characters in length.';
							}
							else if (validationRoutineDetails.min && (validationRoutineDetails.max === undefined)) {
								return 'Please ensure that the length of your input is greater than ' + validationRoutineDetails.min + ' characters in length.';								
							}
							else {
								return 'Please ensure that the length of your input is within the correct range.';
							}
						},
						validateLongRange: 'Please ensure that the number you have entered falls within the given range.',
						validatePhoneNumber: 'Invalid phone number.',
						validatePostcode: 'Invalid postcode.',
						validateRegExp: 'Invalid input.',
						validateSortcode: 'Invalid sort code.',
						required: 'Please enter a value.',
						validateTransactionAmounts : 'Please ensure that you enter a transaction amount in one currency only.',
						validDate: 'Invalid date.',
						validateDatesRelativeRange: 'Please ensure that the dates you have entered are correct.',
						amountEqualTo: 'Please ensure that number you have entered has two decimal places.',
						amountBetween: 'Please ensure that number you have entered are correct and have two decimal places.',
						cardNumberAndSecurityCode: 'Please ensure that the card number and security code you have entered are correct.',
						accessCode: 'Please ensure that the access code you have entered is correct.',
						validateNumeric: 'Please ensure that the value you have entered contains numbers only.',
						newPasswordMatch: 'Please ensure that the new passwords you have entered are identical.',
						quickTransfer: 'Please ensure that the information you have entered is correct.',
						referenceNumberMatch: 'Please ensure that the reference numbers you have entered match.',
						memorableInfoMatch: 'Please ensure that the memorable information items you have entered match.',
						specificDateWithRadio: function(validationRoutineDetails) {
							var dateParts, maxDate, minDate;
							if (validationRoutineDetails.maxDate) {
								dateParts = validationRoutineDetails.maxDate.split("-");
								maxDate = dateParts[2] + '-' + dateParts[1] + '-' + dateParts[0];
							}
							if (validationRoutineDetails.minDate) {
								dateParts = validationRoutineDetails.minDate.split("-");
								minDate = dateParts[2] + '-' + dateParts[1] + '-' + dateParts[0];
							}
							if (maxDate && minDate) {
								return 'Please ensure that the date you have entered is between ' + minDate + ' and ' + maxDate + '.';
							}
							else if (maxDate && (minDate === undefined)) {
								return 'Please ensure that the date you have entered is earlier than ' + maxDate + '.';
							}
							else if (minDate && (maxDate === undefined)) {
								return 'Please ensure that the date you have entered is later than ' + minDate + '.';
							}
							else {
								return 'Invalid date. Please ensure that the date you have entered is within the given range.';
							}
						},
						specificAmountWithRadio: function(validationRoutineDetails) {
							if (validationRoutineDetails.max && validationRoutineDetails.min) {
								return 'Please enter a valid amount between \u00A3' + validationRoutineDetails.min + ' and \u00A3' + validationRoutineDetails.max + '.';
							}
							else {
								return 'Please enter a valid amount to transfer.';
							}
						},
						searchTransactionDateRange: function(validationRoutineDetails) {
							if (validationRoutineDetails.maxRangeInMonths) {
								return 'Please select a search period of no more than ' + validationRoutineDetails.maxRangeInMonths + ' months.';
							}
							else {
								return 'Please select a search period within the stated maximum number of months.';
							}
						},
						isaAmountWithRadio: function(validationRoutineDetails) {
							if (validationRoutineDetails.max && validationRoutineDetails.min) {
								return 'Please enter a valid amount between \u00A3' + validationRoutineDetails.min + ' and \u00A3' + validationRoutineDetails.max + '.';
							}
							else {
								return 'Please enter a valid amount.';
							}
						},
						timeYearsMonths: 'Please ensure that the values you have entered are correct. Note that the number of months entered cannot be more than 11.',
						validatePhoneNumberExtension: 'Please ensure the phone number you have entered is correct.',
						validateBalanceTransfer: function(validationRoutineDetails) {
							if (validationRoutineDetails.max && validationRoutineDetails.min) {
								return 'Please enter a valid credit card number and balance to transfer. Note that the minimum transfer amount is \u00A3' + validationRoutineDetails.min + ' and the maximum is \u00A3' + validationRoutineDetails.max + '.';
							}
							else {
								return 'Please enter a valid credit card number and balance to transfer.';
							}
						},
						validateNationalInsuranceNo : 'Please ensure the National Insurance Number you have entered is correct.',
						emailAddressMatch: 'Please ensure that the email addresses you have entered are identical.',
						validateMultipleAddressFields: 'Please ensure that you complete at least one address field.',
						validateOtherSelection: 'Please enter a value.',
						mobileNumberMatch: 'Please ensure that the mobile numbers you have entered are identical.',
						validateCurrency: 'Please enter a valid currency amount.',
						validateSelectSheets: 'Please choose sheets.',
						validateHybridSelect: 'Please select an account.'
					}
				}
			}
		};
