Shadowbox.init({ language: 'en', players: ['img', 'html', 'iframe', 'qt', 'wmp', 'swf', 'flv'] });

function cufonize() {
    Cufon.replace('h1, .kiesuwvestigingen h3, #login p a, .block h2, .cblock h2, #subMenu h2, #payoff > p', {
        fontFamily: 'DINPro-Bold',
        hover: true
    });
}

if($("#mainMap").length > 0) {
    var projectsMap;
    var projectMap;
    var infoWindow;
    var mapClicked;
}

function doClickEvent(object, event) {
    console.log('check on keyup')
    if (event.keyCode == '13') {
        console.log('keycode 13, pressing correct submit button')
        $(object).next().click();
        return false;
    }
}

function loadVacatures() {
    $('.imgLoader').removeClass('hidden');
    //var form = null;
    var type = null;
    var regio = null;
    var location = null;

    var vacType = $('select#f_type')[0];
    if (vacType != null) { level = $(vacType).val(); }

    var vacRegio = $('select#f_regio')[0];
    if (vacRegio != null) { level = $(vacRegio).val(); }
    
    var vacLocation = $('select#f_location')[0];
    if (vacLocation != null) { level = $(vacLocation).val(); }

    var url = '?filter=1';
    if (level != null) { url += '&level=' + level; }
    if (regio != null) { url += '&regio=' + regio; }
    if (location != null) { url += '&location=' + location; }

    $.get(url, function (data) {
        renderVacatures(data);
    });
}

function renderVacatures(data) {
    $('#vacResults').html($(data).find('#vacResults').html());
    $('.imgLoader').addClass('hidden');
}


$(document).ready(function () {

    cufonize();

    $("#f_type").change(function (e) {
        loadVacatures();
    });
    $("#f_regio").change(function (e) {
        loadVacatures();
    });
    $("#f_location").change(function (e) {
        loadVacatures();
    });

    $(".btnSubmit_hover").hover(function () {
        var thisImg = $(this).attr("src");
        thisImg = thisImg.substr(8);
        var length = thisImg.length;
        length = length - 4;
        thisImg = thisImg.substr(0, length);
        thisImg = thisImg + "_h.gif";
        $(this).attr("src", "/images/" + thisImg);
    }, function () {
        var thisImg = $(this).attr("src");
        thisImg = thisImg.substr(8);
        var length = thisImg.length;
        length = length - 6;
        thisImg = thisImg.substr(0, length);
        thisImg = thisImg + ".gif";
        $(this).attr("src", "/images/" + thisImg);
    });

    if ($("#mainMap").length > 0) {
        var elm = document.getElementById("mainMap");
        if (elm != null) {
            loadProjectsMap(elm);
        }
    }
    if ($("#login ul").length > 0) {
        $('#login ul').slideUp();
        $('#login p a').click(function () {
            _gaq.push(['_trackEvent', 'login', 'menu+uitschuiven', 'menu+uitschuiven']);
            $('#login ul').slideToggle(200);
            return false;
        });
    }
    if ($("#tabs").length > 0) {
        $("#tabs").tabs();
    }

    if ($("#paging_container").length > 0) {
        $('#paging_container').pajinate({
            items_per_page: 5,
            num_page_links_to_display: 10,
            nav_label_first: "Eerste",
            nav_label_prev: "Vorige",
            nav_label_next: "Volgende",
            nav_label_last: "Laatste"
        });

    }


    $("#mainMenu ul li").mouseenter(function () {

        if ($("ul", this).length > 0) {
            var aWidth = $(this).width();
            //aWidth = aWidth + 30;
            aWidth = aWidth + "px";
            //alert(aWidth);
            $(this).has('ul').css({ "width": aWidth });
            $(this).has('ul').addClass("hover");
        }
    });
    $("#mainMenu ul li").mouseleave(function () {
        $(this).removeClass("hover");
    });




    $("#cname").addClass("watermark");
    $("#cname").focus(function () {
        $(this).filter(function () {
            return $(this).val() == "" || $(this).val() == "Naam"
        }).removeClass("watermark").val("");
    });
    $("#cname").blur(function () {
        $(this).filter(function () {
            return $(this).val() == ""
        }).addClass("watermark").val("Naam");
    });
    $("#cemail").addClass("watermark");
    $("#cemail").focus(function () {
        $(this).filter(function () {
            return $(this).val() == "" || $(this).val() == "Emailadres"
        }).removeClass("watermark").val("");
    });
    $("#cemail").blur(function () {
        $(this).filter(function () {
            return $(this).val() == ""
        }).addClass("watermark").val("Emailadres");
    });

    loadWatermarks();
    //activateGMS();
});

function loadWatermarks(){
	$('input[type=text]').focus(function(){
		var t = $(this);
		if(t.attr('rel') == undefined)t.attr('rel',t.val());
		if(t.val() == t.attr('rel')) t.val('');	
	}).blur(function(){
		var t = $(this);
		if(t.val() == '')t.val(t.attr('rel'));
	})
}

function getYouTubeInfo(code, ctrlId) {
    $.ajax({
        url: "http://gdata.youtube.com/feeds/api/videos/" + code + "?v=2&alt=json",
        dataType: "jsonp",
        success: function (data) {
            $("#video" + ctrlId).text(data.entry.yt$statistics.viewCount);
        }
    });

    // Examples:
    //    var title = data.entry.title.$t;
    //    var description = data.entry.media$group.media$description.$t;
    //    var viewcount = data.entry.yt$statistics.viewCount;
    //    var author = data.entry.author[0].name.$t;
}

function postContact() {
    $.post("test.php", { name: "John", time: "2pm" });
}


var markers = new Array();
var visiblemarkers = new Array();
var geocoder;
var firstload;

function loadProjectsMap(elm) {
    var coordinates = $('meta[name=projectslatlng]').attr("content");
    var zooming = $('meta[name=projectszoom]').attr("content");
    if(zooming==null || zooming==''){zooming='10';}
    var lat = coordinates.split(',')[0];
    var lng = coordinates.split(',')[1];
    var latlng = new google.maps.LatLng(lat, lng);
    var myOptions = {
        zoom: parseInt(zooming),
        center: latlng,
        mapTypeId: google.maps.MapTypeId.ROADMAP,
        scrollwheel:false
    };
        projectsMap = new google.maps.Map(elm, myOptions);
        createMarkers();
        geocoder = new google.maps.Geocoder();
        
        
    google.maps.event.addListener(projectsMap, 'click', function () { activateScrollwheel(); });
    google.maps.event.addListener(projectsMap, 'dragstart', function () { activateScrollwheel(); });
    
	    google.maps.event.addListener(projectsMap, 'idle', function() {
		    //if(firstload == "1") {
			    //alert("123");
			    var bounds = projectsMap.getBounds();
			  	for (var i = 0; i < markers.length; i++) {
			  		// obtain the attribues of each marker
		            var latlng = markers[i].position;
		            
		            if (bounds.contains(latlng) == true)
		            {
		                visiblemarkers[visiblemarkers.length] = markers[i].zIndex;
		            }
		        }

			  	$(".vestigingdetail").hide();
			  	for (var j = 0; j < visiblemarkers.length; j++) {
			  		$(".vestigingResults").show();
			  		$('.vest'+visiblemarkers[j]).show();
			  	}
			  	visiblemarkers = []; 
			//} else {
				//$(".vestigingResults").hide();
			//}
			//firstload = "1";
		});
}

function loadGeocodeMap() {
    /*loadProjectsMap($("#mainMap"));*/
    geocode();
    return false;
}

function geocode() {
    var address = $(".mapsaddress").val();
    geocoder.geocode({
      'address': address,
      'partialmatch': true}, geocodeResult);
  }

  function geocodeResult(results, status) {
    if (status == 'OK' && results.length > 0) {
      projectsMap.fitBounds(results[0].geometry.viewport);
    } else {
      //alert("Geocode was not successful for the following reason: " + status);
      $(".search .row").addClass(".error");
      //$(".search .row .inputs").append('<p class="errorMessage">Locatie is ongeldig. Vul een <em>geldige</em> locatie in</p>');
    }
  }
 

function activateScrollwheel(){
    var myOptions = {
        scrollwheel:true
    };
    projectsMap.setOptions(myOptions);
    google.maps.event.removeListener(projectsMap, 'click');
    google.maps.event.removeListener(projectsMap, 'dragstart');
    map = true;
}


function createMarkers() {
    $.ajaxSetup({ error: ajaxError });
    
    var url = '/handlers/locations.ashx';
    $.getJSON(url, function (data) { renderMarkers(data); });
}

function renderMarkers(data) {
    $.each(data.Coordinates, function (i, item) { setMarker(i, item); });
}

function setMarker(i, item) {
    var image = '/images/gm-pin.png';
    var markerImage = new google.maps.MarkerImage({
        url: image,
        scaledSize: 16
    });
    //alert(item.Url);
    var mapInfo = item.Coordinates.split('|');
    var lat = mapInfo[0].split(',')[0];
    var lng = mapInfo[0].split(',')[1];
    var latlng = new google.maps.LatLng(lat, lng);
    var marker = new google.maps.Marker({
        position: latlng,
        map: projectsMap,
        icon: image,
        title: item.Name,
        zIndex: item.Id 
    });
    markers[markers.length] = marker;
    google.maps.event.addListener(marker, 'click', function () { 
    	//createInfoWindow(this); 
    	$.scrollTo('.vest'+marker.zIndex,700, {offset:-15});
    });
}

function markerClick(projectId) {
    document.location = '/handlers/' + projectId + '.aspx';
}

function createInfoWindow(marker) {
    if (infoWindow != null) { infoWindow.close(); }
    infoWindow = new google.maps.InfoWindow({
        disableAutoPan: false,
        position: marker.position
    });
    $.ajaxSetup({ error: ajaxError });
    var url = '/projectinfo.ashx?project='+marker.zIndex.toString();
    $.getJSON(url, function (data) { renderInfoWindow(data); });
    
	
}

//function renderInfoWindow(data) {
//    infoWindow.setContent('<div class="infobox"><h3>' + data.Name + '</h3><p>' + data.Description + '</p><a href="' + data.Link + '">Meer informatie over dit project</a></div>');
//    infoWindow.open(projectsMap);
//}

function renderInfoWindow(data) {
   infoWindow.setContent('<div class="infobox"><a href="' + data.Link + '"><h3>' + data.Name + '</h3></a><p>' + data.Description + '</p><a href="' + data.Link + '">Meer informatie over dit project</a></div>');
   infoWindow.open(projectsMap);
} 

function hideInfoWindow() {
    infoWindow.close();
}

function ajaxError() {
    //alert('error');
}


function loadProjectMap(elm) {
    var mapInfo = $('meta[name=projectMapInfo]').attr("content").split('|');
    var zooming = '10';
    if(mapInfo.length > 1){
        zooming=mapInfo[1];
    }
    var coordinates = mapInfo[0];
    if (coordinates != null && coordinates != '') {
        var lat = coordinates.split(',')[0];
        var lng = coordinates.split(',')[1];
        var latlng = new google.maps.LatLng(lat, lng);
        var myOptions = {
            zoom: parseInt(zooming),
            center: latlng,
            mapTypeId: google.maps.MapTypeId.ROADMAP
        };
            var map = new google.maps.Map(elm, myOptions);
            var image = 'http://www.google.com/intl/en_us/mapfiles/ms/micons/red-dot.png';
            var marker = new google.maps.Marker({
                position: latlng,
                map: map,
                icon: image
            });
        }

      
}
