var map = document.getElementById('map');
var map_cont = document.getElementById('mapContainer');
var d = document.getElementById('data');

map.onmousemove=pmMove;
d.onmousemove=hideData;

function hideData(){
	this.style.display='none';
}

function changeMap(m) {
	map.src = 'population/'+m +'.png';
	high = document.getElementById('map_rel_link');
	low = document.getElementById('map_act_link');
	
	if(m.indexOf('act')>0)
	{	t = high;
		high = low;
		low = t;
	}

	high.className='mapLinkActive';
	low.className='mapLinkInactive';
}

function pmMove(e)
{
	if(pos = getMouse(e)) {
		var k = xs.length;
		var x = pos.x-tol;
		var y = pos.y-tol;
		var j = Math.floor(k/2);
		
		while (xs[j] < x && (j+10) < k) j +=10; 
		while (xs[j] > x && j > 1) j -=10; 
		if (j<0) j=0;	
		
		r = new Array();
		while (xs[j] < x+tol*2)
		{	if (xs[j] >x ) r.push(j);
			j++;
		}

		var m = '';
		for(j=0; j<r.length; j++)
			if (ys[r[j]] >= y  && ys[r[j]] <= y+tol*2)
			{	n = r[j]*5;
				m += '<h3>'+data[n]+'</h3><table><tr><th>Pop:</th><td>'+data[n+2]+
					 '&nbsp;<img src="images/rarr.gif">&nbsp;'+ data[n+1]+
					 '</td></tr><tr><th>Change:</th><td>' + data[n+3] +
					 '&nbsp;(' + data[n+4] + '%)</td></tr></table>';
			}
		d.style.display = m ? 'block' : 'none';
		d.innerHTML = m;
		d.style.left = x+tol+20+"px";
		d.style.top = y+tol-d.clientHeight/2+"px";
		
	}
}

function getMouse(e)
{
	var pos = new Object();
	
	if(!e) e=window.event;
	if(!e) return false;

	if(e.offsetX) {
		pos.x = e.offsetX;
		pos.y = e.offsetY;
	} else {
		pos.x = e.pageX - map.offsetLeft - map_cont.offsetLeft;
		pos.y = e.pageY - map.offsetTop - map_cont.offsetTop;
	}
	if (isNaN(pos.x) || isNaN(pos.y)) pos= false;
	return pos;
}
