FS.storeName = 'FossilDE';
FS.langId = -3;
FS.catalogId = 21002;
FS.storeId = 12053;
FS.langPath = 'de_DE';
FS.zipMinLength = 4;
FS.zipMaxLength = 5;
FS.maxPhoneLength = 14;

FS.checkOut = {
	paymentOptions: {
		"creditCard": "#creditCard",
		"payPal": "#payPal",
		"prePayment": "#prePayment",
		"giroPay": "#giroPay",
		"directDebit": "#directDebit",
		"onInvoice": "#onInvoice"
	}
}

/**
	Localized validation rules. These are merged in and overwrite the default rules when FSvalidate runs.
 */
FS.validationRules = {
	zipNumber: function(obj, message) {
		var zipNumber = $(obj).val().replace(/\s/g, "");

		var filter = /\D/;
		if (filter.test(zipNumber) || (zipNumber.length < 4) || (zipNumber.length > 5)) {
			$(obj).data('errorMessage', message);
			return false;
		}
		else {
			return true;
		}
	},
	phone: function(obj, message) {
		var phone = $(obj).val().replace(/\s/g, "");
		phone = phone.replace(/[^0-9]/g, "");
		var filter = new RegExp(/\d{5,}/);
		if(!phone.match(filter)){
			$(obj).data('errorMessage', message);
			return false;
		}
		return true;
	},
	validDate: function(obj, message) {
		// this rule assumes the date field is broken into three seperate fields day, month, and year.
		var obj = $(obj);
		var dayField;
		var day;
		var monthField;
		var month;
		var yearField;
		var year;

		switch (obj.attr("id")) {
			case "birthday_day":
				dayField = obj;
				day = obj.val() - 0;

				monthField = obj.siblings("#birthday_month");
				month = monthField.val() - 1; // Months in JS start from 0.

				yearField = obj.siblings("#birthday_year");
				year = yearField.val() - 0;
			break;

			case "birthday_month":
				dayField = obj.siblings("#birthday_day");
				day = dayField.val() - 0;

				monthField = obj;
				month = obj.val() - 1; // Months in JS start from 0.

				yearField = obj.siblings("#birthday_year");
				year = yearField.val() - 0;
			break;

			case "birthday_year":
				dayField = obj.siblings("#birthday_day");
				day = dayField.val() - 0;

				monthField = obj.siblings("#birthday_month");
				month = monthField.val() - 1; // Months in JS start from 0.

				yearField = obj;
				year = obj.val() - 0;
			break;
		}

		if (!isNaN(day) && !isNaN(month) && !isNaN(year)) {
			var mSeconds = (new Date(year, month, day)).getTime();
			var curDate = new Date();
			var objDate = new Date();
			objDate.setTime(mSeconds);

			if (objDate.getFullYear() !== year || objDate.getFullYear() > curDate.getFullYear() || objDate.getMonth() !== month || objDate.getDate() !== day) {
				dayField.addClass("error").data('errorMessage', message);
				monthField.addClass("error").data('errorMessage', message);
				yearField.addClass("error").data('errorMessage', message);
				return false;
			}
			else {
				dayField.removeClass("error").data('errorMessage', "");
				monthField.removeClass("error").data('errorMessage', "");
				yearField.removeClass("error").data('errorMessage', "");
				return true;
			}
		}
		else {
			dayField.addClass("error").data('errorMessage', message);
			monthField.addClass("error").data('errorMessage', message);
			yearField.addClass("error").data('errorMessage', message);
			return false;
		}
	}
};

FS.local_lang = {
	labels: {
		editItem: 'Artikel bearbeiten',
		close: 'SCHLIE&szlig;EN', /* Needs to stay in caps, adding text-transform:capitalize rule to it turns "ß" into "SS" */
		promoCodes: 'PROMOTIONAL CODES',
		havePromo: 'Have a promo code?',
		shippingMethod: 'VERSANDART',
		searchKeywordItem: 'Suchbegriff oder Artikelnummer',
		storeLocator: 'H&auml;ndlerSuche',
		catalog: 'Katalog',
		signupThankYou: 'Vielen Dank f&uuml;r Ihre Anmeldung',
		giftWithPurchase: 'Free Gift with Purchase',
		specialOffers: 'Special Offers Details',
		sizeChartFitGuide: 'Gr&ouml;&szlig;entabellen und Passformen',
		watchInstructions: 'Watch Instructions',
		emailAFriend: 'An einen Freund schicken',
		mustHaves: 'Must Haves',
		freeStandard: 'FREE on orders over $100',
		freeTwoDay: '&nbsp;',
		freeOverNight: '&nbsp',
		privacyPolicy: 'Datenschutzhinweise',
		termsConditions: 'Allgemeinen Gesch&auml;ftsbedingungen',
		giftCardBalance: 'Check Gift Card Balance',
		whatIsPaypal: 'Was ist Paypal',
		securityNotice: 'Kartenpr&uuml;fnummer',
		yearPlaceholder: 'JJJJ',
		monthPlaceholder: 'MM',
		dayPlaceholder: 'TT',
		TOCmodal: 'ALLGEMEINE GESCH&Auml;FTSBEDINGUNGEN',
		SPmodal: 'SICHERHEIT & DATENSCHUTZ',
		chooseAddress: 'Gespeicherte Adresse auswählen', /* Don't replace umlauts on this one */
		shoppingBagTitle: 'Warenkorb',
		currencyMarker: '&euro;&nbsp;',
		decimalDelimiter: ',',
		color: 'Farbe',
		size: 'Gr&ouml;&szlig;e',
		length: 'L&auml;nge',
		waist: 'Taillenweite',
		itemOutOfStock: 'Dieser Artikel ist derzeit vergriffen.',
		productsSelectedPlural: 'Produkt(e) ausgew&auml;hlt',
		productsSelectedSingular: 'Produkt ausgew&auml;hlt',
		pageLabel: 'Seite',
		subcatColorOpt: 'Weitere Farben',
		personSentYouWishlist: 'has sent you a fossil.com wish list.',
		viewMyList: 'Take a look at my fossil.com wish list!',
		wishList: 'Wishlist',
		wishListTitle: 'Wish List Title',
		wishListFound: 'wish list/s found',
		wishListDeleted: 'has been deleted from your lists.',
		deleteWishListTitle: 'Delete Wish List',
		continueLabel: 'Continue',
		newItem: 'New',
		styleNumber: 'Style #',
		edit: 'Edit',
		createNewList: 'Create New List',
		editListName: 'Edit List Name',
		wishListPossessive: '&rsquo;s Wish Lists:',
		emailWishList: 'Email Your List',
		registeredUsersLogon: 'Registered Users Logon',
		myWishlist: 'My Wish List',
		wlConfirmMsg: '[0] was added to <span class="wishlistName"> [1]',
		wlContinueBtn: 'Continue Shopping',
		wlReviewLists: 'Review My Lists',
		wlViewDetails: 'Details anzeigen',
		addToBag: 'In den Warenkorb'
	},
	errors: {
		giftCardValue: 'Bitte gib einen Wert f&uuml;r die Geschenkkarte ein.',
		newPassword: 'Ein Fehler ist aufgetreten, weil neues Passwort und Passwort Best&auml;tigung nicht &uuml;bereinstimmen, bitte gib in beiden Feldern ein &uuml;bereinstimmendes Passwort ein.',
		passwordSameChars: 'Ein Zeichen in Deinem Passwort erscheint &ouml;fter als dreimal hintereinander. Bitte gib Dein Passwort noch einmal ein.',
		passwordConsecutiveChars: 'A character in your password occurs more consecutively than the allowed limit of 3. Please re-enter your password.',
		passwordFormat: 'Das Passwort muss mindestens 6 Zeichen lang sein und sowohl Buchstaben<br />als auch Zeichen beinhalten. Bitte versuche es noch einmal.',
		messageFormat: 'Bitte beschr&auml;nke Deine Nachricht auf 150 Zeichen.',
		giftCardMessageFormat: 'Bitte beschr&auml;nke Deine Nachricht auf 500 Zeichen.',
		required: 'Das ist ein Pflichtfeld.', /* errMapMsg_0, errMapMsg_2 */
		validEmail: 'Bitte gib eine g&uuml;ltige Email Adresse ein.', /* errMapMsg_1, errMapMsg_14, errMapMsg_30, errMapMsg_41, errMapMsg_43 */
		emailNotFound: 'Email nicht gefunden.', /* errMapMsg_3 */
		validPassword: 'Bitte w&auml;hle ein Passwort', /* errMapMsg_4, errMapMsg_33 */
		passwordMatch: 'Die eingegebenen Passw&ouml;rter stimmen nicht &uuml;berein.', /* errMapMsg_5 */
		validAddress: 'Bitte gib eine g&uuml;ltige Adresse ein.', /* errMapMsg_6 */
		firstNameEmpty: 'Bitte gib Deinen Vornamen ein.', /* errMapMsg_7, errMapMsg_31 */
		lastNameEmpty: 'Bitte gib Deinen Nachnamen ein.', /* errMapMsg_8, errMapMsg_32 */
		addressEmpty: 'Bitte gib Deine Stra&szlig;e ein.', /* errMapMsg_9 */
		streetEmpty: 'Bitte gib Deine Stra&szlig;e ein',
		houseNumberEmpty: 'Bitte gib Deine Hausnummer ein.',
		cityEmpty: 'Bitte gib Deinen Wohnort ein.', /* errMapMsg_10 */
		stateEmpty: 'Bitte w&auml;hle ein Land.', /* errMapMsg_11, errMapMsg_16 */
		validZipcode: 'Bitte gib eine g&uuml;ltige Postleitzahl ein.', /* errMapMsg_12 */
		validPhoneNumber: 'Bitte gib eine g&uuml;ltige Telefonnummer ein.', /* errMapMsg_13, errMapMsg_15 */
		validGCNum: 'Die Geschenkkarten-Nummer ist ung&uuml;ltig; Bitte &uuml;berpr&uuml;fe die Nummer und versuche es noch einmal.', /* errMapMsg_17 */
		validSecurityCode: 'Die eingegebene Pr&uuml,fziffer ist ung&uuml;ltig. Bitte &uuml,berpr&uuml,fe die Nummer und versuche es noch einmal.', /* errMapMsg_18 */
		validCCNum: 'Bitte gib eine g&uuml;ltige Kreditkartennummer ein.', /* errMapMsg_19, errMapMsg_25 */
		noCVC: 'Bitte gib eine g&uuml;ltige Pr&uuml;fziffer ein.', /* errMapMsg_20, errMapMsg_26 */
		validCCExpMonth: 'Bitte w&auml;hle den Ablaufmonat Deiner Kreditkarte.', /* errMapMsg_21 */
		validCCExpYear: 'Bitte w&auml;hle das Ablaufjahr Deiner Kreditkarte.', /* errMapMsg_22 */
		validCCExpDate: 'Not Applicable.', /* errMapMsg_23 */
		selectCardType: 'Bitte w&auml;hle den Kreditkartentyp.', /* errMapMsg_24 */
		noSearchTerm: 'Bitte gib einen Suchbegriff oder eine Artikelnummer ein.', /* errMapMsg_28 */
		minThreeChar: 'Bitte gib mindestens drei Zeichen ein.', /* errMapMsg_29 */
		validPassConf: 'Bitte best&auml;tige Dein Passwort.', /* errMapMsg_34, errMapMsg_38 */
		enterEmail: 'Bitte gib eine Email Adresse ein.', /* errMapMsg_37, errMapMsg_40 */
		emailSignup: 'Email Adresse', /* errMapMsg_37, errMapMsg_40 */
		validCityStateOrZip: 'Bitte gib einen g&uuml;ltigen Ort oder eine g&uuml;ltige Postleitzahl ein', /* errMapMsg_39 */
		enterMonthOfBirth: 'Bitte gib Deinen Geburtsmonat ein.', /* errMapMsg_47 */
		enterDateOfBirth: 'Bitte gib Deinen Geburtstag ein.', /* errMapMsg_48 */
		enterYearOfBirth: 'Bitte gib Dein Geburtsjahr ein.', /* errMapMsg_49 */
		validDate: 'Bitte gib ein g&uuml;ltiges Datum ein.',
		lastFourSSN: 'Not Applicable', /* errMapMsg_50 */
		billMeLaterTOC: 'Wir k&ouml;nnen Deine Bestellung nicht abschlie&szlig;en. Bitte stimme den allgemeinen Gesch&auml;ftsbedingungen und unseren Datenschutzrichtlinien zu.', /* errMapMsg_51 */
		validPromoCode:  'Dieser Promotion Code ist leider ung&uuml;ltig. Bitte &uuml;berpr&uuml;fe den Code und versuche es erneut.',
		enterValidPromoCode: 'Ung&uuml;ltiger Promotion Code',
		promoCodeAlreadyUsed: 'wurde doppelt eingegeben',
		bundleSelectOneItem: 'Please select at least one product from this bundle',
		pleaseSelectLabel: 'Bitte w&auml;hle eine ',
		selectColor: 'Bitte w&auml;hle eine Farbe',
		selectLength: 'Bitte w&auml;hle eine L&auml;nge',
		termsAgreeUnchecked: 'Bitte stimme den Allg. Gesch&auml;ftsbedingungen und unseren Datenschutzrichtlinien zu',
		searchMinimumChars: 'Bitte gib mindestens 3 Zeichen ein.',
		shippingSameCountry: 'Your shipping address must be in the same country as your billing address.',
		addItemsWishlistEmail: 'Please add some items to your wishlist before emailing it.',
		addItemsWishlistShare: 'Please add some items to your wishlist before sharing it.',
		nameWishlist: 'Please enter a name for your wish list.',
		wishlistNetworkError: 'There was a network or server error processing your request or your session timed out. Please try again.',
		noWishlistFound: 'No results found.<br />Please retry a different search.',
		deleteWishlist: 'There was an error deleting your wishlist. Please try again later.',
		wishListNameEmpty: 'Please enter a name for your wish list.',
		addToWishlistError: 'There is an error adding to Wishlist, please try again at a later time.'
	}
};

