// GLOBAL VARIABLES
var ns4 = document.layers
var ns6 = document.getElementById&&!document.all
var ie4 = document.all
var child;
var child2;

// OPEN WINDOW WITH NO MENU ETC.
function OpenWindow(url, name, width, height)
{
	child = window.open( url, name,"titlebar=no, toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=no, resizable=no, copyhistory=no, dependent=yes, width=" + (screen.availWidth - 450) + ", height=" + (screen.availHeight - 100) );
	child.moveTo(50,50);
}

function CloseChild()
{
	if (child)
	{
		child.close();
	}
	if (child2)
	{
		child2.close();
	}
}

function CloseChild2()
{
	if (child2)
	{
		child2.close();
	}
}

// SHOW/HIDE DIV & SPAN TAGS
function DisplayToggle(id)
{
	var daObj = GetObject(id);
	if (daObj.style.display == "none")
	{
		// display the object
		daObj.style.display = "";
		daObj.style.visibility = "visible";
	}
	else
	{
		// disable display
		daObj.style.display = "none";
		//daObj.style.visibility = "hidden";
		if (ns6)
		{
			daObj.style.visibility = "collapse";
		}
	}
}

function OpenShut(id, aid)
{
	var daObj = GetObject(id);
	var aObj = GetObject(aid);
	if (daObj.style.display == "none")
	{
		// display the object
		daObj.style.display = "";
		daObj.style.visibility = "visible";
		aObj.innerHTML = "&lt;&lt;";
	}
	else
	{
		// disable display
		daObj.style.display = "none";
		aObj.innerHTML = "&gt;&gt;";
		//daObj.style.visibility = "hidden";
		if (ns6)
		{
			daObj.style.visibility = "collapse";
		}
	}
}

// GET DOCUMENT ELEMENT
function GetObject(id)
{
	// This function checks for DOM strategy, then 
	// returns an object reference.
	if (document.all)
	{
		return document.all[id];
	}
	else if(document.layers)
	{
		return document.layers[id];
	}
	else
	{
		return document.getElementById(id);
	}
}

// SET HIDDEN FIELD VALUE
function SetField(field, val)
{
	GetObject(field).value = val;
}

// SUBMIT FORM
function Submit() 
{
	document.ebd.submit();
}

function ClosePopup(pagename) 
{
	if (pagename)
	{
		window.opener.document.ebd.H05.value = pagename;
	}
	else
	{
		window.opener.document.ebd.H05.value = window.opener.document.ebd.H04.value;
	}
	window.opener.document.ebd.submit();
	window.close();
	
}

// NEW WINDOW
var win=null;
function NewWindow(mypage,myname,w,h,scroll,pos,men)
{
	if(pos=="random")
	{
		LeftPosition=(screen.width)?Math.floor(Math.random()*(screen.width-w)):100;
		TopPosition=(screen.height)?Math.floor(Math.random()*((screen.height-h)-75)):100;
	}
	if(pos=="center")
	{
		LeftPosition=(screen.width)?(screen.width-w)/2:100;TopPosition=(screen.height)?(screen.height-h)/2:100;
	}
	else if ((pos!="center" && pos!="random") || pos==null)
	{
		LeftPosition=0;
		TopPosition=20;
	}
	settings='width='+w+',height='+h+',top='+TopPosition+',left='+LeftPosition+',scrollbars='+scroll+',location=no,directories=no,status=no,menubar='+men+',toolbar=no,resizable=no';
	win=window.open(mypage,myname,settings);
}




// Dynamic lists functions
function DynamicOptionList()
{
	if(arguments.length < 2)
	{
		alert("Not enough arguments in DynamicOptionList()");
	}
	this.target = arguments[0];
	this.dependencies = new Array();
	for(var i=1;i<arguments.length;i++)
	{
		this.dependencies[this.dependencies.length] = arguments[i];
	}
	this.form = null;
	this.dependentValues = new Object();
	this.defaultValues = new Object();
	this.options = new Object();
	this.delimiter = "|";
	this.longestString = "";
	this.numberOfOptions = 0;
	this.addOptions = DynamicOptionList_addOptions;
	this.populate = DynamicOptionList_populate;
	this.setDelimiter = DynamicOptionList_setDelimiter;
	this.setDefaultOption = DynamicOptionList_setDefaultOption;
	this.printOptions = DynamicOptionList_printOptions;
	this.init = DynamicOptionList_init;
}

function DynamicOptionList_setDelimiter(val)
{
	this.delimiter = val;
}

function DynamicOptionList_setDefaultOption(condition, val)
{
	if(typeof this.defaultValues[condition] == "undefined" || this.defaultValues[condition]==null)
	{
		this.defaultValues[condition] = new Object();
	}
	for(var i=1;i<arguments.length;i++)
	{
		this.defaultValues[condition][arguments[i]]=1;
	}
}

function DynamicOptionList_init(theform)
{
	this.form = theform;
	this.populate();
}

function DynamicOptionList_addOptions(dependentValue)
{
	if(typeof this.options[dependentValue] != "object")
	{
		this.options[dependentValue] = new Array();
	}
	for(var i=1;i<arguments.length;i+=2)
	{
		if(arguments[i].length > this.longestString.length)
		{
			this.longestString = arguments[i];
		}
		this.numberOfOptions++;
		this.options[dependentValue][this.options[dependentValue].length] = arguments[i];
		this.options[dependentValue][this.options[dependentValue].length] = arguments[i+1];
	}
}

function DynamicOptionList_printOptions()
{
	if((navigator.appName == 'Netscape') &&(parseInt(navigator.appVersion) <= 4))
	{
		var ret = "";
		for(var i=0;i<this.numberOfOptions;i++)
		{
			ret += "<OPTION>";
		}
		ret += "<OPTION>"
		for(var i=0; i<this.longestString.length; i++)
		{
			ret += "_";
		}
		document.writeln(ret);
	}
}

function DynamicOptionList_populate()
{
	var theform = this.form;
	var i,j,obj,obj2;
	this.dependentValues = new Object;
	var dependentValuesInitialized = false;
	for(i=0;i<this.dependencies.length;i++)
	{
		var sel = theform[this.dependencies[i]];
		var selName = sel.name;
		if(!dependentValuesInitialized)
		{
			dependentValuesInitialized = true;
			for(j=0;j<sel.options.length;j++)
			{
				if(sel.options[j].selected)
				{
					this.dependentValues[sel.options[j].value] = true;
				}
			}
		}
		else
		{
			var tmpList = new Object();
			var newList = new Object();
			for(j=0;j<sel.options.length;j++)
			{
				if(sel.options[j].selected)
				{
					tmpList[sel.options[j].value] = true;
				}
			}
			for(obj in this.dependentValues)
			{
				for(obj2 in tmpList)
				{
					newList[obj + this.delimiter + obj2] = true;
				}
			}
			this.dependentValues = newList;
		}
	}
	var targetSel = theform[this.target];
	var targetSelected = new Object();
	for(i=0;i<targetSel.options.length;i++)
	{
		if(targetSel.options[i].selected)
		{
			targetSelected[targetSel.options[i].value] = true;
		}
	}
	targetSel.options.length = 0;
	for(i in this.dependentValues)
	{
		if(typeof this.options[i] == "object")
		{
			var o = this.options[i];
			for(j=0;j<o.length;j+=2)
			{
				var text = o[j];
				var val = o[j+1];
				targetSel.options[targetSel.options.length] = new Option(text, val, false, false);
				if(typeof this.defaultValues[i] != "undefined" && this.defaultValues[i]!=null)
				{
					for(def in this.defaultValues[i])
					{
						if(def == val)
						{
							targetSelected[val] = true;
						}
					}
				}
			}
		}
	}
	targetSel.selectedIndex=-1;
	for(i=0;i<targetSel.options.length;i++)
	{
		if(targetSelected[targetSel.options[i].value] != null && targetSelected[targetSel.options[i].value]==true)
		{
			targetSel.options[i].selected = true;
		}
	}
}
