function in_array(needle, haystack)
{
	for (j=0; j<haystack.length; j++)
	{
		if (haystack[j] == needle) return true;
	}
	return false;
}

function get_url_param(param_name)
{
	qstring = window.location.search.substring(1);
	allparams = qstring.split('&');
	for (j=0; j<allparams.length; j++)
	{
		couple = allparams[j];
		couple = couple.split('=');
		if (couple[0] == param_name) return couple[1];
	}
	return false;
}

try
{
	if (typeof My_Param != 'undefined' && My_Param.length) _MP = My_Param;
	else if (window.parent && (typeof window.parent.My_Param != 'undefined')) _MP = window.parent.My_Param;
	else if ((typeof inspectOpener != 'undefined') && window.opener && (typeof window.opener.My_Param != 'undefined')) _MP = window.opener.My_Param;
	else _MP = new Array();

	if (typeof Param != 'undefined' && Param.length) _P = Param;
	else if (window.parent && (typeof window.parent.Param != 'undefined')) _P = window.parent.Param;
	else if ((typeof inspectOpener != 'undefined') && window.opener && (typeof window.opener.Param != 'undefined')) _P = window.opener.Param;
	else _P = new Array();
}
catch(e) {}

allColors = new Array('red', 'brown', 'darkblue', 'dgray', 'fire', 'green', 'darkgreen', 'naviblue', 'pinky', 'purpule', 'blue', 'violet');
urlColor = get_url_param('color');
selectedColor = urlColor && in_array(urlColor, allColors) ? urlColor : _MP.color && in_array(_MP.color, allColors) ? _MP.color : _P.color && in_array(_P.color, allColors) ? _P.color : allColors[0];
document.writeln('<link rel="stylesheet" type="text/css" href="http://ktu.sv2.biz/media/css/'+selectedColor+'.css"></link>');	


//KTU3 class constructor
function KTU3(defaultPage, movable, display, debug)
{

	//member variables
	this.proxy = defaultPage;
	this.defaultPage = defaultPage + window.location.search;

	if (typeof _MP != 'undefined')
	for (param in _MP) 
	{
		if (param == 'color' && this.defaultPage.indexOf('color=') != -1) continue;

		glue = this.defaultPage.indexOf('?') == -1 ? '?' : '&';
		if (param != 'FreeImg')
			this.defaultPage += glue+param+'='+_MP[param];
	}

	if (typeof _P != 'undefined')
	for (param in _P) 
	{	
		if (param == 'color' && this.defaultPage.indexOf('color=') != -1) continue;

		if (param == 'mode'  && this.defaultPage.indexOf('mode=') != -1) continue;
		if (param == 'prod'  && this.defaultPage.indexOf('prod=') != -1) continue;

		glue = this.defaultPage.indexOf('?') == -1 ? '?' : '&';
		this.defaultPage += glue+param.toLowerCase()+'='+_P[param];
	}


	//this.id_s = null;
	this.movable = movable;
	this.display = display;
    this.pageLoaded = false;
    this.timer = null;
	this.debug = debug;
	this.invokeParams = -1;
	
	//member functions
	this.showKTU = ktu3ShowKTU;
	this.hideKTU = ktu3HideKTU;
	this.centerKTU = ktu3CenterKTU;
	this.requestPage = ktu3RequestPage;
	this.reloadPage = ktu3ReloadPage;
  	this.createDiv = ktu3CreateDiv;
  	this.createIframe = ktu3CreateIframe;
  	
	//constants
	this.refreshInterval = 100;   //ms
    
	//create html elements
	
	if (!document.getElementById('containerDiv'))
		this.createDiv();
	
	if (!document.getElementById('loaderIframe'))
		this.createIframe();
	
	//alert(document.cookie);
	//if there is a cookie for autorun -> modify the url for dialer and set display=true

	if (Get_Cookie('dialer_auto') || Get_Cookie('dialer_exe') || Get_Cookie('dialer_html'))
	{ 
		if (this.defaultPage.match(/module=/))
		{
			this.defaultPage = this.defaultPage.replace(/module=[^&]*/, "module=guest_ktu_kit");
		}
		else
		{
			if (this.defaultPage.indexOf('?') != -1)
				this.defaultPage = this.defaultPage + "&module=guest_ktu_kit";
			else
				this.defaultPage = this.defaultPage + "?module=guest_ktu_kit";
		}		
				
		this.display = true;
	}
	
	
  
	if (this.display)
	{
		this.showKTU();
	}
}

function ktu3CreateDiv()
{
	document.write('<div align="center" id="containerDiv" style="z-index:10000;position:absolute; width: 434px; height:341px; display:none;"> </div>');
}

function ktu3CreateIframe()
{
	document.write('<iframe style="display:none;" id="loaderIframe" name="loaderIframe" src="about:blank" width="400" height="300" frameborder="1"></iframe>');
}

//displays the ktu 
function ktu3ShowKTU(parameters, override)
{
 	cb30 = _P.cb30;

	if (cb30 && (parameters == 'mode=cbs&prod=4' || parameters == 'mode=cb&prod=4'))
	{
		step1URL = 'https://secure.securitetotale.com/cb.php?module=guest_cbsys_preform&w=0&id='+_P.id+'&tracker='+_P.tracker+'&oldrf=pva'+cb30.toUpperCase()+'_xxx&synergie='+_MP.synergie+'&langue='+_P.lg+'&id_site='+_MP.id_site+'&rf='+_MP.rf;
		window.open(step1URL);
	}
	else
	{	
		targetPage = this.defaultPage;
		len = targetPage.length;
		if(targetPage.charAt(len-1) == '?') targetPage = targetPage.slice(0, len-1);
		if (typeof (parameters) != 'undefined')
		{
			if (targetPage.indexOf('?') == -1)
			{
				targetPage = targetPage + '?' + parameters;
			}
			else
			{
				couplesArr = parameters.split('&');
				for (i=0; i< couplesArr.length; i++)
				{
					nameValueArr = couplesArr[i].split('=');
					name = nameValueArr[0];
					value = nameValueArr[1];
					
					if (targetPage.indexOf(name+'=') == -1)
					{
						targetPage = targetPage + '&' + couplesArr[i];
					}
					else
					{
						if ((typeof override!='undefined') && override) eval("targetPage = targetPage.replace(/"+name+"=[^&$]*/, '"+couplesArr[i]+"')");
					}
				}
			}
		}

		if (typeof (parameters) == 'undefined') parameters = '';

		if (!this.pageLoaded || parameters != this.invokeParams)
		{
			this.invokeParams = parameters;
			this.pageLoaded = true;		
			this.requestPage(targetPage);		
		}
		
		
		document.getElementById('containerDiv').style.display='block';	

		
		if (this.movable && !this.timer)
		{
			this.timer = setInterval('ktu3CenterKTU();', this.refreshInterval);
		}
	}
}

//hides the ktu     
function ktu3HideKTU()
{     	
 	document.getElementById('containerDiv').style.display='none';
 	clearInterval(this.timer);
 	this.timer = null;
}
 
//keeps the ktu centered 
function ktu3CenterKTU()
{
  ktuDiv = document.getElementById('containerDiv');                                                    
	  
	if(document.all)
	{
		var top = document.body.scrollTop ;
		var left = document.body.scrollLeft ;
		docheight = document.body.clientHeight;
		docwidth = document.body.clientWidth;
	}
	else
	{
		var top = pageYOffset ;
		var left = pageXOffset ;
		docheight = innerHeight;
		docwidth = innerWidth;
	}
	
	ktuDiv.style.top=top+docheight/2- ktuDiv.offsetHeight/2+"px";     
	ktuDiv.style.left=left+docwidth/2- ktuDiv.offsetWidth/2+"px";     
}
 
//var gURL;

//loads a page in the hidden iframe 
function ktu3RequestPage(url)
{
	/*
	if (document.getElementById('loaderIframe').contentWindow && typeof (document.getElementById('loaderIframe').contentWindow.iframeLoaded) != 'undefined')
	{
		document.getElementById('loaderIframe').contentWindow.iframeLoaded = 0;
	}
	*/

	if (url.indexOf('proxy=') == -1)
	{
		glue = url.indexOf('?') == -1 ? '?' : '&';
		url = url + glue + 'proxy=' + escape(this.proxy);
	}	

	//gURL = url;

	document.getElementById('loaderIframe').src = url;

	/*
	if (typeof _MP['site'] != 'undefined' && _MP['site'] == 'MASTA')
		setTimeout("if (!document.getElementById('loaderIframe').contentWindow || typeof (document.getElementById('loaderIframe').contentWindow.iframeLoaded) == 'undefined' || document.getElementById('loaderIframe').contentWindow.iframeLoaded == 0){ktu3RequestPage(gURL);}", 3000);
	*/
	
}


//reloads the page in the hidden iframe 
function ktu3ReloadPage(cookieName)
{
	if(window.navigator.userAgent.indexOf("SV1") != -1)  //XP SP2
	{
		Set_Cookie(cookieName,'1',ExpireDate(60));
	}
 	document.getElementById('loaderIframe').src = document.getElementById('loaderIframe').src;
}

if (typeof noAutoLoad == 'undefined')
{
	if (typeof ktuPath == 'undefined') ktuPath = '/ktusystem/sv2/';
	ktu3 = new KTU3(ktuPath + 'ktu_proxy.php', true, false, true)
}