$(document).ready(function(){

    /* paapalstan kuvilta pois float jos kuvan leveys yli 480 px */
    $("#mainCol p img").each(function() {
        var leveys = $(this).attr("width");
        if (leveys > 480) {
          $(this).css({float: "none", marginLeft: "0"});
        }
    });

    // safari peiskaako
    var isSafari = false;
    if(window.devicePixelRatio) isSafari = true;

    // sahkoposteille defuskaatio
    $("#copyright a").defuscate();

    // Sivuston varjot
    var pc = $("body").attr("class");
    var sh = $("#contentArea").height();
    // ie6:lta pois kanssa
    var browser = $.browser.name;
    var browserv = $.browser.versionNumber;
    //alert(browser + " " + browserv);
    //if (browser == "msie" && browserv == 6) {
           //sh -= 17;
    //}
    //if((browser == "msie" && browserv == 6) || isSafari == true) {
        //$("#copyright").prepend("<div class='btmfx'>.</div>");
    //}
    //$("#shadowleft, #shadowright").css({height: sh + "px"});
    $("#shadowleft, #shadowright").css({display:'none'});
    
    // Etusivulta etusivulinkki pois
    // Tän vois tehdä mielummin templaten {menu exclude_prefix='pagename'}
    $(".menuF li:first").remove();

    // Valikon nurkat
    $("#menuContainer > ul > li:first").addClass("first");
    $("#menuContainer > ul > li:last").addClass("last");

    // Nosteen hoveri koko alueelta
    $(".noste").hover(
        function() {
            // hoveri
            $(this).css({background: "url('img/bullet-noste.gif') no-repeat 0 3px"});
            $(this).find("a").css({textDecoration: "underline"});
            $(this).find("p").css({color: "#000000"});
            $(this).css({cursor: "pointer"});
        },
        function() {
            $(this).css({background: "url('img/bullet-noste.gif') no-repeat 0 3px"});
            $(this).find("a").css({textDecoration: "none"});
            $(this).find("p").css({color: "#4c4c4c"});
            $(this).css({cursor: "default"});
        }
    );
    // Ollaanko karttasivuilla?
    if (GBrowserIsCompatible()) {

        var sites = $('#sites .city');
		var cityCoords = [];
        var coords = [];
        var msg = [];
        var add = [];
        var urls = [];
        var cityNames = [];
        // Unique city names
        // loop all the cities
        $.each(sites, function()
            {
                // add values to arrays
                var c = $(this).find('.coordinates').html();
                c1 = c.split(",");
                coords[ coords.length ] = new GLatLng(c1[0], c1[1]);
                //coords.push(coordinates1);
                //var url = $(this).find('.url a').attr('href');
                urls.push($(this).find('.url a').attr('href'));
                msg.push($(this).find('.url').html());
                add.push($(this).find('.streetAddress').html());
                cityNames.push($(this).find('.name').html());
            }
        );
        // Get rid of duplicate values, used for city drop down
        //var cityNamesUnique = uniqueArr(cityNames);
        var added = []; 
        var cityNamesUnique2 = [];
        var cityCoords = [];
        // loop all sites
        $.each(sites, function()
            {
                var currentCity = $(this).find('.name').html();
                var currentCoords = $(this).find('.coordinates').html();
                currentCoords = currentCoords.split(',');
                //console.log(currentCity);
                // Add first one
                if(added.length == 0)
                {
                    added[added.length] = currentCity;
                    cityNamesUnique2[cityNamesUnique2.length] = currentCity;
                    cityCoords[cityCoords.length] = new GLatLng(currentCoords[0],currentCoords[1]) //currentCoords;
                }
                // loop all added through
                for(i=0; i<added.length; i++)
                {
                    // See if current city added already
                    if($.inArray(currentCity, added) == -1)
                    {
                        added[added.length] = currentCity;
                        cityNamesUnique2[cityNamesUnique2.length] = currentCity;
                        cityCoords[cityCoords.length] = new GLatLng(currentCoords[0],currentCoords[1]) //currentCoords;
                    }

                }
            }
        );


		// P-ikonin asetuksia
		var iconP = new GIcon(G_DEFAULT_ICON);
		iconP.image = "http://autoparkki.net/img/p-marker.png";
		iconP.iconSize = new GSize(39,34);
		iconP.shadowSize = new GSize(0,0);
		iconP.iconAnchor = new GPoint(10,34);
		markerOptionsP = { icon:iconP };
		// luodaan markkerit etusivulle ilman infoBox sisältöä
		function createMarkerFP(latlng, targetCityID) {
			var marker = new GMarker(latlng, markerOptionsP);
			GEvent.addListener(marker,"click", function() {
				// tarkat tiedot -linkki
				window.location = 'http://autoparkki.net/index.php?page=pysaekoeintialueet#' + targetCityID;
				//map1.openInfoWindowHtml(latlng, myHtml);
			});
			return marker;
		}

		// Frontpage
		if(pc == "f") {
            // Kartan asetuksia
            var map1 = new GMap2(document.getElementById("map1"));
            // tsekataan montako oli arrayssa
            var montako = cityCoords.length;
            for (i=0; i<montako; i++) {
				var c = cityCoords[i];
				map1.addOverlay(createMarkerFP(c, i));
            }
            // Set map center and controls
			map1.setCenter(new GLatLng(65.065955,26.674805), 4);
			map1.addControl(new GSmallZoomControl());
            map1.addControl(new GMapTypeControl());
            // add hidden div's for dropdown
            
            //console.log(cityNamesUnique2);
            //console.log(tempCityname);            
            
            for(i=0; i<cityNamesUnique2.length; i++)
            {
                // Append to page
                $("#kaupungit").append('<div><span class="city">'+cityNamesUnique2[i]+'</span><span class="coordinates">'+cityCoords[i]+'</span></div>');
            }


			
		}
    
    }

    // siirretaan kohdistus valittuun kaupunkiin
    $("body.f #kaupungit div").click(function() {
        var target = $(this).find('.city').html();
        
        for(i=0; i<cityNamesUnique2.length; i++) {
            if(cityNamesUnique2[i] == target) {
                window.location = 'http://autoparkki.net/index.php?page=pysaekoeintialueet#'+i;
                break;
            }
        }

    });


	$("#kaupungit div").hide();
	// naytetaan kaupunkilista dropdown
	$("#kaupunki #valittu").click(function() {
		$("#kaupungit div").show();
		$("#kaupungit").show();
		$(this).css("background", "url('img/citydd-open.jpg') no-repeat");
	});

	$("#kaupungit").hover(
		function() {
			// eikai mitaan
			
			$("#kaupungit div").hover(function(){
				$(this).css({   'background':'#f1f2f3',
								'color':'#0079C2'});
			},
			function(){
				$(this).css('color','#f1f2f3');
				$(this).css('background','none');
				
			});
			
		},
		function() {
			// mouseoutissa kaupunkivalinta piiloon
			$(this).hide();
			$("span#valittu").css("background", "url('img/citydd-closed.jpg') no-repeat");
			  $("#kaupungit div").hide();
		}
	);




	// siirretaan kohdistus valittuun kaupunkiin
	$("body.p #kaupungit div").click(function() {
        //alert(1);
		$("span#valittu").css("background", "url('img/citydd-closed.jpg') no-repeat");
		var keskita = $(this).attr("title");
		var kaupung = $(this).text();
		var kaupungL = kaupung.length + 1;
		var zoom = 0;
		// pilkotaan koordinaatit
		koords = keskita.split(",");
		// Special treatment for some cities
		switch(kaupung) {
			case 'Helsinki':
				zoom = 10;
				break;
  
			case 'Jyväskylä':
				zoom = 14;
				break;
  
			case 'Espoo':
				zoom = 14;
				break;
  
			case 'Oulu':
				zoom = 14;
				break;
		
			default:
				zoom = 15;
				break;
		}
        
		// keskitys uuteen kohteeseen
		map1.setCenter(new GLatLng(koords[0], koords[1]), zoom);
		// valitun kaupungin paivitys ja p-alueiden nayttaminen
		$("#valittu").text(kaupung);
		$("#kaupungit").hide();
		$("#kaupungit div").removeClass("activeP");
		$(this).addClass("activeP");
		var kaupungin = $(this).attr("id");
		$("#parkit #areaName").text(kaupungin);
		// valitun alueen p-mestat
		var montako = coords.length;
		$("#parks").html("");
		for (i=1; i<montako; i++) {
            //var c = coords[i];
            var m = msg[i];
            var a = add[i];
            var city = a.split(",");
            var city2 = city[1].substring(1, kaupungL);
            if (city2 == kaupung) {
                $("#parks").append("<div>" + m + "</div>");
            }
		}
		var alakorkeus = $("#parks").height();
		varjok = sh + alakorkeus;
		$("#shadowleft, #shadowright").css({height: varjok + "px"});
        //alert(1);

        // add cityID to url
        for(var i=0; i<cityNamesUnique2.length; i++)
        {
            if(cityNamesUnique2[i] == kaupung) window.location = 'http://autoparkki.net/index.php?page=pysaekoeintialueet#'+i;
        }

	});
    // Noste kokonaan linkiksi
    $(".noste").click(function() {
        var link = $(this).find("a").attr("href");
        window.location = link;
    });
    // Noste2 alareunan luonti + marginaalidivi jolla korkeusongelma korjaantuu
    $(".noste2").append("<div class='noste2b'></div>");
    $(".noste2").after("<div class='noste2m'></div>");

});

