var fb = fb || {};

var v;

$(function () {

    fb.init();

    $.validator.addMethod("phone", function (value) {

        if (value == '')
            return true;

        var pattern = /^0[0-9-\(\) ]*$/;

        return pattern.test(value);

    }, 'Ange ett korrekt telefonnummer (inklusive riktnummer).');

    $.validator.addMethod("zip", function (value) {

        var pattern = /^\d{5}$/;

        if (pattern.test(value)) {
            return true;
        }
        return false;


    }, 'Ange ett korrekt postnummer.');

    $.validator.addMethod("max250", function (value) {

        return value.length <= 250;

    }, 'Du f&aring;r ange h&ouml;gst 250 tecken');

    $.validator.addMethod("fieldForPhoneOrEmail", function (value, element) {

        if (/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))$/i.test(value))
            return true;

        var pattern = /^0[0-9-\(\) ]*$/;

        return pattern.test(value);

    }, "Mail eller telefonnummer är obligatoriskt");

    $.validator.addMethod("phoneOrEmail", function (value, element) {

        if ($('#Email').val().length > 0 || $('#Phone').val().length > 0) {

            if ($('#Phone').val().length > 0) {

                $('label[for=Email]').remove();

            }
            if ($('#Email').val().length > 0) {

                $('label[for=Phone]').remove();

            }
            return true;
        }
        return false;

    }, 'Du måste fylla i email eller telefonnummer');

    $.validator.addMethod("numberShort", function (value) {
        var pattern = /^[0-9, ]*$/;
        return pattern.test(value);
    }, 'Felaktigt pris');

    $.validator.addMethod("firstname", function (value) {
        return value.length < 40;
    }, 'Förnamn får inte vara längre än 40 tecken');

    $.validator.addMethod("lastname", function (value) {
        return value.length < 40;
    }, 'Efternamn får inte vara längre än 40 tecken');

    $.validator.addMethod("zone", function (value) {

        var opt = $("#zone").val().length;

        return opt > 0;

    }, 'Välj ett område');

    $.validator.addMethod("lastnameandfirstnamelength", function (value) {
    	return ($('#firstnamecontactme').val().length + $('#lastnamecontactme').val().length) < 49;
    });

    var container = $(".errorContainer");

    if (location.search != "?pedit=true") {
        v = $("#aspnetForm").validate({

            rules: {
            	firstname: { required: true, maxlength: 40, lastnameandfirstnamelength: true },
            	lastname: { required: true, maxlength: 40, lastnameandfirstnamelength: true },
                fieldForPhoneOrEmail: { required: true, maxlength: 40, fieldForPhoneOrEmail: true },
                zone: { zone: true },
                username: { required: true, minlength: 2 },
                password: { required: true, minlength: 5 },
                phone: { phone: true, phoneOrEmail: true },
                confirm_password: { required: true, minlength: 5, equalTo: "#password" },
                email: { email: true, required: true },
                topic: { required: "#newsletter:checked", minlength: 2 },
                agree: "required",
                buildingtype: "required",
                emailsecond: { email: true, required: true },
                mess: { required: true, minlength: 3, maxlength: 250 }

            },
            messages: {
                firstname: { required: "F&ouml;rnamn &auml;r obligatoriskt.", maxlength: "Förnamn får inte överstiga 40 tecken", lastnameandfirstnamelength: "Förnamn tillsammans med efternamn får ej överstiga 49 tecken" },
                lastname: { required: "Efternamn &auml;r obligatoriskt.", maxlength: "Efternamn får inte överstiga 40 tecken", lastnameandfirstnamelength: "Förnamn tillsammans med efternamn får ej överstiga 49 tecken" },
                fieldForPhoneOrEmail: { required: "Telefonnummer eller epost är obligatorisk", maxlength: "Efternamn får inte överstiga 40 tecken" },
                zone: { required: "Gatuadress &auml;r obligatoriskt" },
                email: "Ange en korrekt e-postadress",
                phone: { phone: "Ange ett korrekt telefonnummer (inklusive riktnummer)" },
                agree: "Var god acceptera villkoren",
                buildingtype: "Var god välj en bostadstyp",
                emailsecond: "Ange en korrekt e-postadress",
                mess: "Glöm inte att skriva något"
            },
            errorContainer: container,
            errorLabelContainer: $("ol", container),
            wrapper: "li",
            meta: "validate",
            submitHandler: function (form) {

            },
            invalidHandler: function (form, validator) {

            	$(".modalCloseImg.simplemodal-close").addClass("close-error");
            },
            highlight: function (element, errorClass) {
                $(element).addClass('error');

                if ($("#zone").length != 0) {
                    var len = $("#zone").val().length;

                    var contains = false;

                    for (var i = 0; i < v.errorList.length; i++) {
                        if (v.errorList[i].element == "zone") {
                            contains = true;
                        }
                    }

                    if (len < 1 && !contains) {
                        v.errorList.push({ "element": "zone", "message": "Du måste välja ett kontor" });
                        v.showErrors();
                    }
                 }
                    if (v.numberOfInvalids() == 0) {
                     	$(".modalCloseImg.simplemodal-close").addClass("close-error");
                    }

            },
            unhighlight: function (element, errorClass) {
                $(element).removeClass('error');

                if ($("#zone").length != 0) {
                    var len = $("#zone").val().length;

                    var contains = false;

                    for (var i = 0; i < v.errorList.length; i++) {
                        if (v.errorList[i].element == "zone") {
                            contains = true;
                        }
                    }

                    if (len < 1 && !contains) {
                    	v.errorList.push({ "element": "zone", "message": "Du måste välja ett kontor" });
                        v.showErrors();
                    }
                 }
                    if (v.numberOfInvalids() == 0) {
                      	$(".modalCloseImg.simplemodal-close").removeClass("close-error");
                    }

            }
        });
    }
});

fb = {

	init: function () {
		jQuery.support.cors = true;
		$('.lang').click(function (e) { e.preventDefault(); });
		Galleria.loadTheme('/templates/Scripts/spanien/galleria/themes/twelve/galleria.twelve.js');
		$('#galleria').galleria();
		fb.tipAFriend.init();
		fb.general.init();
		fb.elementProperties.init();
		fb.tooltips.init();
		fb.formProperties.init();
		fb.forecast.init();
		fb.locateOffice.init();
		fb.smallSearchBox.init();
		fb.contactMeForm.init();
		fb.smallObjectSearch.init();
		fb.searchForm.init();
		fb.ie7ImageLinkFix.init();


		if ($(".searchModule").length != 0)
			fb.searchTools.init();

		if ($("div.carousel").length != 0 || $("div.largeCarousel").length != 0)
			fb.carousel.init();

		if ($(".modal").length != 0 || $(".ttonclick").length != 0) {
			fb.simpleModal.init();
			fb.getLanguage.init();
		}

		$('#zone').change(function () {
			if ($(this).val().length < 1) {
				//v.errorList.push({"element": "zone", "message": "Du måste välja ett område"});
				v.form();
			}
			else {

				v.form();
			}
		});

	},
	general: {

		init: function () {

			$(".breadcrumbs ul li").last().addClass("last");
			$(".langBox .content a").last().addClass("last");
			$("ul.infoListning li, .staffList li, .check.spec").addClass("cf");
			$("ul.infoListning li").last().css({ "border-bottom": "3px solid black" });
			$("ul.arrowList li a.active").first().parent().addClass("active");
			$(".editorContent .cite").append("<span></span>");

			$(".editorContent ol li").each(function () {
				var content = $(this).text();
				$(this).empty();
				$(this).append("<span>" + content + "</span>");
			});

			$('.searchPageButton').click(function () {
				var path = $("a.searchLink").attr("href");
				var query = path + $(".searchPageButton").prev().val();

				window.location = query;
			});

			var len = $(".price span").text().length;
			if (len > 7)
				$(".price").css({ "font-size": "35px" });


			$(".cite").append("<span></span>");

			$("img.hasDesc").each(function () {

				var imgWidth = $(this).width();
				var desc = $(this).attr("title");
				var style = $(this).attr("style");
				var pos = style.replace("float:", "").replace(";", "");

				$(this).attr("style", "");
				$(this).wrap("<div class='aside " + pos + "' style='width:" + imgWidth + "px' />");
				$(this).parent().append("<span class='imageText'>" + desc + "</span>");

			});
		}
	},
	searchForm: {
		init: function () {
			fb.searchForm.setupImageMap();
			$('.searchPageSubmit').click(fb.searchForm.setupSearchButton);
			$('.searchModule .objectTypes input').click(fb.searchForm.updateKeywords);
		},
		updateKeywords: function (event) {

			var objectTypes = new Array();

			var objectType = $('.searchModule .objectTypes').find('input').each(function (index) {
				if ($(this).is(':checked')) {
					objectTypes.push($(this).attr('data-value'));
				}
			});

			var types = objectTypes.toString();

			var url = "/Templates/Services/Internal/AjaxService.svc/GetKeywords";
			$.ajax({
				type: 'GET',
				url: url,
				data: { objectTypeKeys: types },
				datatype: 'jsonp',
				contentType: "application/jsonp; charset=utf-8",
				success: function (data) {

					$("ul.keywordList li").remove();
					$.each(data.d, function (key) {
						$("ul.keywordList").append('<li class="cf"><input type="checkbox" data-value="' + this.Value + '"><span class="listText"> ' + this.Text + '</span></li>');
					});

				},
				error: function (response) {
				}
			});
		},
		setupSearchButton: function (event) {
			event.preventDefault();

			var path = $(".searchModule  a.objectSearchPage").attr("href");

			var areas = new Array();

			var area = $('.searchModule .severalSelectArea.big').find('input').each(function (index) {
				if ($(this).is(':checked')) {
					areas.push($(this).attr('data-value'));
				}
			});

			var query = path + "?omraade=" + areas.toString();

			var keywords = new Array();

			var keyword = $('.searchModule .severalSelectKeywords').find('input').each(function (index) {
				if ($(this).is(':checked')) {
					keywords.push($(this).attr('data-value'));
				}
			});

			query += "&Nyckelord=" + keywords.toString();

			var objectTypes = new Array();

			var objectType = $('.searchModule .objectTypes').find('input').each(function (index) {
				if ($(this).is(':checked')) {
					objectTypes.push($(this).attr('data-value'));
				}
			});

			query += "&Maeklarobjekttyper=" + objectTypes.toString();




			if ($('.searchModule .newProduction input').is(':checked')) {
				query += '&endastnyproduktion=true';
			}

			query += '&webbnummer=' + $('.searchPageWebNumber').val();

			query += '&minpris=';

			query += $('#priceRange').val().split(';')[0];

			var maxPrice = $('#priceRange').val().split(';')[1];
			var maxPriceInit = $(".price-slider .endValue").html();

			if (maxPrice != maxPriceInit) {
				query += '&maxpris=' + maxPrice;
			}

			query += '&minrum=';


			query += $('#roomAmount').val().split(';')[0];

			var maxRooms = $('#roomAmount').val().split(';')[1];
			var maxRoomsInit = $(".rooms-slider .endValue").html();

			if (maxRooms != maxRoomsInit) {
				query += '&maxrum=' + maxRooms;
			}

			query += '&mintillhavet=';
			query += $('#distanceToSea').val().split(';')[0];

			var maxSea = $('#distanceToSea').val().split(';')[1];
			var maxSeaInit = $(".sea-slider .endValue").html();

			if (maxSea != maxSeaInit) {
				query += '&maxtillhavet=' + maxSea;
			}

			query += '&minbyggnadsyta=';
			query += $('#constrArea').val().split(';')[0];

			var maxBuildarea = $('#constrArea').val().split(';')[1];
			var maxBuildareaInit = $(".buildarea-slider .endValue").html();

			if (maxBuildarea != maxBuildareaInit) {
				query += '&maxbyggnadsyta=' + maxBuildarea;
			}

			query += '&mintomtyta=';
			query += $('#gardenArea').val().split(';')[0];

			var maxLotArea = $('#gardenArea').val().split(';')[1];
			var maxLotAreaInit = $(".lot-slider .endValue").html();

			if (maxLotArea != maxLotAreaInit) {
				query += '&maxtomtyta=' + maxLotArea;
			}

			window.location = query;
		},
		setupHoverArea: function (area, top, left, img, alt, ids) {
			$('#' + area).mouseover(function () {
				fb.searchForm.addImageToMap(area, top, left, img, alt, ids);
			});
		},
		addImageToMap: function (area, top, left, img, alt, ids) {

			if ($('#search-box-map').find('img[alt="' + alt + '"]').length > 0) {
				return;
			}

			$('#search-box-map').append(
                    $('<img src="/templates/images/spanien/images/map/' + img + '" alt="' + alt + '" style="position:absolute;display:block;top:' + top + 'px; left:' + left + 'px;z-index:99;cursor:pointer;" />').bind('click', { ids: ids }, function () {

                    	for (var i = 0; i < ids.length; i++) {

                    		$('.searchModule .big').find('input[data-value="' + ids[i] + '"]').attr('checked', true);
                    	}


                    	$(this).unbind();
                    	$(this).click(function () {
                    		$(this).remove();

                    		for (var j = 0; j < ids.length; j++) {
                    			$('.searchModule .big').find('input[data-value="' + ids[j] + '"]').attr('checked', false);
                    		}

                    		fb.searchForm.setupHoverArea(area, top, left, img, alt, ids);
                    	});

                    }).mouseout(function () { if (!$(this).is(':hover')) { $('#search-box-map').find('img[alt="' + alt + '"]').remove(); } }));
		},
		addImageToMapNoHover: function (area, top, left, img, alt, ids) {

			if ($('#search-box-map').find('img[alt="' + alt + '"]').length > 0) {
				return;
			}

			$('#search-box-map').append(
            $('<img src="/templates/images/spanien/images/map/' + img + '" alt="' + alt + '" style="position:absolute;display:block;top:' + top + 'px; left:' + left + 'px;z-index:99;cursor:pointer;" />').bind('click', { ids: ids }, function () {

            	$(this).remove();

            	for (var j = 0; j < ids.length; j++) {
            		$('.searchModule .big').find('input[data-value="' + ids[j] + '"]').attr('checked', false);
            	}

            	fb.searchForm.setupHoverArea(area, top, left, img, alt, ids);


            }));
		},
		setupCheckBoxHandler: function (area, top, left, img, alt, ids) {
			for (var i = 0; i < ids.length; i++) {
				$('.searchModule .big').find('input[data-value="' + ids[i] + '"]').bind('change', { ids: ids }, function () {
					var allchecked = true;

					for (var j = 0; j < ids.length; j++) {
						if ($('.searchModule .big').find('input[data-value="' + ids[j] + '"]:checked').length < 1) {
							allchecked = false;
						}
					}

					if (allchecked) {
						fb.searchForm.addImageToMapNoHover(area, top, left, img, alt, ids);
					}
					else {
						$('#search-box-map').find('img[alt="' + alt + '"]').remove();
					}
				});
			}
		},
		setupImageMap: function () {
			fb.searchForm.setupHoverArea('areamallorca', 143, 396, 'mallorca_mouseover.png', 'mallorca', new Array('10718', '10723'));
			fb.searchForm.setupCheckBoxHandler('areamallorca', 143, 396, 'mallorca_mouseover.png', 'mallorca', new Array('10718', '10723'));

			fb.searchForm.setupHoverArea('areacosta_almeria', 209, 293, 'costa_almeria_mouseover.png', 'costa_almeria', new Array('10727'));
			fb.searchForm.setupCheckBoxHandler('areacosta_almeria', 209, 293, 'costa_almeria_mouseover.png', 'costa_almeria', new Array('10727'));

			fb.searchForm.setupHoverArea('areacosta_blanca', 177, 313, 'costa_blanca_mouseover.png', 'costa_blanca', new Array('10726', '10728', '10719', '10715'));
			fb.searchForm.setupCheckBoxHandler('areacosta_blanca', 177, 313, 'costa_blanca_mouseover.png', 'costa_blanca', new Array('10726', '10728', '10719', '10715'));

			fb.searchForm.setupHoverArea('areacosta_calida', 216, 268, 'costa_calida_mouseover.png', 'costa_calida', new Array('10722'));
			fb.searchForm.setupCheckBoxHandler('areacosta_calida', 216, 268, 'costa_calida_mouseover.png', 'costa_calida', new Array('10722'));

			fb.searchForm.setupHoverArea('areacosta_del_sol', 223, 206, 'costa_del_sol_mouseover.png', 'costa_del_sol', new Array('10714', '10716', '10725', '10717', '10720'));
			fb.searchForm.setupCheckBoxHandler('areacosta_del_sol', 223, 206, 'costa_del_sol_mouseover.png', 'costa_del_sol', new Array('10714', '10716', '10725', '10717', '10720'));

			$('#search-box-map').mouseover(function () {

				$('#search-box-map').find('img').trigger('mouseout');

			});
		}


	},
	contactMeForm: {
		init: function () {
			$('.contactMeStartPageSubmit').click(fb.contactMeForm.sendForm);
		},
		sendForm: function () {

			if ($("#aspnetForm").valid()) {
				$('.contactMeStartPageSubmit').hide().parent().append('<img src="/templates/images/spanien/images/ajax-loader-black.gif" style="float:right;margin-right:90px;margin-top:10px;" />');
				$.ajax({
					type: 'POST',
					url: '/templates/services/internal/ajaxservice.svc/ContactMe',
					data: JSON.stringify({ firstName: $('#firstnamecontactme').val(),
						lastName: $('#lastnamecontactme').val(),
						phoneNumberOrEmail: $('#fieldForPhoneOrEmail').val(),
						source: '',
						message: '',
						buyOrSell: $('input:radio[name=buyorsell]:checked').val(),
						area: $('#zone').val()
					}),
					datatype: 'json',
					contentType: "application/json; charset=utf-8",
					success: function (data) {
						if (data.d) {
							//add tracking code for submit here.
							$('.contactForm').find('.form').fadeOut(420, function () { $('.contactForm').append($('<h4 class="lrgTopSpace">Tack, vi kontaktar dig inom kort.</h4>').hide().delay(100).fadeIn()); });
						}
						else {
							$('.contactForm').find('.form').fadeOut(420, function () { $('.contactForm').append($('<h4 class="lrgTopSpace" style="color:#FBF6D1;">Någonting gick fel, försök igen senare.</h4>').hide().delay(100).fadeIn()); });
						}
					},
					error: function (response) {
						$('.contactForm').find('.form').fadeOut(420, function () { $('.contactForm').append($('<h4 class="lrgTopSpace" style="color:#FBF6D1;">Någonting gick fel, försök igen senare.</h4>').hide().delay(100).fadeIn()); });
					}
				});
			}
		}
	},
	tipAFriend: {
		init: function () {
			$('.mailForm').find('.tipafriend').click(fb.tipAFriend.validate);
		},
		checkErrorMessages: function () {
			if ($('.errorContainer').find('ol').children().length < 1) {
				$('.errorContainer').hide();
				$(".modalCloseImg.simplemodal-close").removeClass("close-error");
			}
		},
		validate: function () {
			var valid = true;

			$('#mailfirstname').bind('keyup focusout', function () {
				if ($('#mailfirstname').val().length < 1) {
					$('.errorContainer').find('ol').find('label[for="mailfirstname"]').parent().remove();
					$('.errorContainer').find('ol').append('<li><label for="mailfirstname">Förnamn är obligatoriskt</label></li>');
					$('#mailfirstname').addClass('error');
					$('.errorContainer').show();
				}
				else {
					$('.errorContainer').find('ol').find('label[for="mailfirstname"]').parent().remove();
					$('#mailfirstname').removeClass('error');
					fb.tipAFriend.checkErrorMessages();
				}
			});

			if ($('#mailfirstname').val().length < 1) {
				$('.errorContainer').find('ol').find('label[for="mailfirstname"]').parent().remove();
				$('.errorContainer').find('ol').append('<li><label for="mailfirstname">Förnamn är obligatoriskt</label></li>');
				$('#mailfirstname').addClass('error');
				valid = false;
			}
			else {
				$('.errorContainer').find('ol').find('label[for="mailfirstname"]').parent().remove();
				$('#mailfirstname').removeClass('error');
			}

			$('#maillastname').bind('keyup focusout', function () {
				if ($('#maillastname').val().length < 1) {
					$('.errorContainer').find('ol').find('label[for="maillastname"]').parent().remove();
					$('.errorContainer').find('ol').append('<li><label for="maillastname">Efternamn är obligatoriskt</label></li>');
					$('#maillastname').addClass('error');
					$('.errorContainer').show();
				}
				else {
					$('.errorContainer').find('ol').find('label[for="maillastname"]').parent().remove();
					$('#maillastname').removeClass('error');
					fb.tipAFriend.checkErrorMessages();
				}
			});

			if ($('#maillastname').val().length < 1) {
				$('.errorContainer').find('ol').find('label[for="maillastname"]').parent().remove();
				$('.errorContainer').find('ol').append('<li><label for="maillastname">Efternamn är obligatoriskt</label></li>');
				$('#maillastname').addClass('error');
				valid = false;
			}
			else {
				$('.errorContainer').find('ol').find('label[for="maillastname"]').parent().remove();
				$('#maillastname').removeClass('error');
			}

			$('#reciever').bind('keyup focusout', function () {
				if ($('#reciever').val().length < 1) {
					$('.errorContainer').find('ol').find('label[for="reciever"]').parent().remove();
					$('.errorContainer').find('ol').append('<li><label for="reciever">Mottagarens e-postadress är obligatorisk</label></li>');
					$('#reciever').addClass('error');
					$('.errorContainer').show();
				}
				else if (/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))$/i.test($('#reciever').val()) == false) {
					$('.errorContainer').find('ol').find('label[for="reciever"]').parent().remove();
					$('.errorContainer').find('ol').append('<li><label for="reciever">Ange en korrekt e-postadress</label></li>');
					$('#reciever').addClass('error');
					$('.errorContainer').show();
				}
				else {
					$('.errorContainer').find('ol').find('label[for="reciever"]').parent().remove();
					$('#reciever').removeClass('error');
					fb.tipAFriend.checkErrorMessages();
				}
			});

			if ($('#reciever').val().length < 1) {
				$('.errorContainer').find('ol').find('label[for="reciever"]').parent().remove();
				$('.errorContainer').find('ol').append('<li><label for="reciever">Mottagarens e-postadress är obligatorisk</label></li>');
				$('#reciever').addClass('error');
				valid = false;
			}
			else if (/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))$/i.test($('#reciever').val()) == false) {
				$('.errorContainer').find('ol').find('label[for="reciever"]').parent().remove();
				$('.errorContainer').find('ol').append('<li><label for="reciever">Ange en korrekt e-postadress</label></li>');
				$('#reciever').addClass('error');
				valid = false;
			}
			else {
				$('.errorContainer').find('ol').find('label[for="reciever"]').parent().remove();
				$('#reciever').removeClass('error');
			}

			$('#mailsecond').bind('keyup focusout', function () {
				if ($('#mailsecond').val().length < 1) {
					$('.errorContainer').find('ol').find('label[for="mailsecond"]').parent().remove();
					$('.errorContainer').find('ol').append('<li><label for="mailsecond">Din e-postadress är obligatorisk</label></li>');
					$('#mailsecond').addClass('error');
					$('.errorContainer').show();
				}
				else if (/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))$/i.test($('#mailsecond').val()) == false) {
					$('.errorContainer').find('ol').find('label[for="mailsecond"]').parent().remove();
					$('.errorContainer').find('ol').append('<li><label for="mailsecond">Ange en korrekt e-postadress</label></li>');
					$('#mailsecond').addClass('error');
					$('.errorContainer').show();
				}
				else {
					$('.errorContainer').find('ol').find('label[for="mailsecond"]').parent().remove();
					$('#mailsecond').removeClass('error');
					fb.tipAFriend.checkErrorMessages();
				}
			});

			if ($('#mailsecond').val().length < 1) {
				$('.errorContainer').find('ol').find('label[for="mailsecond"]').parent().remove();
				$('.errorContainer').find('ol').append('<li><label for="mailsecond">Din e-postadress är obligatorisk</label></li>');
				$('#mailsecond').addClass('error');
				valid = false;
			}
			else if (/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))$/i.test($('#mailsecond').val()) == false) {
				$('.errorContainer').find('ol').find('label[for="mailsecond"]').parent().remove();
				$('.errorContainer').find('ol').append('<li><label for="mailsecond">Ange en korrekt e-postadress</label></li>');
				$('#mailsecond').addClass('error');
				valid = false;
			}
			else {
				$('.errorContainer').find('ol').find('label[for="mailsecond"]').parent().remove();
				$('#mailsecond').removeClass('error');
			}

			if (valid) {
				$('.errorContainer').hide();
				$(".modalCloseImg.simplemodal-close").removeClass("close-error");
				$('.tipafriend').parent().append('<img src="/templates/images/spanien/images/ajax-loader-black.gif" style="float:right;margin-right:90px;margin-top:10px;" />');
				$('.tipafriend').hide();

				$.ajax({
					type: 'POST',
					url: '/templates/services/internal/ajaxservice.svc/SendTipToFriend',
					data: JSON.stringify({ firstName: $('#mailfirstname').val(),
						lastName: $('#maillastname').val(),
						message: $('#mess').val(),
						articleurl: window.location.href,
						fromAddress: $('#mailsecond').val(),
						toAddress: $('#reciever').val(),
						objectId: 0,
						objectGuid: ''
					}),
					datatype: 'json',
					contentType: "application/json; charset=utf-8",
					success: function (data) {
						//Add tracking code here if appropriate

						if (data.d) {
							$('.mailForm').children('div').fadeOut(420, function () { $('.mailForm').append($('<h4 class="lrgTopSpace">Ditt meddelande har skickats</h4>').hide().delay(100).fadeIn()); });
						}
						else {
							$('.mailForm').children('div').fadeOut(420, function () { $('.mailForm').append($('<h4 class="lrgTopSpace" style="color:#FBF6D1;">Någonting gick fel, ditt meddelande kunde inte skickas</h4>').hide().delay(100).fadeIn()); });
						}
					},
					error: function (response) {
						$('.mailForm').children('div').fadeOut(420, function () { $('.mailForm').append($('<h4 class="lrgTopSpace" style="color:#FBF6D1;">Någonting gick fel, ditt meddelande kunde inte skickas</h4>').hide().delay(100).fadeIn()); });
					}
				});

			}
			else {
				$('.errorContainer').show();
				$(".modalCloseImg.simplemodal-close").addClass("close-error");
			}

		}
	},
	elementProperties: {

		init: function () {

			$(".objectSearchResult").tabs();
			$(".pressPhotosContainer").tabs();
			$(".tab").not(":first-child").addClass("nf");
			$(".double.column .photoObject:odd").addClass("last");
			$(".wide.column .photoObject:nth-child(3n+1)").addClass("last");
			$(".half .objectModule:nth-child(odd)").css({ "margin-right": "20px" });

			$(".wide.column").each(function () {

				var header = "<h4>" + $(this).find("h4").html() + "</h4>";
				var items = $(this).find(".photoObject");
				var str = '';

				for (var i = 0, len = items.length; i < len; i += 3) {

					var firstitem, seconditem, thirditem;

					str += "<div class='clear'>";

					if (items[i])
						str += $('<div>').append($(items[i]).clone()).html();

					if (items[i + 1])
						str += $('<div>').append($(items[i + 1]).clone()).html();

					if (items[i + 2])
						str += $('<div>').append($(items[i + 2]).clone()).html();

					str += "</div>";

				}

				$(this).html(header + str);

			});
		}
	},
	ie7ImageLinkFix: {
		init: function () {

			if ($.browser.msie && $.browser.version == 7) {
				//Fix the issue that href don't trigger around img-tag
				$(".objectModule").each(function () {
					var path = $(this).find('.objectLink').attr("href");
					$(this).find('.imageContainer').click(function (event) {
						window.location = path;
					});
				});
			}
		}
	},
	searchTools: {
		init: function () {

			$(".layout-slider").each(function () {

				var id = $(this).find("input").attr("id");
				var elem = '#' + id;
				var startVal = $(this).find(".startValue").html();
				var endVal = $(this).find(".endValue").html();
				var stepVal = $(this).find(".stepValue").html();
				var dim = $(this).find(".dimension").html();

				jQuery(elem).slider({
					step: stepVal,
					from: startVal,
					to: endVal,
					smooth: true,
					round: 0,
					dimension: dim,
					skin: "plastic",
					value: startVal + ';' + endVal
				});

			});
			$(".jslider-pointer").not(".jslider-pointer-to").each(function () {

				//Check if from-slider is at max-value. If true we need to change z-index. FF & IE returns 186px at init. And Chrome %.
				if ($(this).css("left") == "186px" || $(this).css("left") == "100%") {

					$(this).css("z-index", 10);
				};

			});
			$(".jslider-pointer-to").each(function () {

				if ($(this).css("left") == "100%") {

					$(this).parent().find(".jslider-value-to").append("<span class='add'> +</span>");
				};

				$(this).mousemove(function () {

					if ($(this).css("left") == "100%") {

						if ($(this).parent().find(".add").length == 0)

							$(this).parent().find(".jslider-value-to").append("<span class='add'> +</span>");

					} else if ($(this).css("left") <= "99%") {

						$(this).parent().find(".jslider-value-to span.add").remove();
					}

				});
			});
		}
	},
	tooltips: {
		init: function () {



			$("a.lang").click(function (event) {

				$("img.arrowDown").addClass("arrowUp").removeClass("arrowDown");
				$("a.searchLink").addClass("arrowDown").removeClass("arrowUp");
				$(".searchBox").fadeOut();
				$(".langBox").fadeIn();
				event.stopPropagation();
			});

			$("a.searchLink").click(function (event) {

				$(this).addClass("arrowUp").removeClass("arrowDown");
				$("img.arrowUp").addClass("arrowDown").removeClass("arrowUp");
				$(".langBox").fadeOut();
				$(".searchBox").fadeIn();
				event.stopPropagation();
				$(".searchBox input[type='text']").focus();
				$(".searchBox input[type='text']").click(function (event) {
					event.stopPropagation();
				});
			});

			$(".searchBox input[type='submit']").click(function (event) {

				event.preventDefault();

				var path = $("a.searchLink").attr("href");
				var query = path + $(".searchBox input[type='text']").val();

				window.location = query;

			});

			$('html').click(function () {

				$(".langBox").fadeOut();
				$(".searchBox").fadeOut();
				$("a.searchLink").addClass("arrowDown").removeClass("arrowUp");
				$("img.arrowUp").addClass("arrowDown").removeClass("arrowUp");
			});

		}
	},
	locateOffice: {
		init: function () {

			var c = $.cookie("officeID.es");

			if (c) {
				fb.locateOffice.parseFile(c);
			}

			$(".searchOfficeForm input[type='submit']").click(function (event) {
				event.preventDefault();

				var ajaxLoader = $(".searchOfficeForm .ajaxLoaderImage");
				var button = $(".searchOfficeForm input[type='submit']");

				button.hide();
				ajaxLoader.css('display', 'block');

				selectVal = $(".searchOfficeForm select").val(); // selectVal contains the id of selected option
				fb.locateOffice.parseFile(selectVal);


			});

		},
		ajaxLoaded: function (data) {

			var val = data.d;

			var officeName = "<h3>" + val.Header + "</h3>";
			var officeLink = "<a href='" + val.Url + "' class='toOfficeLink'>Till kontorets sida</a>";
			var officeTel = "<span><strong>Tel: </strong>" + val.SwedishPhone + "</span>";
			var officeSpainTel = "<span><strong>Fr&aring;n Spanien: </strong>" + val.SpanishPhone + "</span>";
			var officeEmail = "<a href='mailto:" + val.Email + "' class='mail'>Skicka e-post</a>";
			var closeResult = "<a href='#' class='closeResult'>V&auml;lj ett annat kontor</a>";
			$(".searchOfficeFormResult").append(officeName + officeLink + officeTel + officeSpainTel + officeEmail + closeResult);

			$(".searchOfficeForm").hide();
			$(".searchOfficeFormResult").fadeIn();

			$(".closeResult").click(function (event) {

				event.preventDefault();

				$(".searchOfficeFormResult").empty();
				$(".searchOfficeFormResult").hide();
				$(".searchOfficeForm").fadeIn();

				var ajaxLoader = $(".searchOfficeForm .ajaxLoaderImage");
				var button = $(".searchOfficeForm input[type='submit']");
				button.show();
				ajaxLoader.hide();

				$.cookie("officeID.es", null, { expires: 365, path: '/' });

			});


		},
		parseFile: function (officeId) {

			var url = $(".searchOfficeForm  a.serviceLink").attr("href") + '?officeId=' + officeId;

			if ($.browser.msie && window.XDomainRequest) {

				var xdr = new XDomainRequest();
				xdr.open("get", url);
				xdr.onload = function () {
					var JSON = $.parseJSON(xdr.responseText);
					if (JSON == null || typeof (JSON) == 'undefined') {
						JSON = $.parseJSON(data.firstChild.textContent);
					}
					fb.locateOffice.ajaxLoaded(JSON);
				};
				xdr.send();

			}
			else {

				var xmlhttp;
				if (window.XMLHttpRequest) {
					xmlhttp = new XMLHttpRequest();
				} xmlhttp.open("GET", url, true); xmlhttp.onreadystatechange = function () {
					if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
						var JSON = $.parseJSON(xmlhttp.responseText);
						if (JSON == null || typeof (JSON) == 'undefined') {
							JSON = $.parseJSON(data.firstChild.textContent);
						}
						fb.locateOffice.ajaxLoaded(JSON);

					}
				};
				xmlhttp.send();
			}
			$.cookie("officeID.es", officeId, { expires: 365, path: '/' });
		}
	},


	smallObjectSearch: {
		init: function () {

			$(".SmallObjectSearch input[type='submit']").click(function (event) {

				event.preventDefault();

				var parent = $(this).parents('.SmallObjectSearch');

				var url = $(parent).find('a.objectUrl').attr("href");

				var priceFrom = $(parent).find('.priceFrom option:selected').val();
				var priceTo = $(parent).find('.priceTo option:selected').val();

				var priceTo = $(parent).find('.priceTo option:selected').val();

				var area = "";
				$(parent).find("input[type='checkbox']:checked").each(function () {
					area += $(this).attr("data-value") + ',';
				});

				window.location = url + "?minpris=" + priceFrom + "&maxpris=" + priceTo + "&omraade=" + area + "&sok=true";


			});
		}
	},

	smallSearchBox: {
		init: function () {

			$(".SmallSearchBox input.webnumber").focus(function () {

				$(this).keydown(function (event) {

					if (event.keyCode == '13') {
						event.preventDefault();
						$(".SmallSearchBox input[type='submit']").click();
					}
				})

			});

			$(".SmallSearchBox input[type='submit']").click(function (event) {

				event.preventDefault();

				var area = $('.SmallSearchBox .dropDownArea option:selected').val();
				var priceRange = $('.SmallSearchBox .dropDownPrice option:selected').val();
				var webnumber = $('.SmallSearchBox .webnumber').val();
				var url = $(".SmallSearchBox  a.searchPageUrl").attr("href");


				var priceRanges = priceRange.split("|");

				if (priceRanges.length == 2) {

					window.location = url + "?omraade=" + area + "&minpris=" + priceRanges[0] + "&maxpris=" + priceRanges[1] + "&webbnummer=" + webnumber + "&sok=true";
				}
				else if (priceRange.length == 0) {
					window.location = url + "?omraade=" + area + "&webbnummer=" + webnumber + "&sok=true";
				}
				else {
					window.location = url + "?omraade=" + area + "&minpris=" + priceRange + "&webbnummer=" + webnumber + "&sok=true";
				}



			});
		}
	},

	formProperties: {

		init: function () {

			//this empties the value attribute
			$(".search input[type='text']").focus(function () {
				$(this).val("");
			});
			//this is for adding text when the textfield is empty
			$(".search input[type='text']").focusout(function () {
				if ($(this).val().length < 1) {
					$(this).val("Search here...");
				}
			});

			fb.formProperties.selects();

		},

		selects: function () {

			$('.form.medium select').addClass("m").selectmenu({ style: 'dropdown', transferClasses: true, width: 180 });
			$('.form.large select').addClass("l").selectmenu({ style: 'dropdown', transferClasses: true, width: 200 });
			$('.form.xlarge select').addClass("xl").selectmenu({ style: 'dropdown', transferClasses: true, width: 280 });
			$('select.xs').addClass("xs").selectmenu({ style: 'dropdown', transferClasses: true, width: 97 });
			$('select').selectmenu();

			$(".severalSelect").each(function () {
				$(this).find("a.dropdown").click(function (event) {

					$(this).parent().addClass("current");

					event.preventDefault();

					if ($(".severalSelect.current ul").hasClass("show")) {
						$(".severalSelect.current .selectBottomEdge").hide();
						$(".severalSelect.current ul.show").slideUp(100);
						$(".severalSelect.current ul.show").removeClass("show");
						$(".severalSelect.current").removeClass("current")
					} else {
						$(".severalSelect.current .selectBottomEdge").show();
						$(".severalSelect.current ul").addClass("show");
						$(".show").slideDown(100);
					}

				});
			});

			$(".severalSelect ul, .severalSelect a.dropdown").click(function (event) {
				event.stopPropagation();
			});
			$('html').click(function () {
				$(".severalSelect.current ul.show").slideUp(100);
				$(".severalSelect.current ul.show").removeClass("show");
				$(".severalSelect.current .selectBottomEdge").hide();
				$(".severalSelect.current").removeClass("current");
			});
		}
	},
	carousel: {
		init: function () {
			$("div.carousel").carousel({
				dispItems: 5,
				effect: "slide",
				animSpeed: 700
			});
			$("div.largeCarousel").carousel({
				dispItems: 1,
				effect: "slide",
				animSpeed: 700
			});
		}
	},
	forecast: {
		init: function () {

			fb.forecast.getForecastData();

		},
		getForecastData: function () {
			var url = $(".forecast a.url").attr("href");

			if (!$('.forecast a.url').length) {
				return;
			}
			//Kod som Decerno ska köra
			//if ($.browser.msie && $.browser.version < 8) {	
			//	return; 									
			//}	 											
			if ($.browser.msie && window.XDomainRequest) {

				var xdr = new XDomainRequest();
				xdr.open("get", url);
				xdr.onload = function () {
					var JSON = $.parseJSON(xdr.responseText);
					if (JSON == null || typeof (JSON) == 'undefined') {
						JSON = $.parseJSON(data.firstChild.textContent);

					}
					fb.forecast.ajaxLoaded(JSON);
				};
				xdr.send();

			}
			else {

				var xmlhttp;
				if (window.XMLHttpRequest) {
					xmlhttp = new XMLHttpRequest();
				} xmlhttp.open("GET", url, true);

				xmlhttp.onreadystatechange = function () {
					if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
						var JSON = $.parseJSON(xmlhttp.responseText);
						if (JSON == null || typeof (JSON) == 'undefined') {
							JSON = $.parseJSON(data.firstChild.textContent);

						}
						fb.forecast.ajaxLoaded(JSON);
					}
				};
				xmlhttp.send();
			}
		},
		ajaxLoaded: function (data) {
			$.each(data.d, function (key, val) {

				var loc = val.Location;
				var imgUrl = val.ImageUrl;
				var temp = val.Temperature;
				var desc = val.WeatherDescription;
				var forecastItem = '<div class="forecastItem cf"><a href="http://www.yr.no" class="yrno" target="_blank">yr.no</a><div class="weatherInfo"><span class="place">' + loc + '</span><span class="cel">' + temp + '<small>o</small>C</span></div><span class="weatherImage"><img src="' + imgUrl + '" width="34" height="34" alt="' + desc + '" /></span></div>';

				$(".forecast").append(forecastItem);

			});

			$(".forecastItem:first").delay(400).fadeIn(300, fb.forecast.changeSelectedItem);
		},
		changeSelectedItem: function () {
			$(this).delay(6000).fadeOut(300);
			var index = $(this).index(".forecastItem");
			if (index >= $(".forecastItem").length - 1)
				var item = $('.forecastItem').eq(0);
			else
				var item = $('.forecastItem').eq(index + 1);

			$(item).delay(6000).fadeIn(300, fb.forecast.changeSelectedItem);

		}
	},
	getLanguage: {
		init: function () {
			$(".modal").each(function () {

				$(this).click(function (e) {

					e.preventDefault();
					var url = $(this).attr("href");

					if ($.browser.msie && window.XDomainRequest) {

						var xdr = new XDomainRequest();
						xdr.open("get", url);
						xdr.onload = function () {
							var JSON = $.parseJSON(xdr.responseText);
							if (JSON == null || typeof (JSON) == 'undefined') {
								JSON = $.parseJSON(data.firstChild.textContent);

							}
							fb.getLanguage.ajaxLoaded(JSON);
						};
						xdr.send();

					}
					else {

						var xmlhttp;
						if (window.XMLHttpRequest) {
							xmlhttp = new XMLHttpRequest();
						} xmlhttp.open("GET", url, true); xmlhttp.onreadystatechange = function () {
							if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
								var JSON = $.parseJSON(xmlhttp.responseText);
								if (JSON == null || typeof (JSON) == 'undefined') {
									JSON = $.parseJSON(data.firstChild.textContent);
								}
								fb.getLanguage.ajaxLoaded(JSON);

							}
						};
						xmlhttp.send();
					}

				});
			});
		},
		ajaxLoaded: function (data) {

			var headerText = data.d.Header;
			var short = data.d.Short;
			var txt = data.d.Text;
			var image = data.d.Image;

			$("#basic-modal-content h1.modalHeading").append(headerText);
			$("#basic-modal-content .modalIngress").append(short);
			$("#basic-modal-content .modalText").append(txt);
			$("#basic-modal-content img.modalImage").attr("src", image);
		}
	},
	simpleModal: {
		init: function () {
			$('.modal').click(function (e) {
				$('#basic-modal-content-container').modal({ overlayClose: true });
				return false;
			});

			$('.ttonclick').click(function (e) {
				$('.mailForm.wideHighlighted').modal({
					overlayClose: true,
					containerId: "formModal"
				});
				return false;
			});
		}
	}
}

