/*  iSite Technologies Corporation copyright, 2007 */

var mapV =   '<div class="well"></div><div class="surface"> </div><div class="layer"></div><div class="tip"></div>';

			 
var FMapV = '<p class="controls">\
			    <img class="zoomIn" src="../apps/vimap/img/zoomin_btn.png" onmouseenter="zoomEnterV(this, 0);" onmouseleave="zoomLeaveV(this,0);" alt="Zoom In" />\
				<img class="zoomOut" src="../apps/vimap/img/zoomout_btn.png" onmouseenter="zoomEnterV(this, 1);" onmouseleave="zoomLeaveV(this,1);" alt="Zoom Out" />\
			</p>\
              <img class="frame" src="../apps/vimap/img/mfSdn.png" style="bottom:0.0em;left:0.0em;width:15.650em;height:0.563em"/>\
			  <img class="frame" src="../apps/vimap/img/mfSlf.png" style="top:0.5em;left:0.0em;width:1.127em;height:8.3em;"/>\
			  <img class="frame" src="../apps/vimap/img/mfSrt.png" style="top:0.5em;right:0.0em;width:0.939em;height:8.3em;"/>\
			  <img class="frame" src="../apps/vimap/img/mfSup.png" style="top:0.0em;left:0.0em; height:0.501em; width:15.650em;"/>';
			  
var FMapIe6V ='<div class="controls">\
			    <div class="zoomIn" style="filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale,src=\'../apps/vimap/img/zoomin_btn.png\');width:2em;height:2em;" onmouseenter="zoomEnterV(this, 2);" onmouseleave="zoomLeaveV(this,2);" alt="Zoom In"></div>\
				<div class="zoomOut" style="filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale,src=\'../apps/vimap/img/zoomout_btn.png\'); width:2em;height:2em; visibility:hidden" onmouseenter="zoomEnterV(this, 3);" onmouseleave="zoomLeaveV(this,3);" alt="Zoom Out" ></div>\
			  </div>\
              <div class="frame" style="bottom:0.0em;left:0.0em;width:15.650em;height:0.563em; filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale,src=\'../apps/vimap/img/mfSdn.png\'); "></div>\
			  <div class="frame" style="top:0.535em;left:0.0em;width:1.127em;height:8.1em; filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale,src=\'../apps/vimap/img/mfSlf.png\'); "></div>\
			  <div class="frame" style="top:0.535em;right:0.0em;width:0.939em;height:8.1em; filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale,src=\'../apps/vimap/img/mfSrt.png\');"></div>\
			  <div class="frame" style="top:0.0em;left:0.0em; HEIGHT:0.501em; width:15.650em; filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale,src=\'../apps/vimap/img/mfSup.png\'); "></div>';
			  

var vineteMap = null;
var maximized = false;


function initializeGraphicV(e) 
{
    var vw = document.getElementById('vinete');
    
    var ei6 = (navigator.userAgent.indexOf('MSIE 6')>=0) || (navigator.userAgent.indexOf('MSIE 5')>=0) || (navigator.userAgent.indexOf('MSIE 4')>=0);
    if (ei6)
        vw.innerHTML = mapV+FMapIe6V+'<link rel="stylesheet" type="text/css" href="../apps/vimap/js/viMap.css" />';
    else
        vw.innerHTML = mapV+ FMapV;
	
	if (vineteMap == null) 
	{
		vineteMap = new viMap(vw, 
		{
			tileBaseUri: '',
			tileSize: 256,
			tilePrefix: '../apps/vimap/maps/lv{l}_{z}/{x}_{y}_{z}.png',
			maxZoom: 6,
			minZoom: 1,
			initialZoom: 1,
			blankTile: '../apps/vimap/img/blank.gif',
			loadingTile: '../apps/vimap/img/progress.gif',
			tipUrl : "../text-tour/",
			zones:[
				{x:1, y:1, lt1:0, sx:0.033333, sy:0.033333, fixX: -16, fixY:-16, move:false},  // 1
				{x:2, y:2, lt1:0, sx:0.066666, sy:0.066666, bsx:720, bex:3536, bsy:500, bey:2300},  // 2
				{x:4, y:3, lt1:0, sx:0.133333, sy:0.133333, bsx:720, bex:4800, bsy:500, bey:3500},  // 3
				{x:7, y:5, lt1:0, sx:0.26666, sy:0.2666666, bsx:820, bex:5906, bsy:400, bey:3850},  // 4
				{x:14, y:10, lt1:0, sx:0.5, sy:0.5, bsx:900, bex:6100, bsy:400, bey:4100},  // 5
				{x:17, y:12, lt1:0, sx:0.66666, sy:0.66666666, bsx:1000, bex:6300, bsy:400, bey:4300}   // 6
				]
		});
		
		vineteMap.init();
		vineteMap.onPick = onPick;
		var zoom = vw.getAttribute("zoom");
		if (zoom)
		{
		   while(zoom>0)
		   {     
		        vineteMap.zoom(zoom);
		        zoom--;
		   }
		}
		else
		{
		    if (siteId!="")
		    {
		      vineteMap.zoom(1);
		      vineteMap.zoom(1);
		      vineteMap.zoom(1);
		      vineteMap.zoom(1);
		    }
		}
		
		var th = themesV['SEL'];
		th.vid = vineteMap.addSelLayer(th.ly);    
		
		if (typeof langId!="undefined")
		{
		    if (langId==1)
		        vineteMap.setLang('f');
		    else
		        vineteMap.setLang('e');
		        
		}
		
		if (typeof theme!="undefined")
		{
		    th = themesV[theme];
		    if (th)
		    { 
	        try
	        {
			        th.lid = vineteMap.addLayer(th.ly);    
			        vineteMap.showAllLayer(th.lid);
			        if (siteId!="")
			            vineteMap.gotoSite(siteId);
			    }
			    catch(e)
			    {}
			}
		}
		if (typeof btn_state!="undefined")
		{ 
		    vineteMap.btnState = btn_state;
		    vw.btnState = btn_state;
		}
		    
		if (typeof vw.what!="undefined")
		    vineteMap.what = vw.what;
		else
		{
		   // if (typeof what!="undefined") 
		    //    vineteMap.what = what;
		    //else
		        if (typeof btn_state!="undefined")
		        {
		            if (btn_state=="HTML")
		                vineteMap.what = "site";
		            else
		                vineteMap.what = "text";
		        }
		 }
		 
		 if (typeof onLoadAppMap=="function")
		    try
		    {
			    onLoadAppMap(vineteMap);    
			}
			catch(e)
			{
			}
	}

	document.body.onselectstart = selectstart; 
	document.body.oncontextmenu = contextmenu;
  if (ei6)
   	refressCSS();  // crazy stuff, parche...
}

function writeToTextContainer(Text) 
{
}


function selectstart() 
{
    return true;
} 

function contextmenu()
{
    return true;
}

function reinitializeGraphicV(e) 
{
    //if (vineteMap!=null)
	  //  vineteMap.resize();
}

viMap.maximizeHandler = function(e) 
{
	if (maximized) 
	{
		vineteMap.border = -1;
		document.body.style.padding = '0.626em';
		document.getElementById('header').style.display = 'block';
		document.getElementById('viewer').style.width = '100%';
		document.getElementById('viewer').style.height = '25.040em';
	}
	else 
	{
		document.body.style.padding = '0em';
		document.getElementById('header').style.display = 'none';
		vineteMap.border = 0;
		vineteMap.resize();
	}

	maximized = !maximized;
}

EventUtils.addEventListener(window, 'load', initializeGraphicV, false);
// EventUtils.addEventListener(window, 'resize', reinitializeGraphicV, false);

function changeLang(t)
{
	vineteMap.tileUrlProvider.prefix = '../apps/vimap/maps/l{l}_{z}/{x}_{y}_{z}.png';
	vineteMap.setLang(t.value);
}

function xy(p)
{
	return 'x:'+p.x+' y:'+p.y;
}

function onPick(map, montion)
{
    if (typeof notes!="undefined")
    {
	    var t = map;
	    var x = (-map.x)+map.mark.x;
	    var y = (-map.y)+map.mark.y;
	    notes.innerHTML = 'map='+xy(map)+' montion='+xy(montion)+' mark='+xy(map.mark)+'pos='+xy({"x":x, "y":y});
    	
	    var z = map.zones[map.zoomLevel-map.minZoomLevel];
        var sx = z.sx;
        var sy = z.sy;
        x = x*(1/sx);
        y = y*(1/sy)

	    var layer = '[{x:'+x+', y:'+y+', scale:false, img:"img/circle.png", link:"", text_e:"", text_f:""}]';
	    noteArea.innerText = layer+'\n';
	}
	// var layer = [{x:x, y:y, sx:false, img:"img/circle.png", link:"testing the link"}];
	// vineteMap.addLayer(layer);
}


function setLayer(t)
{
	if (t.checked)
		vineteMap.showAllLayer(t.dvalue);
	else
		vineteMap.hideLayer(t.dvalue);
}

function deleteLayer(t)
{
	vineteMap.removeLayer(t.dvalue);
	t.parentElement.parentElement.removeChild(t.parentElement);
}

function addLayer(t)
{
	try
	{
		var layer = eval(t.innerText);
		var lyId = vineteMap.addLayer(layer);
		layersAdd.innerHTML += '<div><input dvalue="'+lyId+'" value="layer_'+lyId+'" checked=true onclick="setLayer(this)" type="checkbox">'+lyId+'</input><input type="button" dvalue="'+lyId+'" onclick="deleteLayer(this);" value="x"><br></div>';
	}
	catch(e)
	{
	}
}

function actSelect()
{
	return (window.event.srcElement.tagName=="TEXTAREA");
}

function setTheme(tm, t)
{
	if (t.checked)
	{
		vineteMap.tileUrlProvider.prefix = '../apps/vimap/maps/'+tm+'/lf_{z}/{x}_{y}_{z}.png';
		//vineteMap.refresh();
		vineteMap.zoom(6-vineteMap.zoomLevel);
	}
	return true;
}

function selectTheme(tm, t)
{
	if ((typeof themesV!="undefined") && (typeof themesV[tm]!="undefined"))
	{
		var theme = themesV[tm];
		if (typeof theme.vid=="undefined")
			theme.vid = vineteMap.addLayer(theme.ly);    
		if (typeof theme.vid!="undefined")
		{
			if (t.checked)
			    vineteMap.showAllLayer(theme.vid);
			    else
			    vineteMap.hideLayer(theme.vid);
		}
	}
}

function zoomEnterV(t, i)
{
    switch(i)
    {
      case 0:
        t.src='../apps/vimap/img/zoomin_btn_hi.png';
        break;
      case 1:
        t.src='../apps/vimap/img/zoomout_btn_hi.png';
        break;
      case 2:
        t.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale,src=\'../apps/vimap/img/zoomin_btn_hi.png\')";
        break;
      case 3:
        t.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale,src=\'../apps/vimap/img/zoomout_btn_hi.png\')";
        break;
    }
}

function zoomLeaveV(t, i)
{
    switch(i)
    {
      case 0:
        t.src='../apps/vimap/img/zoomin_btn.png';
        break;
      case 1:
        t.src='../apps/vimap/img/zoomout_btn.png';
        break;
      case 2:
        t.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale,src=\'../apps/vimap/img/zoomin_btn.png\')";
        break;
      case 3:
        t.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale,src=\'../apps/vimap/img/zoomout_btn.png\')";
        break;
    }
}

function refressCSS()
{
  var i,a,s;
  a=document.getElementsByTagName("link");
  for(i=0;i<a.length;i++)
  {
      s=a[i];
      if(s.rel.toLowerCase().indexOf("stylesheet")>=0&&s.href) 
      {
          var h=s.href.replace(/(&|%5C?)forceReload=d+/,'');
          s.href=h+(h.indexOf('?')>=0 ? '&' : '?')+'forceReload='+(new Date().valueOf());
      }
  }
};