var kaartFilter = null;
function InitSite(){
	kaartFilter = new KaartFilter();
	kaartFilter.enableFiltering();
	
	if(typeof InitPage == 'function') {InitPage();}
}

function KaartFilter(){
	this.province = $('#home_province');
	this.locality = $('#home_localityFromProvince');
	
	this.form = document.getElementById('form');
	
	this.selectProvinceText = LBL_JS_KAART_FORM_SELECT_PROVINCE;
	this.selectLocalityText = LBL_JS_KAART_FORM_SELECT_LOCALITY;
	
	//get old value if exists
	var urlVars= getUrlVars();
	var idProvince = urlVars.idProvince;
	var idLocality = urlVars.idLocality;
	 
	var opt = {
			functionName: 'getProvinceJSON'
	};
	this.getValues(this.province, opt, idProvince, this.selectProvinceText);
	
	if(idProvince != null && idProvince != -1){
		var opt = {
			functionName: 'getVillageByProvinceJSON',
			provinceId: idProvince
		};
	}
	else{
		var opt = {
			functionName: 'getVillageJSON'
		};
	}
	this.getValues(this.locality, opt, idLocality, this.selectLocalityText);
	
	var me = this;

        $('#openKaart').click(function(){
            var province = me.province.find(':selected').text();
            var locality = me.locality.find(':selected').text();
            if(typeof FocusMapLocation  == 'function'){
                //focus map when showroadworks page is loaded
                FocusMapLocation(province, locality,  me.province.val(),  me.locality.val());
                return false;
            }else{

		location.replace(BASEURL + 'ShowRoadworks/?province=' + province +'&locality=' + locality +'&idProvince=' + me.province.val() +'&idLocality=' + me.locality.val());
		return false;
            }
        });
}
KaartFilter.prototype.getValues = function(control, opt, id, nullOption){
	GetJSONObjectFromDB(opt, function(data){
		var json = jQuery.parseJSON(data);
		if(json == null)return;
		control.attr('innerHTML','');
		
		if(nullOption != null){
			control.append(
			     $('<option></option>').val(-1).html(nullOption)
    	 );
		}
		
		for(var i =0;i<json.length;i++){
			var item = json[i];
			var name = jQuery.trim(item.name);
                        if(name != ''){
			control.append(
				     $('<option></option>').val(item.id).html(name)
				 );
                        }
                        
		}
		control.val(id);
	});
};
KaartFilter.prototype.enableFiltering = function(){
	var me = this;
	this.province.change(function(){
		var id = $(this).val();
		me.locality.innerHTML = '';
		me.locality.attr('innerHTML','');

		if(id != -1){
			var opt = {
				functionName: 'getVillageByProvinceJSON',
				provinceId: id
			};
		}
		else{
			var opt = {
				functionName: 'getVillageJSON'
			};
		}
		me.getValues(me.locality, opt, -1, me.selectLocalityText);
	});
};

$(document).ready(function() {
    $("#divNewsContent").load(BASEURL + "News/page-1");   
    $("#newsbox").load(BASEURL + "News");
    $(".niews_trigger").click(function() {
    	 $("#newsbox").load(BASEURL + "News");
   });
    $("#contact").load(BASEURL + "Contact");
});

