// JavaScript Document
var marker;
var map;
var geocoder = null;
var def_sizes = new Array();
var red_pin_active = false;
var red_pin_marker;
var	spec_mekl_open = false;

function load_map() {
	if (GBrowserIsCompatible()) {
		map = new GMap2(document.getElementById("map"));
		
        GEvent.addListener(map, "click", function(overlay, latlng) {
			if (latlng && red_pin_active && !red_pin_marker) {
				show_red_pin(latlng.lat(),latlng.lng());
			} else {
				if (latlng && red_pin_active && red_pin_marker) {
					map.removeOverlay(red_pin_marker);
					red_pin_marker = '';
					show_red_pin(latlng.lat(),latlng.lng());
				}
			}	
		});		
		
		map.setCenter(new GLatLng(56.8,24.7686767578125), 8);
		map.addControl(new GLargeMapControl());
		//map.setUIToDefault();
		map.addControl(new GMapTypeControl());
		map.addControl(new GScaleControl());
		map.enableScrollWheelZoom();
		
        geocoder = new GClientGeocoder();
	}
}

function createMarker(point, name, address) {
	var marker = new GMarker(point);
	var html = '<b>' + name + '</b> <br/>' + address;
	GEvent.addListener(marker, 'click', function() {
		marker.openInfoWindowHtml(html);
	});
	return marker;
}
    
function resize_blocks() {
	var izmeri = window.getSize();
	var y = izmeri.y - $('izvelne').getSize().y -70;
	$('left_panel').setStyle('height', y+'px');
	$('kartes_pamats').setStyle('height', y+'px');
	y =  izmeri.y - $('ievades_forma').getSize().y - $('izvelne').getSize().y -70;
	$('rezultatu_saraksts').setStyle('height', y+'px');	
	y = izmeri.y - $('izvelne').getSize().y - $('rikjosla').getSize().y - 1 -70; //opera
	$('map').setStyle('height', y+'px');
	
	izmeri = window.getSize();
	var x = izmeri.x -50;
	$('izvelne').setStyle('width', x+'px');
	x = izmeri.x - $('left_panel').getSize().x -50;
	$('kartes_pamats').setStyle('width', x+'px');
	$('map').setStyle('width', x+'px');
	
	$('body').setStyle('width', window.getSize().x+'px');
	$('body').setStyle('height', window.getSize().y+'px');	
		
	izmeri = window.getSize();
	y = izmeri.y - $('izvelne').getSize().y;
	$('left_panel').setStyle('height', y+'px');

	$('kartes_pamats').setStyle('height', y+'px');
	//y =  izmeri.y - $('ievades_forma').getSize().y - $('izvelne').getSize().y;
	y =  $('left_panel').getSize().y - $('ievades_forma').getSize().y-7;
	$('rezultatu_saraksts').setStyle('height', y+'px');	

	y = izmeri.y - $('izvelne').getSize().y - $('rikjosla').getSize().y - 1; //opera
	$('map').setStyle('height', y+'px');
	
	izmeri = window.getSize();
	x = izmeri.x;
	$('izvelne').setStyle('width', x+'px');
	x = izmeri.x - $('left_panel').getSize().x;
	$('kartes_pamats').setStyle('width', x+'px');
	$('map').setStyle('width', x+'px');

	if($('spec_mekl_box') && $('map').getSize().x<=732) {
		$('spec_mekl_box').setStyles({ width : ($('map').getSize().x - 20) + 'px'});
	} else {
		if($('spec_mekl_box') && $('map').getSize().x>732) {
			$('spec_mekl_box').setStyles({ width : '752px'});
		}
	}
}

function aiziet(papildus_url) {
	var urlis ='';
	if ($('company_id').value!='') {
		urlis = urlis + '&company=' + $('company_id').value;
	}
	if ($('address_id').value!='') {
		urlis = urlis + '&address=' + $('address_id').value;
	}
	if ($('keywords_id').value!='') {
		urlis = urlis + '&keywords=' + $('keywords_id').value;
	}
	if ($('radiuss_id').value!='') {
		urlis = urlis + '&radiuss=' + $('radiuss_id').value;
	}
	
	if(papildus_url!='') {
		urlis = urlis + papildus_url;
	} else {
		if(spec_mekl_open) {
			urlis = urlis + get_spec_mekl_params();
		}
	}
	if(red_pin_marker) {
		urlis = urlis + '&pinx=' + red_pin_marker.getLatLng().lat() + '&piny=' + red_pin_marker.getLatLng().lng();
	}
	
	var bounds = map.getBounds();

	var lbx = bounds.getSouthWest().lat();
	var lby = bounds.getSouthWest().lng();
	var rtx = bounds.getNorthEast().lat();
	var rty = bounds.getNorthEast().lng();
	var urlis = urlis + '&lbx=' + lbx + '&lby=' + lby + '&rtx=' + rtx + '&rty=' + rty;

	var sx = bounds.toSpan().lat();
	var sy = bounds.toSpan().lng();
	var cx = bounds.getCenter().lat();
	var cy = bounds.getCenter().lng();
	var urlis = urlis + '&sx=' + sx + '&sy=' + sy + '&cx=' + cx + '&cy=' + cy;

	urlis = urlis.substr(1,urlis.length-1);
	$('progress').innerHTML = '<img style="position:relative;float:right;" src="http://www.viss.lv/img/ajax_load.gif" />';
	if(urlis!='') {
		var req = new Request({
			url: PATH_ROOT + "/search_map.php?l=" + valoda,
			data: urlis,
			method: 'get',
			evalScripts  : true,
			onSuccess: function(html) {
				$('rezultatu_saraksts').innerHTML =  html;
				$('progress').innerHTML = '';				
			},
			onFailure: function() {
				$('rezultatu_saraksts').innerHTML = 'Kļūda savienojumā!';
				$('progress').innerHTML = '';
			}
		});
		req.send();
	}
}

function move_to(p) {
	var urlis = '&p='+p;
	var req = new Request({
		url: PATH_ROOT + "/map_info.php?l=" + valoda,
		data: urlis,
		method: 'get',
		evalScripts  : true,
		onSuccess: function(html) {
			markers[p].openInfoWindow(html);
		},
		onFailure: function() {
			$('rezultatu_saraksts').innerHTML = 'Kļūda savienojuma!';
			//$('loadgif').setStyle('visibility', 'hidden');
		}
	});
	req.send();
}

function init() {
	resize_blocks();
	load_map();
	var lauki = ['company_id','address_id','keywords_id','radiuss_id'];
	lauki.each(function(item, index){
		$(item).addEvent('keypress', function(event) {
			if(event.key=='enter'){aiziet("");}
		})
	});
	
	$('radiuss_id').disabled = true;
	$('red_pin_poga').addEvent('click', function(){
		if(red_pin_active) {
			$('red_pin_poga').src = PATH_ROOT + "/img/red_pin.jpg";
			$('radiuss_id').disabled = true;
			$('radiuss_id').value = '';
			$('address_id').disabled = false;		
			red_pin_active = false;
			if(red_pin_marker) {
				map.removeOverlay(red_pin_marker);
				red_pin_marker = '';
			}
		} else {
			$('red_pin_poga').src = PATH_ROOT + "/img/red_pin_back.jpg";
			$('radiuss_id').disabled = false;
			$('address_id').disabled = true;
			$('address_id').value = '';				
			red_pin_active = true;			
		}
	});
	ras();
}

function addMarker(latitude, longitude, pid) {
	var key = 'p'+pid;
	markers[pid] = new GMarker(new GLatLng(latitude, longitude));
	 bounds.extend(new GLatLng(latitude, longitude));
	GEvent.addListener(markers[pid], 'click',function() {
		$(key).setStyle('background-color', '#99B3CC');
		move_to(pid);
		return false;
	});
	map.addOverlay(markers[pid]);
}

function open_adres_marker(id){
	var key = 'g_adr' + id;
	map.panTo(ga_markers[id].getLatLng());
	ga_markers[id].openInfoWindow($(key).innerHTML);
}
	
function add_ga_marker(latitude, longitude, id) {
	var key = 'g_adr' + id;
	
	var blueIcon = new GIcon(G_DEFAULT_ICON);
	blueIcon.image = "http://www.google.com/intl/en_us/mapfiles/ms/micons/blue-dot.png";
	blueIcon.iconSize = new GSize(32, 32);
	markerOptions = { icon:blueIcon };

	ga_markers[id] = new GMarker(new GLatLng(latitude, longitude),markerOptions);
	bounds.extend(new GLatLng(latitude, longitude));
	GEvent.addListener(ga_markers[id], 'click', function() {
		ga_markers[id].openInfoWindow($(key).innerHTML);
		return false;
	});
	map.addOverlay(ga_markers[id]);
}

function open_sepc_mekl(mekl_kods) {
	return false;
}

function show_spec_mekl_menu() {
	$('spec_mekl_izlecosais').innerHTML = 'pirtis<br />telpas svinībām<br />naktsmītnes';
	$('spec_mekl_izlecosais').setStyles({ visibility : 'visible', height : '100px', position : 'absolute', width : '200px', top : '100px',left : '100px'});
	$('spec_mekl_izlecosais').setStyle('z-index', '1000');
}

function show_red_pin(lat,lng) {
	var myIcon = new GIcon(G_DEFAULT_ICON);
	myIcon.image = "http://www.viss.lv/img/red_pin.png";
	myIcon.iconSize = new GSize(32, 32);
	markerOptions = { icon:myIcon, draggable:true };
	marker = new GMarker(new GLatLng(lat,lng),markerOptions);
	GEvent.addListener(marker, "click", function() {
		var html = "Ievadiet radiusu kilometros ap šo punktu un spiediet meklēt.";
		marker.openInfoWindow(html);
	});
	red_pin_marker = marker;
	map.addOverlay(marker);		
}