// ajax to include external file

/***********************************************
* Ajax Includes script- © Dynamic Drive DHTML code library (www.dynamicdrive.com)
* This notice MUST stay intact for legal use
* Visit Dynamic Drive at http://www.dynamicdrive.com/ for full source code
***********************************************/

//To include a page, invoke ajaxinclude("***.htm") in the BODY of page
//Included file MUST be from the same domain as the page displaying it.

//var rootdomain="http://"+window.location.hostname

	function ajaxinclude(url) {
		var page_request = false
		if (window.XMLHttpRequest) { // if Mozilla, Safari etc
			page_request = new XMLHttpRequest();
		} else if (window.ActiveXObject){ // if IE
			try {
				page_request = new ActiveXObject("Msxml2.XMLHTTP");
			} 
			catch (e){
				try{
					page_request = new ActiveXObject("Microsoft.XMLHTTP");
				}
				catch (e){}
			}
		} else {
			return false
		}
		page_request.open('GET', url, false) //get page synchronously 
		page_request.send(null)
		if (window.location.href.indexOf("http")==-1 || page_request.status==200)
			return page_request.responseText;
	}		
		
// Determine browser and version.
	function Browser() {
		var ua, s, i;
		
		this.isIE    = false;
		this.isNS    = false;
		this.isAOL    = false;		
		this.version = null;
		
		ua = navigator.userAgent;
		//alert(ua);
		
		s = "America Online Browser";
		if ((i = ua.indexOf(s)) >= 0) {
			this.isAOL = true;
			this.version = "";
		}
		
		s = "MSIE";
		if ((i = ua.indexOf(s)) >= 0) {
			this.isIE = true;
			this.version = parseFloat(ua.substr(i + s.length));
			return;
		}
		
		s = "Netscape6/";
		if ((i = ua.indexOf(s)) >= 0) {
			this.isNS = true;
			this.version = parseFloat(ua.substr(i + s.length));
			return;
		}
		
		// Treat any other "Gecko" browser as NS 6.1.
		s = "Gecko";
		if ((i = ua.indexOf(s)) >= 0) {
			this.isNS = true;
			this.version = 6.1;
			return;
		}
	}

/*
	scrollX - to determine how far horizontally the browser is scrolled  
	scrollY - to determine how far verticallly the browser is scrolled
	windowHeight - the height of the veiwport	
	windowWidth - the width of the veiwport	
*/

/***** function to create the lightbox  
	bxContent : url of the external document or text message 
	bxTitle: title of the box
	w, h of the box
	type: 0 - normal message text
  		1 - external document - call ajaxinclude to pull the external page ex: TCAI.html
		2 - external document - call using iframe method, ex: CartSeatDetail.html 
	redirectUrl: url to redirect to after user click Close button.
	action: action to take after close the light box.
	toConfirm: confirm1  - Yes, No button; confirm2 - Ok, Cancel Buttons
	
	scrollX : to determine how far horizontally the browser is scrolled  
	scrollY : to determine how far verticallly the browser is scrolled
	windowHeight : the height of the veiwport	
	windowWidth : the width of the veiwport
*******/

	function showBox(bxContent, bxTitle, w, h, type, redirectUrl, action, toConfirm, btnArr) { 
		if(typeof bxContent =="undefined")
			bxContent="";  
		else
			bxContent = unescape(bxContent);
		if(typeof bxTitle =="undefined")  bxTitle=document.title.slice(0, document.title.indexOf(" | "));
		if(typeof w =="undefined" || w=="") w=500;
		if(typeof h =="undefined" || h=="") h=Math.ceil(bxContent.length/7)+150;
		if(typeof type=="undefined") {
			// check if content is a url (relative or absolute)
			if(bxContent==bxContent.match(/(?:(?:(https?|file):\/\/)([^\/]+)(\/(?:[^\s])+)?)|(\/(?:[^\s])+)/g))
				type = 1;
			else
				type = 0;
		}
		if(typeof redirectUrl =="undefined") redirectUrl="";		
		if(typeof action=="undefined") action="";	
		if(typeof toConfirm=="undefined") toConfirm="";
		if(typeof btnArr=="undefined") btnArr=['Close window'];
	
		if (action!="")
			action = unescape(action);
		
		var de = document.documentElement;
		var db = document.body;
		var scrollX = (self.pageXOffset || (de && de.scrollLeft) || db.scrollLeft);
		var scrollY = (self.pageYOffset || (de && de.scrollTop) || db.scrollTop);
		var windowHeight = (self.innerHeight || (de && de.clientHeight) || db.clientHeight);
		var windowWidth	= (self.innerWidth || (de && de.clientWidth) || db.clientWidth);
		var wint = scrollY + (windowHeight /2) - (h/2) ;
		var winl = scrollX + (windowWidth/2) - (w/2);
		var browser = new Browser();	
		var layer = document.getElementById('layer');
		var div = document.getElementById('box');	
		
		this.removeBox = function (){
			db.removeChild(document.getElementById('layer'));
			db.removeChild(document.getElementById('box'));
			// custom code case 289618
			if(btnArr[0]=="Sign Out" && redirectUrl!="") {
				location.replace(redirectUrl);
			}
			// end cc case 289618
		}
		
		this.closeBox = function () {
			removeBox();	
			if(redirectUrl!=""){		
				location.replace(redirectUrl);
			} else {
				if(action!="")		  	
					eval(action);			  
			}	
		}
		
		if (!layer){
			layer = document.createElement('div');
			layer.id = 'layer';
		}	
		layer.style.left = '0px';
		//layer.style.height= windowHeight + de.offsetHeight  + 'px'; // add document.documentElement.offsetHeight so it will cover whole page in IE
		layer.style.height= de.scrollHeight  + 'px'; 
		db.appendChild(layer); 
		
		if(!div){
			div = document.createElement('div');	
			div.id = 'box';
		}
		div.style.height = h + (browser.isNS ? 36: 0) + 'px';
		div.style.width = w + 'px';
		div.style.top = wint + 'px';
		div.style.left = winl + 'px';
		div.innerHTML = '<b class="hdCorner"><b class="Corner1"><b></b></b><b class="Corner2"><b></b></b><b class="Corner3"></b></b>'+
			'<span class="x1"><span class="x1a"></span></span><span class="x2"><span class="x2a"></span></span>';
		
		db.appendChild(div); 
		
		// heading
		var elhd = document.createElement('div');     
		elhd.className = 'hd';
		elhd.innerHTML = '<div style="float: left;">'+bxTitle + '</div><div style="float: right; padding-right:5px;"><a href="javascript:;" onclick="removeBox()"><img src="' +imageWWWPath+ '/close-2.png" id="imgClose" align="absmiddle"></a></div><div class="clear"></div>';
		div.appendChild(elhd);	
		
		var elc = document.createElement('div');
		elc.className = 'content' + (type==2 ? ' contentFrame' : '');
		elc.id = 'pcont'
		
		var ajaxContent = '';
		if(type==1) {
			ajaxContent = ajaxinclude(bxContent);
			ajaxContent = ajaxContent.replace(/(\.\.\/images)/ig, imageWWWPath);
		} else if(type==2) {
		//	ajaxContent = '<div id="lbContainer"><iframe name="lbFrame" id="lbFrame" src="'+bxContent+'" width="100%" height=410" marginwidth="0" marginheight="0" hspace="0" vspace="0" frameborder="0" scrolling="auto"></iframe></div>'
			ajaxContent = '<iframe name="lbFrame" id="lbFrame" src="'+bxContent+'" width="100%" height="100%" marginwidth="0" marginheight="0" hspace="0" vspace="0" frameborder="0" scrolling="auto"></iframe>';
		}
		
		elc.style.height =  (h - 28 - 38) + "px";  // content's height =  h - header - footer
		
		elc.innerHTML = ((type==0) ? '<div>'+bxContent+'</div>' :   ajaxContent ); //+ '<br><br>' ;	
		
		// footer
		var elft = document.createElement('div');
		elft.className = 'ft';
		if(toConfirm.length==0 || toConfirm==""){
			// close button	
			var a = document.createElement('a');
			a.className = 'button';
			a.innerHTML = btnArr[0];
			a.href = 'javascript:closeBox();';
			elft.appendChild(a);		
		} else {
			if(toConfirm=="confirm") {
				if(typeof(btnArr)=="object" && btnArr.length==2) {
					toConfirm= btnArr;
				} else {
					toConfirm= ["Yes", "No"];
				}
			}
			// OK button	
			var okbtn = document.createElement('a');
			okbtn.className = 'button';
			okbtn.id="YesBtn"		
			okbtn.innerHTML = toConfirm[0];
			okbtn.href = 'javascript:closeBox();';
			elft.appendChild(okbtn);		
			
			// No button	
			var nobtn = document.createElement('a');
			nobtn.className = 'button';
			nobtn.id="NoBtn"
			nobtn.innerHTML = toConfirm[1];
			nobtn.href = 'javascript:removeBox()';
			elft.appendChild(nobtn);	
		}
		
		div.appendChild(elc);
		div.appendChild(elft);		
		div.innerHTML += '<b class="ftCorner"><b class="Corner5"></b><b class="Corner4"></b><b class="Corner3"></b><b class="Corner2"><b></b></b><b class="Corner1"><b></b></b></b>';
	}

// function to print only a div content 
	function printSelection(node){
		var content=node.innerHTML
		var pwin=window.open('','print_content','width=100,height=100');
		pwin.resizeTo(1,1);
		
		pwin.document.open();
		pwin.document.write('<html><body onload="window.print()">'+content+'</body></html>');
		pwin.document.close();
		
		setTimeout(function(){pwin.close();},1000);
	}  

// function to center the light box as the user scrolls the window
	function adjustBox() {
		// brainstorm (captcha/pleasewait lightbox) BELOW
		var obj = (document.getElementById('box') || document.getElementById('box2'));
		if (!obj) return;
		
		var de = document.documentElement;
		var db = document.body;	
		var scrollX = (self.pageXOffset || (de && de.scrollLeft) || db.scrollLeft);
		var scrollY = (self.pageYOffset || (de && de.scrollTop) || db.scrollTop);
		var windowHeight = (self.innerHeight || (de && de.clientHeight) || db.clientHeight);
		var windowWidth	= (self.innerWidth || (de && de.clientWidth) || db.clientWidth);
		
		var w= Number(obj.style.width.substr(0,obj.style.width.length-2) );
		var h= Number(obj.style.height.substr(0,obj.style.height.length-2) );
		
		var t=scrollY + (windowHeight /2) - (h/2);
		if (t<0) t=0;
		
		var l=scrollX + (windowWidth/2) - (w/2);
		if (l<0) l=0;
		
		obj.style.top = t+"px";
		obj.style.left = l+"px";
	}

	function confirmBox(bxContent, bxAction )
	{ 
		var answer = false;
		if(typeof(bxTitle)=="undefined") 	bxTitle ="Are You Sure?";
		if(typeof(w)=="undefined") 			w=300;
		if(typeof(h)=="undefined") 			h=110;
		if(typeof(type)=="undefined") 		type=0;	
		
		if(typeof(bxAction)=="undefined") {
			return;
		} else {
			bxAction = unescape(bxAction);
		}
		
		var wint = ( ( windowHeight()-h)/2 + scrollY() );
		var winl = scrollX() + (windowWidth()/2 ) - (w/2);
		
		//var winl = ( windowWidth()-w/2 + scrollX() );
		if (h > (windowHeight()/2))  wint = wint - (h - (windowHeight()/2))-100;
		if (wint<0)   wint = 10;	
		
	    var layer = document.createElement('div');
	    layer.id = 'layer';
		layer.style.height= windowHeight() + document.documentElement.offsetHeight  + 'px'; // add document.documentElement.offsetHeight so it will cover whole page in IE
	    document.body.appendChild(layer); 
	   
	    var div = document.createElement('div');
	    div.id = 'box';
	    div.style.height = h;
	    div.style.width = w;
	    div.style.top = wint + 'px';
		div.style.left = winl + 'px';
	//    div.style.border = '1px solid silver';
	    document.body.appendChild(div); 
		
		
		// heading
	    var elhd = document.createElement('div');
		elhd.className = 'hd';
		elhd.innerHTML = bxTitle;
		div.appendChild(elhd);	  	  
		
		// content  
	    var elc = document.createElement('div');
		elc.className = 'content'
		elc.id = 'pcont'
		elc.style.height =  (h - elhd.style.height - 20);
		elc.innerHTML = ((type==0) ? '<p>'+bxContent+'</p>' :  '<div class="small" style="text-align: right;"><a href="" onclick="printSelection(document.getElementById(\'pcont\'));return false">print</a></div>' + ajaxinclude(bxContent) ); //+ '<br><br>' ;	
		
		var elft = document.createElement('div');
		elft.className = 'ft';
		
		// OK button	
	    var okbtn = document.createElement('a');
		okbtn.className = 'button';
		okbtn.id="YesBtn"
		okbtn.style.margin="10px"	
		okbtn.style.color="#333";			
	    okbtn.innerHTML = 'Yes';
	    okbtn.href = 'javascript:void(0)';
	    okbtn.onclick = function()
		{	
			document.body.removeChild(document.getElementById('layer'));
		    document.body.removeChild(document.getElementById('box'));
			eval('minicart.' + bxAction);
			return true;
		}	
		
		elft.appendChild(okbtn);		
		
		// No button	
	    var nobtn = document.createElement('a');
		nobtn.className = 'button';
		nobtn.id="NoBtn"
		nobtn.style.margin="10px"		
		nobtn.style.color="#333";		
	    nobtn.innerHTML = 'No';
	    nobtn.href = 'javascript:void(0)';
	    nobtn.onclick = function() 
		{	
			document.body.removeChild(document.getElementById('layer'));
		    document.body.removeChild(document.getElementById('box'));
			return false;
		}
		
		elft.appendChild(nobtn);				
		div.appendChild(elc);
		div.appendChild(elft);
	}
	
	// brainstorm (captcha/pleasewait lightbox)
	function simpleBox(bxContent, w, h)
	{
		/*
		if(document.readyState!="complete") {
			addLoadEvent(function() {
				simpleBox(bxContent, w, h);
			});
			return;
		}
		*/
		
		if(typeof bxContent =="undefined") bxContent="";
		if(typeof w =="undefined") w=600;
		if(typeof h =="undefined") h=480;
		var isInclude = 0;
		if(bxContent==bxContent.match(/(?:(?:(https?|file):\/\/)([^\/]+)(\/(?:[^\s])+)?)|(\/(?:[^\s])+)/g)) {
			isInclude = 1;
		} else {
			bxContent = unescape(bxContent);
		}
		
		var de = document.documentElement;
		var db = document.body;
		var scrollX = (self.pageXOffset || (de && de.scrollLeft) || db.scrollLeft);
		var scrollY = (self.pageYOffset || (de && de.scrollTop) || db.scrollTop);
		var windowHeight = (self.innerHeight || (de && de.clientHeight) || db.clientHeight);
		var windowWidth = (self.innerWidth || (de && de.clientWidth) || db.clientWidth);
		var wint = scrollY + (windowHeight /2) - (h/2) ;
		var winl = scrollX + (windowWidth/2) - (w/2);
		var browser = new Browser();
		var layer2 = document.getElementById('layer2');
		var box2 = document.getElementById('box2');
		
		this.removeBox = function (){
			db.removeChild(document.getElementById('layer2'));
			db.removeChild(document.getElementById('box2'));
		}
		
		if(!layer2) {
		layer2 = document.createElement('div');
		layer2.id = 'layer2';
		}
		layer2.style.left = '0px';
		layer2.style.height = de.scrollHeight + 'px';
		db.appendChild(layer2);
		
		if(!box2){
		box2 = document.createElement('div');
		box2.id = 'box2';
		}
		box2.style.height = h + 'px';
		box2.style.width = w + 'px';
		box2.style.top = wint + 'px';
		box2.style.left = winl + 'px';
		if(isInclude) {
			box2.innerHTML = '<a href="javascript: removeBox();" style="position:absolute; top:-10px; right:-10px;"><img src="'+imageWWWPath+'/icons/shiny/x_24.png" /></a>'+
				'<div id="simpleContainer"><iframe name="simpleBoxFrame" id="simpleBoxFrame" src="'+bxContent+'" width="100%" height="100%" marginwidth="0" marginheight="0" hspace="0" vspace="0" frameborder="0" scrolling="auto"></iframe></div>';
		} else {
			box2.innerHTML = '<a href="javascript: removeBox();" style="position:absolute; top:-10px; right:-10px;"><img src="'+imageWWWPath+'/icons/shiny/x_24.png" /></a>'+
				'<table id="simpleContainer"><tr><td style="padding: 10px;">' + bxContent + '</td></tr></table>';
		}
		db.appendChild(box2);
	}
	
	function closeSimpleBox() {
		/*
		var db = top.document.body;
		var layer2Obj = top.document.getElementById('layer2');
		var box2Obj = top.document.getElementById('box2');
		if(db && layer2Obj && box2Obj) {
			db.removeChild(layer2Obj);
			db.removeChild(box2Obj);
		}
		*/
		if(top.location.href.indexOf("Krypto")==-1)
			top.location.reload(true);
		else
			top.location.href = top.createNavigateHref("SE");
	}
	// end bstorm (captcha/pleasewait lightbox)

