var pluginName="";
var s1=document.createElement("script");
s1.type="text/javascript";
s1.language="JavaScript1.2";
s1.src="./js/CalculItineraire.js";
var head = document.getElementsByTagName("head").item(0);
head.appendChild(s1);
//document.getElementById("idBody").appendChild(s1);

var fisrtLoad = 1;

// var s2=document.createElement("script");
// s2.type="text/javascript";
// s2.language="JavaScript1.2";

// s2.src="./navMapPlugin.js"; 
// document.getElementById("idBody").appendChild(s2);



var MAP_WEB_BUFFER			=0;
var RESULT_WEB_BUFFER		=1;
var INFO_WEB_BUFFER			=2;
var FONCTION_WEB_BUFFER		=3;
var FILTER_WEB_BUFFER		=4;
var PRINT_WEB_BUFFER		=5;
var EDIT_LAYER_WEB_BUFFER	=6;
var PLUGIN_WEB_BUFFER		=7;

var currentPlugin = "";
 
function ExecutePlugin ( name, webParam , bufferToUse, interactive )
{
	var loc = window.location;
	if ( webParam == "null" )
		webParam = "";
		
	//objDebug.Push ("interactive : " + interactive);
	if ( interactive != "" );
		interactive = "!INTERACTIVE="+interactive;
		
	var chaine = szHttpServeur  +
                "&ACTION=Plugin!NAME=" + name + "!LOCATION=" + loc + webParam + interactive;
                
	currentPlugin = name;
	
    switch ( bufferToUse )
    {
    	case MAP_WEB_BUFFER :
    		updateBufferMap ( chaine );
    		break;
    	case RESULT_WEB_BUFFER :
    		updateBufferResultat ( chaine );
    		break;
    	case INFO_WEB_BUFFER :
    		updateBufferInfo ( chaine );
    		break;
    	case FONCTION_WEB_BUFFER :
    		updateBufferFonction ( chaine );
    		break;
    	case FILTER_WEB_BUFFER :
    		//updateBufferFiltre ( chaine );
    		alert ("pas de fonction updateBufferFiltre");
    		break;
    	case PRINT_WEB_BUFFER :
    		updateBufferPrint ( chaine );
    		break;
    	case EDIT_LAYER_WEB_BUFFER :
    		updateBufferEditLayer ( chaine );
    		break;
    	case PLUGIN_WEB_BUFFER :
    		updateBufferPlugin ( chaine );
    		break;
    }
		
}


function updateBufferPlugin ( target )
{
	//objDebug.Push ("updateBufferPlugin : " + target);
	frames['bufferPlugin'].location.href = target+  "!SHOWECHELLE=" + szShowEchelle + "&FORMAT=" + szFormat + "&PORT=" + szPort; 
	
}

function loadBufferPlugin()
{
	//objDebug.Push ( "loadBufferPlugin()");
	if ( fisrtLoad == 1 )
	{
		//objDebug.Push ( "fisrtLoad == 1" );
		fisrtLoad = 0;
		return;
	}
	
	//objDebug.Push ( "fisrtLoad == 0" );
	
	var plugin = "";
	var instance = "";
	var scriptSRC = "";
	var alreadyLoaded = false;
	
	var indPoint = currentPlugin.indexOf (".");
	plugin = currentPlugin.substr ( 0, indPoint );
	instance = currentPlugin.substr ( indPoint + 1 );
	scriptSRC = "./plugins/" + plugin + "/scripts/" + plugin + ".js";
	
	var scriptToCompare = scriptSRC.substr (2);
	
	
	var col = document.getElementsByTagName("script");
	for ( i=0; i < col.length; i++ )
	{
		var script = col.item(i);
		//objDebug.Push ( script.src );
		if ( script.src.indexOf (scriptToCompare) > 0 )
		{
			alreadyLoaded = true;
			break;
		}
	}
	
	if ( alreadyLoaded )
		objDebug.Push ( "script d?j? charg?" );
	if ( !alreadyLoaded )
	{
		objDebug.Push ( "script non charg?" );
		var head = document.getElementsByTagName("head").item(0);
		var script = document.createElement("script");
		script.type = "text/javascript";
		script.language = "JavaScript1.2";
		script.src = scriptSRC;
		head.appendChild(script);
	}
	
	
	


	
	
	
	//currentPlugin = currentPlugin.substr ( currentPlugin.indexOf (".") + 1 );
	
	
	instance += "();";
	setTimeout ( instance , 1 );
	
	
	
	currentPlugin = "";
}








