var gmap;
var obmocje;
var koordinate;

var btnInputPolygon;
var btnFinishInput;

function initGoogleMaps()
{
	var mapPosition = new google.maps.LatLng(46.15,15);
   	var mapOptions = {zoom: 8, center: mapPosition, mapTypeId: google.maps.MapTypeId.TERRAIN, navigationControl: false, draggableCursor: 'move'};
	gmap = new google.maps.Map(document.getElementById("gmap"), mapOptions);
	
	koordinate = new google.maps.MVCArray();
	
	obmocje = new google.maps.Polygon({
	clickable: false,
    paths: koordinate,
    strokeColor: "#FF0000",
    strokeOpacity: 0.8,
    strokeWeight: 1,
    fillColor: "#FF0000",
    fillOpacity: 0.35
  	});
	
	obmocje.setMap(gmap);
  
	addUIcontrols();
}

function addUIcontrols()
{
	btnInputPolygon = document.createElement('input');
	btnInputPolygon.type = 'button';
	btnInputPolygon.id = 'btnPolygon';
	btnInputPolygon.value = 'Vnesi območje';
	btnInputPolygon.style.cursor = 'default';
	btnInputPolygon.style.width = '100px';
	gmap.controls[google.maps.ControlPosition.TOP_LEFT].push(btnInputPolygon);
	google.maps.event.addDomListener(btnInputPolygon, 'click', initPolygonInput);
	
	btnFinishInput = document.createElement('input');
	btnFinishInput.type = 'button';
	btnFinishInput.id = 'btnPolygon';
	btnFinishInput.value = 'Zaključi vnos';
	btnFinishInput.disabled = true;
	btnFinishInput.style.cursor = 'default';
	btnFinishInput.style.width = '100px';
	gmap.controls[google.maps.ControlPosition.TOP_LEFT].push(btnFinishInput);
	google.maps.event.addDomListener(btnFinishInput, 'click', finishPolygonInput);
}

function initPolygonInput(e)
{
	if (koordinate.getLength() > 0)
	{
		if (confirm('Območje že obstaja, če boste nadaljevali bo staro območje izbrisano.'))
		{
			while (koordinate.getLength() > 0)
			{
				koordinate = new google.maps.MVCArray();
			}
			obmocje.setOptions({paths: koordinate});
			
						
			gmap.setOptions({ draggableCursor: 'crosshair' });
			btnInputPolygon.disabled = true;
			btnFinishInput.disabled = false;
		
			google.maps.event.addDomListener(gmap, 'click', inputPoint);
		}
	}
	else
	{
		gmap.setOptions({ draggableCursor: 'crosshair' });
		btnInputPolygon.disabled = true;
		btnFinishInput.disabled = false;
		
		google.maps.event.addDomListener(gmap, 'click', inputPoint);
	}
}

function finishPolygonInput(e)
{
	gmap.setOptions({ draggableCursor: 'move' });
	btnFinishInput.disabled = true;
	btnInputPolygon.disabled = false;
	
	google.maps.event.clearListeners(gmap, 'click');
}

function inputPoint(e)
{
	koordinate.push(e.latLng);
	obmocje.setOptions({paths: koordinate});
}

function sendQuery()
{	
	var ok = true;
	var textField;
	var coords='';
	
	coords = serializeKoordinate();
	if (coords == '') {
		alert('Prosimo vnesite željeno območje.');
		ok = false;
	}

	if ($('#nazivOrg').val() == ''){
		$('#nazivOrg').addClass('textFault');
		ok = false;
	}
	else
		$('#nazivOrg').removeClass('textFault');
	
	if ($('#email').val() == ''){
		$('#email').addClass('textFault');
		ok = false;
	}
	else
		$('#email').removeClass('textFault');
	
	if ($('#kontakt').val() == ''){
		$('#kontakt').addClass('textFault');
		ok = false;
	}
	else
		$('#kontakt').removeClass('textFault');
	
	if ($('#telefon').val() == ''){
		$('#telefon').addClass('textFault');
		ok = false;
	}
	else
		$('#telefon').removeClass('textFault');
		
	if (!ok)
		alert('Prosimo izpolnite vsa polja v levem stolpcu. Informacije so za interno uporabo v podjetju Flycom in ne bodo posredovane tretji osebi.');
	//opombe se ne preverja
	
	if ($('input[type="checkbox"]:checked').length == 0)
	{	
		alert('Označite vsaj en izdelek');
		ok = false;	
	}
	
	if (ok)
	{
		$.ajax({
		url: 'datashop/processQuery.php',
   		type: 'POST',
		cache: false,
		dataType: 'html',
		data: 'nazivOrg=' + $('#nazivOrg').val() 
		    + '&email=' + $('#email').val()
		    + '&kontakt=' + $('#kontakt').val()
			+ '&tel=' + $('#telefon').val() 
			+ '&opombe=' + $('#opombe').val() 
			+ '&dmr=' + $('#chkDMR:checked').val()
			+ '&dmp=' + $('#chkDMP:checked').val()
			+ '&dof=' + $('#chkDOF:checked').val()
			+ '&irdof=' + $('#chkIRDOF:checked').val()
			+ '&dtk5=' + $('#chkDTK5:checked').val()
			+ '&posnetek=' + $('#chkGPO:checked').val()
			+ '&klasOblak=' + $('#chkOBL:checked').val()
			+ '&surovi=' + $('#chkSUR:checked').val()
			+ '&drugo=' + $('#chkDRUGO:checked').val()
			+ '&coordinates=' + serializeKoordinate(),
   		success: onQuerySent
 		});
	}
	
}

function onQuerySent()
{
	$(':input','#requestForm')
	 .not(':button, :submit, :reset, :hidden')
	 .val('')
	 .removeAttr('checked')
	 .removeAttr('selected');
	
	getContent(1);
	alert('Vaš zahtevek za ponudbo je bil uspešno poslan. Naš marketing oddelek vas bo kontaktiral v najkrajšem možnem času.');
}

function serializeKoordinate()
{
	var result = '';
	
	for (var i = 0; i < koordinate.getLength(); i = i + 1)
	{
		result = result + koordinate.getAt(i).lng() + ', ' + koordinate.getAt(i).lat() + '\n';
	}
	return result;
}
