// General TurnTool script, DOT NOT EDIT, make changes in template.js file.

var ie4 = (document.all && !document.getElementById);
var ie5 = (document.all && document.getElementById);
var ns6 = (!document.all && document.getElementById);

function element(id)
{
	if(ie4)	// Explorer 4
		return document.all[id];
	else	// Explorer 5+ Netscape 6+ and Mozilla and Firefox
		return document.getElementById(id);
}

function createTurnTool(width, height, file, color, transparent)
{
  if (ie4||ie5)
  {
  	turntoolObject = '<object id="TNTCtrl" width="'+width+'" height="'+height+'" classid="CLSID:402ee96e-2ce8-482d-ada5-ceceea07e16d"';
  	turntoolObject += ' codebase="http://www.turntool.com/ViewerInstall.exe#version=2,12,0,8"><param name="transparent"'; 
  	turntoolObject += ' value="'+transparent+'"><param name="ctrl_color" value="'+color+'"><param name="tnt_back_color"';
  	turntoolObject += ' value="'+color+'"><param name="src" value="'+file+'"><param name="script" value="ProgressBar.SetDownloadText(\'Veuillez patienter pendant le chargement\'); ProgressBar.SetCoreDownloadText(\'Mise ŕ jour du visualiseur 3D\');TNTCtrl.SetLogo(\'None\');"></object>';
  	turntoolObject += '<sc'+'r'+'ipt LANGUAGE=JavaScript FOR=TNTCtrl EVENT=TNTEvent(string)> execScript(string); </sc'+'r'+'ipt>';
  }
  else
  {
	turntoolObject = '<embed id="TNTCtrl" width="'+width+'" height="'+height+'" src="'+file+'" transparent="0" ctrl_color="'+color+'"';
	turntoolObject += 'tnt_back_color="'+color+'" pluginspage="http://www.turntool.com/download/" type="application/tntfile"></embed>';
  }
  element('TurnTool').innerHTML = turntoolObject;
}

function initTurnTool()
{
	var tntInstalled = isTurnToolInstalled();
	if (tntInstalled==false)
	{
		element('TurnTool').innerHTML = '<center><input type="button" value="Installer la visionneuse 3D" onclick="installTurnTool();"></center>';
		if (ie4||ie5)
		{
			createTurnTool(tntSizeX,tntSizeY,tntSource, tntCtrlColor, tntTransparentOption);
		}
		checkRefresh();
	}
	else
	{
		createTurnTool(tntSizeX,tntSizeY,tntSource, tntCtrlColor, tntTransparentOption);
	}	
}

function isTurnToolInstalled()
{
	var tntInstalled = false;
	if (ie4||ie5)
	{
		try
		{
			var xObj = new ActiveXObject("TNT.TNTCtrl");
			if (xObj)
			{
				tntInstalled = true;
			}
		}
		catch (e)
		{
		}
	}
	else
	{
		if(navigator.plugins.namedItem("TurnTool XPCOM Plugin"))
		{
			tntInstalled = true;
		}
	}
	return tntInstalled;
}

function installTurnTool() 
{
	if (ie4||ie5)
	{
		window.location.href = "http://www.turntool.com/OfflineInstall.exe";
	}
	else
	{
		var xpi = {'TurnTool Viewer Installation':'http://www.turntool.com/ViewerInstall.xpi'};
		InstallTrigger.install(xpi,installFinish);
	}
}

function installFinish(url, result)
{
	window.location.href = window.location;
}

var checkCounter = 0;
function checkRefresh()
{
	var tntInstalled = isTurnToolInstalled();
	if(tntInstalled==false)
	{
		checkCounter++;
		if (checkCounter>120)
		{
			checkCounter=0;
			installTurnTool();
		}
		setTimeout('checkRefresh()',500);
	}
	else
	{
		window.location.href = window.location;
	}
}

function TNTDoCommand(string)
{
	var control = element("TNTCtrl");
	if(control && control.ready)
		return control.TNTDoCommand(string);
	return "";
}

function focus()
{
	if (!ns6)
	{
		element("TNTCtrl").focus();
	}
}

function OnClick( obj )
{

	if(modele_aff==0)
	{		
		num_maison=obj.split("_clic");
				
		nom_fiche="fiches/fiche_"+maison_donnees[num_maison[0]][0];	// charger le nom de la fiche produit
		nom_fiche+="_"+maison_donnees[num_maison[0]][1];	
				
		charge_modele(maison_donnees[num_maison[0]][0],orientation[maison_donnees[num_maison[0]][1]]);
		
		orienter_maison=orientation[maison_donnees[num_maison[0]][1]];
		
		
	}
	else
	{
		switch(obj)
		{
			
			case "cacher_panneau_down":		// vers rdc
			
				TNTDoCommand('objects("bouton_clic_et1*").SetEnable(false)');
				TNTDoCommand('objects("bouton_clic_et2*").SetEnable(false)');
				TNTDoCommand('objects("bouton_clic_rdc*").SetEnable(true)');
				lancer_aller(99);
			break;
			case "cacher_panneau_up":		// vers 1er et
				TNTDoCommand('objects("bouton_clic_et1*").SetEnable(true)');
				TNTDoCommand('objects("bouton_clic_et2*").SetEnable(false)');
				TNTDoCommand('objects("bouton_clic_rdc*").SetEnable(false)');
				lancer_aller(100);
			break;
			
			case "cacher_panneau_up2":		// vers 2e étage
				TNTDoCommand('objects("bouton_clic_et1*").SetEnable(false)');
				TNTDoCommand('objects("bouton_clic_et2*").SetEnable(true)');
				TNTDoCommand('objects("bouton_clic_rdc*").SetEnable(false)');
				lancer_aller(101);
			break;
			
			case "cacher_panneau_down2":		// vers 1er etage
				TNTDoCommand('objects("bouton_clic_et1*").SetEnable(true)');
				TNTDoCommand('objects("bouton_clic_et2*").SetEnable(false)');
				TNTDoCommand('objects("bouton_clic_rdc*").SetEnable(false)');
				lancer_aller(100);
			break;
			
			case "cacher_panneau_down2":
			
				TNTDoCommand('objects("bouton_clic_et1*").SetEnable(true)');
				TNTDoCommand('objects("bouton_clic_et2*").SetEnable(false)');
				TNTDoCommand('objects("bouton_clic_rdc*").SetEnable(false)');
				lancer_aller(99);
			break;
			case "cacher_panneau_up2":
				TNTDoCommand('objects("bouton_clic_et1*").SetEnable(false)');
				TNTDoCommand('objects("bouton_clic_et2*").SetEnable(true)');
				TNTDoCommand('objects("bouton_clic_rdc*").SetEnable(false)');
				lancer_aller(100);
			break;
			
			
			
			
			case "bouton_clic_rdc_entree":
				lancer_tp(entree);
			break;
			case "bouton_clic_rdc_terrasse":
				lancer_tp(terrasse);
			break;
			case "bouton_clic_rdc_cellier":
				lancer_tp(cellier);
			break;
			case "bouton_clic_rdc_cuisine":
				lancer_tp(cuisine);
			break;
			case "bouton_clic_rdc_garage":
				lancer_tp(garage);
			break;
			case "bouton_clic_rdc_sejour":
				lancer_tp(sejour);
			break;
			case "bouton_clic_rdc_dgt":
				lancer_tp(dgt);
			break;
			case "bouton_clic_rdc_sde":
				lancer_tp(sde);
			break;
			case "bouton_clic_et1_pallier":
				lancer_tp(pallier);
			break;
			case "bouton_clic_et1_ch1":
				lancer_tp(et1_ch1);
			break;
			case "bouton_clic_rdc_ch1":
				lancer_tp(ch1);
			break;
			case "bouton_clic_et1_ch2":
				lancer_tp(et1_ch2);
			break;
			case "bouton_clic_rdc_ch2":
				lancer_tp(ch2);
			break;
			case "bouton_clic_et1_ch3":
				lancer_tp(et1_ch3);
			break;
			case "bouton_clic_rdc_ch3":
				lancer_tp(ch3);
			break;

			case "bouton_clic_et1_sdb":
				lancer_tp(et1_sdb);
			break;
			case "bouton_clic_rdc_sdb":
				lancer_tp(sdb);
			break;
			
			case "bouton_clic_et1_sde":
				lancer_tp(et1_sde);
			break;
			case "bouton_clic_rdc_sde":
				lancer_tp(sde);
			break;
			
			case "bouton_clic_et1_dressing":
				lancer_tp(et1_dressing);
			break;
			case "bouton_clic_rdc_lingerie":
				lancer_tp(lingerie);
			break;
			case "bouton_clic_et2_ch4":
				lancer_tp(et2_ch4);
			break;
			case "bouton_clic_et2_sdb":
				lancer_tp(et2_sdb);
			break;
			
			/*
			case "panneau_tapisserie" :
				change_mat(1);
			break;
			case "panneau_tapisserie01" :
				change_mat(2);
			break;
			case "panneau_tapisserie02" :
				change_mat(3);
			break;
			case "panneau_tapisserie03" :
				change_mat(4);
			break;*/
			
			default:
				if(TNTDoCommand('Objects(' + obj + ').GetFrame()')<29)	
					TNTDoCommand('Objects(' + obj + ').PlayAnimation(,29)');	
				else
					TNTDoCommand('Objects(' + obj + ').PlayAnimation(,0)');
			break;
		}
	}
	
}

function OnMouseEnter( obj )
{
	changer_aide(99);
	inter=obj.split("_click");
	inter2=inter[0]+'_boite';
		
	TNTDoCommand('Objects('+inter2+').SetEnable(true)');
		
}

function OnMouseExit( obj )
{
	changer_aide(99);
	inter=obj.split("_click");
	inter2=inter[0]+'_boite';
	
	TNTDoCommand('Objects('+inter2+').SetEnable(false)');
}

function OnZoneEnter( zone, physics )
{
	focus();
	affiche_plan(zone);	
}

function OnZoneExit( zone, physics )
{
	focus();
	
}

function OnKeyPress( keyCode, ascii )
{
	
}

function OnKeyRelease( keyCode, ascii )
{
	
}

function Restart()
{
	TNTDoCommand('SceneGraph.Physics.Reset()');
	TNTDoCommand('Objects(*).StopAnimation()');
	TNTDoCommand('Objects(*).SetFrame(0)');
	cameraName = TNTDoCommand('SceneGraph.Camera(0).GetName()');
	TNTDoCommand('CameraCtrl.SetCurrent("'+ cameraName+'")');
}

function addEvent( obj, type, fn )
{
	if (obj.addEventListener)
		obj.addEventListener( type, fn, false );
	else if (obj.attachEvent)
	{
		obj["e"+type+fn] = fn;
		obj.attachEvent( "on"+type, function() { obj["e"+type+fn](); } );
	}
}

function removeEvent( obj, type, fn )
{
	if (obj.removeEventListener)
		obj.removeEventListener( type, fn, false );
	else if (obj.detachEvent)
	{
		obj.detachEvent( "on"+type, obj["e"+type+fn] );
		obj["e"+type+fn] = null;
	}
}

addEvent(window,"load",initTurnTool);
