var dhtmlwindow={
	imagefiles:[siteBaseURL+'/images/min.gif', siteBaseURL+'/images/close.gif', siteBaseURL+'/images/restore.gif', siteBaseURL+'/images/resize.gif', siteBaseURL+'/images/refresh.gif'], //Path to 4 images used by script, in that order
	//imagefiles:['http://fileserver/leafling/images/min.gif', 'http://fileserver/leafling/images/close.gif', 'http://fileserver/leafling/images/restore.gif', 'http://fileserver/leafling/images/resize.gif', 'http://fileserver/leafling/images/refresh.gif'], //Path to 4 images used by script, in that order
	ajaxbustcache: true, //Bust caching when fetching a file via Ajax?

	minimizeorder: 0,
	tobjects: [], //object to contain references to dhtml window divs, for cleanup purposes

	init:function(t) {

		var domwindow=document.createElement("div") //create dhtml window div
		domwindow.id = t
		county = 0;
		junk = 0;
		rubbish = 0;
		domwindow.className="dhtmlwindow"
		var domwindowdata=''
		domwindowdata='<div class="drag-handle">'
		//Add by Shailesh: Start
		Newt=t.split("__");
		var tr1=ltrim(Newt[0],"_");
		var refreshButton = eval(tr1+'.refreshButton');
		if (refreshButton == 'true') {
			domwindowdata+='DHTML Window <div class="drag-controls"><img src="'+this.imagefiles[0]+'" title="Minimize" id="minimize_'+t+'"/><img src="'+this.imagefiles[4]+'" title="Refresh" id="refresh"/><img src="'+this.imagefiles[1]+'" title="Close" /></div>'
		} else{
			domwindowdata+='DHTML Window <div class="drag-controls"><img src="'+this.imagefiles[0]+'" title="Minimize" id="minimize_'+t+'"/><img src="'+this.imagefiles[1]+'" title="Close" /></div>'
		}
		domwindowdata+='</div>'
		domwindowdata+='<div class="drag-contentarea">'
		domwindowdata+='</div><div class="drag-statusarea"><div class="drag-resizearea" style="background: transparent url('+this.imagefiles[3]+') top right no-repeat;">&nbsp;</div></div></div>'
		//domwindowdata+='</div>'
		domwindow.innerHTML=domwindowdata
		document.getElementById("dhtmlwindowholder").appendChild(domwindow)
		this.zIndexvalue=(this.zIndexvalue)? this.zIndexvalue+1 : 0 //z-index value for DHTML window: starts at 0, increments whenfsuever a window has focus
		//this.zIndexvalue=(this.zIndexvalue)? this.zIndexvalue+1 : 100 //z-index value for DHTML window: starts at 0, increments whenfsuever a window has focus
		var t=document.getElementById(t)
		var divs=t.getElementsByTagName("div")
		for (var i=0; i<divs.length; i++){ //go through divs inside dhtml window and extract all those with class="drag-" prefix
			if (/drag-/.test(divs[i].className))
			t[divs[i].className.replace(/drag-/, "")]=divs[i] //take out the "drag-" prefix for shorter access by name
		}

		t.style.zIndex=this.zIndexvalue //set z-index of this dhtml window
		//t.style.position='absolute';
		//t.style.zIndex=1;
		t.handle._parent=t //store back reference to dhtml window
		t.resizearea._parent=t //same
		t.controls._parent=t //same
		t.onclose=function(){return true} //custom event handler "onclose"
		t.onclick=function(){dhtmlwindow.zIndexvalue++; this.style.zIndex=dhtmlwindow.zIndexvalue;} //Increase z-index of window when focus is on it
		t.setSize=function(w, h){w = dhtmlwindow.setSize(this, w, h); return w;}
		t.controls.onclick=dhtmlwindow.enablecontrols
		t.show=function(){dhtmlwindow.show(this)} //public function for showing dhtml window
		t.hide=function(){dhtmlwindow.close(this)} //public function for hiding dhtml window
		t.moveTo=function(x, y){
			dhtmlwindow.moveTo(this, x, y)} //public function for moving dhtml window (relative to viewpoint)
			//set up drag behavior when mouse down on handle div
			//set up drag behavior when mouse down on
			t.isResize=function(bol){dhtmlwindow.isResize(this, bol)} //public function for specifying if window is resizable
			t.isScrolling=function(bol){dhtmlwindow.isScrolling(this, bol)} //public function for specifying if window content contains scrollbars
			t.load=function(contenttype, contentsource, title){dhtmlwindow.load(this, contenttype, contentsource, title)} //public function for loading content into window
			this.tobjects[this.tobjects.length]=t
			// experidiv.appendChild(t);
			return t //return reference to dhtml window div
	},

	open:function(t, contenttype, contentsource, title, attr, recalonload,type){
		var d=dhtmlwindow //reference dhtml window object

		//Add by Shailesh: Start
		var Tarry = splitContextName(t);
		var tr1=ltrim(Tarry.name,"_");
		var NextWin = eval(tr1+'.NextWin');
		if (NextWin == 'true') {
			var NextWinNo = this.getNextWindowName(t);
			if (typeof  NextWinNo == 'number') {
				t = t+"__"+NextWinNo;
				title += " #"+NextWinNo;
			} else {
				title += " #"+NextWinNo[1];
			}
		} else {t}
		var winName = t //Store the name of the window name
		function getValue(Name){
			var config=new RegExp(Name+"=([^,]+)", "i")

			//get name/value config pair (ie: width=400px,)
			return (config.test(attr))? parseInt(RegExp.$1) : 0 //return value portion (int), or 0 (false) if none found
		}


		if (document.getElementById(t)==null) { //if window doesn't exist yet, create it
			t=this.init(t) //return reference to dhtml window div
		} else {
			if (document.getElementById(t).state=='close') {
				document.getElementById(t).state='undefined';
			}
			t=document.getElementById(t)
		}

		var widthT = eval(tr1+".width");
		var heightT = eval(tr1+".height");
		
		t.setSize(getValue(("width")), (getValue("height"))) //Set dimensions of window
		//t.setSize(widthT, heightT) //Set dimensions of window


		var xpos= getValue("left") //Get x coord of window
		var ypos= getValue("top") //Get y coord of window
		
		if(t.id.indexOf("km")!=-1)
		{
		 
		  t.doresize="true"; // disable resize till content not loading in dhtml window.
		}
		else
		{
			t.doresize = 'false';
		}
		if (typeof recalonload!="undefined" && recalonload=="recal" && this.scroll_top==0){ //reposition window when page fully loads with updated window viewpoints?
			if (window.attachEvent && !window.opera) //In IE, add another 400 milisecs on page load (viewpoint properties may return 0 b4 then)
			{}
			else
			{}
		}
		t.windowName = winName;
		t.title 	 = title;
		/*if (t.title.indexOf('Trivia') != -1 || t.title.indexOf('Sudoku') != -1 || t.title.indexOf('Kakuro') != -1) {
			t.styleChange = true;
			contentsource += '&styleId=style'+t.id;	
		} else {*/
			t.styleChange = false;
		//}
		t.fontSize 	 = '';
		t.MinHeight = 0
		t.MinWidth = 0
		t.Width		= getValue('width');
		t.Height	= getValue('height');
		t.contextType = type;
		t.saved		= getValue('saved');
		
		t.contentSource = contentsource;
		//t.handle.onmouseover = function(){document.onmousemove=null;document.onmouseup=null;}
		t.handle.onmousedown = dhtmlwindow.setupdrag
		//set up drag behavior when mouse down on handle div
		//t.resizearea.onmousedown = new Function("dhtmlwindow.setupdrag;");
		//t.resizearea.onmouseover = function(){document.onmousemove=null;document.onmouseup=null;}
		t.resizearea.onmousedown = dhtmlwindow.setupdrag
		t.isResize(getValue("resize")) //Set whether window is resizable
		t.isScrolling(getValue("scrolling")) //Set whether window should contain scrollbars
		t.style.visibility="visible"
		t.style.display="block"
		t.contentarea.style.display="block"
		t.moveTo(xpos, ypos) //Position window
		
		
		t.load(contenttype, contentsource, title)
		if (t.state=="minimized" && t.controls.firstChild.title=="Restore"){ //If window exists and is currently minimized?
			t.controls.firstChild.setAttribute("src", dhtmlwindow.imagefiles[0]) //Change "restore" icon within window interface to "minimize" icon
			t.controls.firstChild.setAttribute("title", "Minimize")
			t.state="fullview" //indicate the state of the window as being "fullview"
		}

		dhtmlwindow.zIndexvalue++; 
		t.style.zIndex=dhtmlwindow.zIndexvalue; //Increase z-index of window when focus is on it
		return t
		//alert(document.getElementById("expr"));
		//alert(document.getElementById(t));
	},

	setSize:function(t, w,h ){ //set window size (min is 150px wide by 100px tall)
		t.style.width=Math.max(parseInt(w), 150)+"px"
		t.contentarea.style.height=Math.max(parseInt(h), 100)+"px"

		return w
	},

	moveTo:function(t, x, y){ //move window. Position includes current viewpoint of document
		t.style.left= x+"px"
		t.style.top=y+"px"

	},

	isResize:function(t, bol){ //show or hide resize inteface (part of the status bar)
		t.statusarea.style.display=(bol)? "block" : "none"
		t.resizeBool=(bol)? 1 : 0
	},

	isScrolling:function(t, bol){ //set whether loaded content contains scrollbars
		t.contentarea.style.overflow=(bol)? "auto" : "hidden"
	},

	load:function(t, contenttype, contentsource, title){ //loads content into window plus set its title (3 content types: "inline", "iframe", or "ajax")
		var contenttype=contenttype.toLowerCase() //convert string to lower case
		if (typeof title!="undefined")
		t.handle.firstChild.nodeValue=title
		if (contenttype=="inline")
		t.contentarea.innerHTML=contentsource
		else if (contenttype=="div"){
			t.contentarea.innerHTML=document.getElementById(contentsource).innerHTML //Populate window with contents of specified div on page
			document.getElementById(contentsource).style.display="none" //hide that div
		}
		else if (contenttype=="iframe"){
			t.contentarea.style.overflow="hidden" //disable window scrollbars, as iframe already contains scrollbars
			if (!t.contentarea.firstChild || t.contentarea.firstChild.tagName!="IFRAME") //If iframe tag doesn't exist already, create it first
			t.contentarea.innerHTML='<iframe src="" style="margin:0; padding:0; width:100%; height: 100%" name="_iframe-'+t.id+'"></iframe>'
			window.frames["_iframe-"+t.id].location.replace(contentsource) //set location of iframe window to specified URL
		}
		else if (contenttype=="ajax"){
			this.ajax_connect(contentsource, t) //populate window with external contents fetched via Ajax
		}
		t.contentarea.datatype=contenttype //store contenttype of current window for future reference
	},

	obj : null,
	end : function(e)
	{
		var o = dhtmlwindow.obj = this;
		e = dhtmlwindow.fixE(e);
		o.handle.onmousemove = null;
		o.onmouseup   = null;
		dhtmlwindow.obj.root.ondhtmlwindowEnd(	parseInt(dhtmlwindow.obj.root.style[dhtmlwindow.obj.hmode ? "left" : "right"]),
		parseInt(dhtmlwindow.obj.root.style[dhtmlwindow.obj.vmode ? "top" : "bottom"]));
		dhtmlwindow.obj = null;
	},

	fixE : function(e)
	{
		if (typeof e == 'undefined') e = window.event;
		if (typeof e.layerX == 'undefined') e.layerX = e.offsetX;
		if (typeof e.layerY == 'undefined') e.layerY = e.offsetY;
		return e;
	},

	setupdrag:function(e){
		var d=dhtmlwindow //reference dhtml window object
		var t=this._parent //reference dhtml window div

		d.etarget=this //remember div mouse is currently held down on ("handle" or "resize" div)
		var e=window.event || e

		d.initmousex=e.clientX //store x position of mouse onmousedown
		d.initmousey=e.clientY
		d.initx=parseInt(t.offsetLeft) //store offset x of window div onmousedown
		d.inity=parseInt(t.offsetTop)
		d.width=parseInt(t.offsetWidth) //store width of window div
		d.contentheight=parseInt(t.contentarea.offsetHeight) //store height of window div's content div
		if (t.contentarea.datatype=="iframe"){ //if content of this window div is "iframe"
			t.style.backgroundColor="#F8F8F8" //colorize and hide content div (while window is being dragged)
			t.contentarea.style.visibility="hidden"
		}

		document.onmousemove=d.getdistance //get distance travelled by mouse as it moves
		document.onmouseup=function(){

			if (t.contentarea.datatype=="iframe"){ //restore color and visibility of content div onmouseup
				t.contentarea.style.backgroundColor="white"
				t.contentarea.style.visibility="visible"
			}
			document.onmousemove=null //get distance travelled by mouse as it moves
			document.onmouseup=null
		}
		return false
	},

	getdistance:function(e){
		var d=dhtmlwindow;
		var etarget=d.etarget
		var e=window.event || e
		d.distancex=e.clientX-d.initmousex //horizontal distance travelled relative to starting point
		d.distancey=e.clientY-d.initmousey
		if (etarget.className=="drag-resizearea")
		d.resize(etarget._parent, e)
		else if (etarget.className=="drag-handle") //if target element is "handle" div
		d.move(etarget._parent, e)
		return false //cancel default dragging behavior
	},

	getviewpoint:function(){ //get window viewpoint numbers
		var ie=document.all && !window.opera
		var domclientWidth=document.documentElement && parseInt(document.documentElement.clientWidth) || 100000 //Preliminary doc width in non IE browsers
		this.standardbody=(document.compatMode=="CSS1Compat")? document.documentElement : document.body //create reference to common "body" across doctypes
		this.scroll_top=(ie)? this.standardbody.scrollTop : window.pageYOffset
		this.scroll_left=(ie)? this.standardbody.scrollLeft : window.pageXOffset
		this.docwidth=(ie)? this.standardbody.clientWidth : (/Safari/i.test(navigator.userAgent))? window.innerWidth : Math.min(domclientWidth, window.innerWidth-16)
		this.docheight=(ie)? this.standardbody.clientHeight: window.innerHeight
	},

	rememberattrs:function(t){ //remember certain attributes of the window when it's minimized or closed, such as dimensions, position on page
		this.getviewpoint() //Get current window viewpoint numbers
		t.lastx=parseInt((t.style.left || t.offsetLeft))-dhtmlwindow.scroll_left //store last known x coord of window just before minimizing
		t.lasty=parseInt((t.style.top || t.offsetTop))-dhtmlwindow.scroll_top
		t.lastwidth=parseInt(t.style.width) //store last known width of window just before minimizing/ closing
	},

	move:function(t, e) {
		var ppane = getPrintPaneCoordinates();
		//var tbottom = t.contentarea.style.height;
		//var tbottom = parseInt(tbottom.substr(0,tbottom.length-2));
		if(dhtmlwindow.distancex+dhtmlwindow.initx > ppane['left'] && dhtmlwindow.distancey+dhtmlwindow.inity > ppane['top'] && dhtmlwindow.distancex+dhtmlwindow.initx+t.offsetWidth < ppane['right'] && dhtmlwindow.distancey+dhtmlwindow.inity+t.offsetHeight < ppane['bottom'])
		{
			t.style.left=dhtmlwindow.distancex+dhtmlwindow.initx+"px"
			t.style.top=dhtmlwindow.distancey+dhtmlwindow.inity+"px"
		}

	},

	resize:function(t, e){
		
		if(t.doresize == 'true')	{
			var ppane = getPrintPaneCoordinates();
			var oldwidth = t.style.width;
             
			if(e.clientX+document.body.scrollLeft >= ppane['right']-15) {
				return false;
			} else {
				
				//t.style.width=Math.max(dhtmlwindow.width+dhtmlwindow.distancex, t.MinWidth)+"px";
				t.style.width=Math.max(dhtmlwindow.width+dhtmlwindow.distancex, 80)+"px";
			}
			if(e.clientY+document.body.scrollTop >= ppane['bottom']-15) {
				return false;
			} else {
				//t.contentarea.style.height=Math.max(dhtmlwindow.contentheight+dhtmlwindow.distancey, t.MinHeight)+"px";
				t.contentarea.style.height=Math.max(dhtmlwindow.contentheight+dhtmlwindow.distancey, 2)+"px";
			}
			if (t.styleChange) {
				var ContextR= (t.contentarea.offsetHeight + t.contentarea.offsetWidth);
				//var ContextR= (t.contentarea.offsetHeight);
				var Percentage = Math.round((ContextR * 2 ) / 100);
				t.fontSize = Percentage;
				//changecss(".trivia",'fontSize',Percentage+'px')
				document.getElementById('style'+t.id).style.fontSize = Percentage+'px';
			}
			
		}
	},
	enablecontrols:function(e){
		var d=dhtmlwindow
		var sourceobj=window.event? window.event.srcElement : e.target //Get element within "handle" div mouse is currently on (the controls)
		if (/Minimize/i.test(sourceobj.getAttribute("title"))) //if this is the "minimize" control
		d.minimize(sourceobj, this._parent)
		else if (/Restore/i.test(sourceobj.getAttribute("title"))) //if this is the "restore" control
		d.restore(sourceobj, this._parent)
		else if (/Close/i.test(sourceobj.getAttribute("title"))) //if this is the "close" control
		d.close(this._parent)
		else if (/Refresh/i.test(sourceobj.getAttribute("title"))) //if this is the "refresh" control
		d.refresh(this._parent)
		return false
	},

	minimize:function(button, t){

		dhtmlwindow.rememberattrs(t)
		button.setAttribute("src", dhtmlwindow.imagefiles[2])
		button.setAttribute("title", "Restore")

		t.state="minimized" //indicate the state of the window as being "minimized"
		t.contentarea.style.display="none"
		t.statusarea.style.display="none"

		if (typeof t.minimizeorder=="undefined"){ //stack order of minmized window on screen relative to any other minimized windows
			dhtmlwindow.minimizeorder++ //increment order
			t.minimizeorder=dhtmlwindow.minimizeorder
		}
		//t.style.left=dhtmlwindow.initx+"px"
		t.style.left=t.style.left;
		//left coord of minmized window
		t.style.width=t.style.width;
		var windowspacing=t.minimizeorder*10 //spacing (gap) between each minmized window(s)
		//t.style.top=dhtmlwindow.inity+"px"
		t.style.top=t.style.top;
	},

	restore:function(button, t){
		dhtmlwindow.getviewpoint()
		button.setAttribute("src", dhtmlwindow.imagefiles[0])
		button.setAttribute("title", "Minimize")
		t.state="fullview" //indicate the state of the window as being "fullview"
		var ppane = getPrintPaneCoordinates();
		//var tbottom = t.contentarea.style.height;
		//tbottom = parseInt(tbottom.substr(0,tbottom.length-2));
		//var HandleandResize = 20+13;
		t.style.display="block"
		t.contentarea.style.display="block"
		var tbottom = dhtmlwindow.inity + t.offsetHeight + 20 ;
		if (tbottom > ppane['bottom']) {
			var ttop = ( ppane['bottom'] - tbottom ) + dhtmlwindow.inity;
		} else {
			var ttop = dhtmlwindow.inity;
		}
		if (t.resizeBool) //if this window is resizable, enable the resize icon
		t.statusarea.style.display="block"

		t.style.left=dhtmlwindow.initx+"px" //position window to last known x coord just before minimizing
		t.style.top=ttop+"px"
		t.style.width=parseInt(t.lastwidth)+"px"
	},

	refresh:function(t){

		var refid = t.id
		var refmaze = refid.substring(0,4);
		var ansref = refid.substring(3,7);
		var ansref2 = "_kma";

		var finalref = ansref2+ansref;
		rubbish = 1;
		
		if(refmaze=="_km1") {
			build(13,13);
			solve();
			var concat = document.getElementById("box2").innerHTML;
			var contentSource = concat;
			t.contentarea.innerHTML=contentSource
			var concatans = document.getElementById("maze").innerHTML;
			document.getElementById(finalref).contentarea.innerHTML= concatans

		} else if (refmaze=="_km2") {
			build(16,16);
			solve();
			var concat = document.getElementById("box2").innerHTML;
			var contentSource = concat;
			t.contentarea.innerHTML=contentSource
			var concatans = document.getElementById("maze").innerHTML;
			document.getElementById(finalref).contentarea.innerHTML= concatans
		} else if (refmaze=="_km3") {
			build(19,19);
			solve();
			var concat = document.getElementById("box2").innerHTML;
			var contentSource = concat;
			t.contentarea.innerHTML=contentSource
			var concatans = document.getElementById("maze").innerHTML;
			document.getElementById(finalref).contentarea.innerHTML= concatans
		} else {
			this.ajax_connect(t.contentSource, t);
			var Tarry = splitContextName(t.id);

			var tr1=ltrim(Tarry.name,"_");
			var answerContext = eval(tr1+'.answerContext');
			if (answerContext != '') {
				answerId = eval(answerContext+'.id')+(Tarry.no !=''?"__"+Tarry.no:'');
				for (var i=0; i<dhtmlwindow.tobjects.length; i++){
					if(dhtmlwindow.tobjects[i].state != 'close' && dhtmlwindow.tobjects[i].windowName==answerId )	{
						var tObj = dhtmlwindow.tobjects[i];
						break;
					}
				}
				//alert(eval(answerContext+".contentSource"));
				this.ajax_connect(eval(answerContext+".contentSource"), tObj);
			}
		}
	},

	close:function(t){
		try{
			var closewinbol=t.onclose()
		}
		catch(err){ //In non IE browsers, all errors are caught, so just run the below
			var closewinbol=true
		}
		finally{ //In IE, not all errors are caught, so check if variable isn't defined in IE in those cases
			if (typeof closewinbol=="undefined"){
				alert("An error has occured somwhere inside your \"onclose\" event handler")
				var closewinbol=true
			}
		}
		if (closewinbol){ //if custom event handler function returns true
			if (t.state!="minimized") //if this window isn't currently minimized
			dhtmlwindow.rememberattrs(t) //remember window's dimensions/position on the page before closing
			t.style.display="none"
			t.state	='close'
			var WinAttrArray	= new Array();
			var WinAttrArray	= 	t.windowName.split("__");
			if (WinAttrArray.length == 2)
			{
				var contextName = WinAttrArray[0];
				var answerPost = "__"+WinAttrArray[1];
			} else {
				var contextName = t.windowName;
				var answerPost = "";
			}
			contextName = ltrim(contextName,"_");
			var answerContext = "_"+eval(contextName+".answerContext")+answerPost;

			if (answerContext != '') {
				for (var i=0; i<dhtmlwindow.tobjects.length; i++){
					if(dhtmlwindow.tobjects[i].state != 'close' && dhtmlwindow.tobjects[i].id==answerContext ) {

						dhtmlwindow.tobjects[i].style.display ="none";
						dhtmlwindow.tobjects[i].state ="close";
					}
				}
			}
		}
		return closewinbol
	},

	show:function(t){
		if (t.lastx) //If there exists previously stored information such as last x position on window attributes (meaning it's been minimized or closed)
		dhtmlwindow.restore(t.controls.firstChild, t) //restore the window using that info
		else
		t.style.display="block"
		t.state="fullview" //indicate the state of the window as being "fullview"
	},

	ajax_connect:function(url, t){
		var page_request = false
		var bustcacheparameter=""
		if (window.XMLHttpRequest) // if Mozilla, IE7, Safari etc
		page_request = new XMLHttpRequest()
		else if (window.ActiveXObject){ // if IE6 or below
			try {
				page_request = new ActiveXObject("Msxml2.XMLHTTP")
			}
			catch (e){
				try{
					page_request = new ActiveXObject("Microsoft.XMLHTTP")
				}
				catch (e){}
			}
		}
		else
		return false
		page_request.onreadystatechange=function(){dhtmlwindow.ajax_loadpage(page_request, t)}
		if (this.ajaxbustcache) //if bust caching of external page
		bustcacheparameter=(url.indexOf("?")!=-1)? "&"+new Date().getTime() : "?"+new Date().getTime()
		page_request.open('GET', url+bustcacheparameter, true)
		page_request.send(null)
	},

	ajax_loadpage:function(page_request, t){
		
		t.contentarea.innerHTML='Loading...'
		if (page_request.readyState == 4) {
			if (page_request.status==200) {
				t.contentarea.innerHTML=page_request.responseText
				t.doresize = 'true';
				var hide = (t.style.display=='none')?true:false;
				if (hide) {
					t.style.display = 'block';
				}
				/*if (t.styleChange) {
					
					if(t.saved != '1') {
						t.contentarea.style.height='auto';
						t.contentarea.style.width='auto';
						t.MinHeight	= (t.MinHeight == 0)?t.contentarea.offsetHeight:t.MinHeight;
						t.MinWidth	= (t.MinWidth == 0)?t.offsetWidth:t.MinWidth;
						if(t.MinHeight <=5) {
							t.contentarea.style.height = 275+"px";
							t.MinHeight = 275;
						}
					} else {
						var hideContentarea = (t.contentarea.style.display=='none')?true:false;
						t.contentarea.style.height='auto';
						t.contentarea.style.width='auto';
		
						// Display the contentarea for taking its height...
						if (hideContentarea) {
							t.contentarea.style.display='block';
						}
						t.MinHeight	= (t.MinHeight == 0)?t.contentarea.offsetHeight:t.MinHeight;
						t.MinWidth	= (t.MinWidth == 0)?t.offsetWidth:t.MinWidth;
						if(t.Height >= 10) {
							t.contentarea.style.height=t.Height+"px";
						} 
						if(t.Width >= 10) {
							t.style.width=t.Width+"px";
						}
						dhtmlwindow.rememberattrs(t);
						if (hideContentarea) {
							t.contentarea.style.display='none';
						}
					}
					var ContextR= (t.contentarea.offsetHeight + t.contentarea.offsetWidth);
					//var ContextR= (t.contentarea.offsetHeight);
					var Percentage = Math.round((ContextR * 2 ) / 100);
					t.fontSize = Percentage;
					alert(t.fontSize);
					document.getElementById('style'+t.id).style.fontSize = Percentage+'px';
					//changecss(".trivia",'fontSize',Percentage+'px')
					
				}*/
				
				/*var ContextR= (t.contentarea.offsetHeight + t.contentarea.offsetWidth);	
				var Percentage = Math.round((ContextR * 2 ) / 100);
				t.fontSize = Percentage;
				document.getElementById('style'+t.id).style.fontSize = Percentage+'px';*/
				var objDiv = t.contentarea.getElementsByTagName('DIV')[0];
				if (typeof objDiv !='undefined') {
					var TmpHeight = t.contentarea.style.height;
					var TmpWidth  = t.style.width;
					objDiv.style.width="99%";
					objDiv.style.height="99%";
					t.contentarea.style.height = TmpHeight;
					t.style.width = TmpWidth;
				}
				this.putContextInsidePrintPane(t);
				if (hide) {
					t.style.display='none';
				}
			} else if(page_request.status==500){
			
			//	alert("Server Error:"+page_request.statusText+"ID"+t.id);
				this.refresh(t);
			}
		}
	},


	stop:function(){
		dhtmlwindow.etarget=null //clean up
		document.onmousemove=null
		document.onmouseup=null
	},
	

	addEvent:function(target, functionref, tasktype){ //assign a function to execute to an event handler (ie: onunload)
		var tasktype=(window.addEventListener)? tasktype : "on"+tasktype
		if (target.addEventListener)
		target.addEventListener(tasktype, functionref, false)
		else if (target.attachEvent)
		target.attachEvent(tasktype, functionref)
	},


	cleanup:function(){
		for (var i=0; i<dhtmlwindow.tobjects.length; i++){
			//alert(dhtmlwindow.tobjects[i].width);
			dhtmlwindow.tobjects[i].handle._parent=dhtmlwindow.tobjects[i].resizearea._parent=dhtmlwindow.tobjects[i].controls._parent=null
		}

		window.onload=null
	},
	getAttrib:function(windowName) {
		var hide = false;
		var ppane 	= getPrintPaneCoordinates();
		if (windowName.style.display == 'none') {
			windowName.style.display = 'block';
			hide = true;
		}
		var ttop	= windowName.offsetTop 	- ppane['top'];
		var tleft	= windowName.offsetLeft - ppane['left'];
		var Height 	= windowName.contentarea.style.height;
		var Width  	= windowName.style.width;

		if (hide) {
			windowName.style.display='none';
		}
		var wind 	= 'name:'+windowName.id
		+',height:'+Height
		+',width:'+Width
		+',pos_left:'+tleft+'px'
		+',pos_top:'+ttop+'px'
		+',state:'+windowName.state;

		return wind;

	},
	closeAll:function() {
		for (var i=0; i<dhtmlwindow.tobjects.length; i++){

			if(dhtmlwindow.tobjects[i].state!='close') {
				dhtmlwindow.close(dhtmlwindow.tobjects[i]);
			}
		}
		return true;
	},
	cntall:function() {
		cnt=0;
		for (var i=0; i<dhtmlwindow.tobjects.length; i++){
			if(dhtmlwindow.tobjects[i].state!='close') {
				cnt++;
			}
		}
		return cnt;
	},
	getNextWindowName:function(WinName) {
		var WinAttrArray	= new Array();
		var WinAttrArray	= 	WinName.split("__");
		if (WinAttrArray.length == 2)
		{
			return WinAttrArray;
		}

		var k = 0;
		var WinNoAttr = new Array();
		var WinNameAttr = new Array();
		for (var i=0; i < dhtmlwindow.tobjects.length; i++){
			var ContextName = dhtmlwindow.tobjects[i].windowName;
			
			if (ContextName.indexOf(WinName) != -1) {
				var WinAttrArray	= 	ContextName.split("__");
				WinNameAttr[k]		=	WinAttrArray[0];
				WinNoAttr[k]		=	WinAttrArray[1];
				k++;
			}
		}
		var LastNo	= (WinNoAttr.length)?WinNoAttr.max():0;
		return ++LastNo;
	},
	reset:function(t)
	{
		t.style.left=parseInt(290)+"px" //position window to last known x coord just before minimizing
		t.style.top=parseInt(355)+"px"
	},
	putContextInsidePrintPane:function(t)
	{
		//Author :Anil Gupta
		// This function will put the context window inside the print pane if any part of the context is out of the print pane..
		var ppane = getPrintPaneCoordinates();
		var hide = false;
		if (t.style.display=='none') {
			t.style.display='block';
			hide = true;
		}
		var Ttop  	= findPosY(t);
		var Tleft  	= findPosX(t);
		var Tbottom = Ttop+t.offsetHeight;
		var Tright 	= Tleft+t.offsetWidth;
		var NewTop	= 0;
		var NewLeft	= 0;

		if (Ttop <= ppane['top']) {
			NewTop = ppane['top']+2;
		}
		if (Tleft <= ppane['left']) {
			NewLeft = ppane['left']+2;
		}

		if (Tbottom >= ppane['bottom']) {
			NewTop = Ttop-(Tbottom-ppane['bottom'])-2;
		}
		if (Tright >= ppane['right']) {
			NewLeft = Tleft-(Tright-ppane['right'])-2;
		}
		if (NewTop !=0 ) {
			t.style.top=NewTop+"px";
		}
		if (NewLeft !=0 ) {
			t.style.left=NewLeft+"px";
		}
		if(hide) {
			t.style.display='none';
		}
	}
} //End dhtmlwindow object

document.write('<div id="dhtmlwindowholder"><span style="display:none">.</span></div>') //container that holds all dhtml window divs on page
window.onunload=dhtmlwindow.cleanup