function openImageFile(file,title) {
	window.open("../soft/imageWindow.php?image="+file+"&title="+title,"displayWindow","toolbar=no,scrollbars=yes");
}
function popupNewWindow(file,title) {
	win=window.open("imageWindow.php?image="+file+"&title="+title,"displayWindow","toolbar=no,scrollbars=yes, width=400, height=300");
}
function getElementById(element) {
	if (document.getElementById) return document.getElementById(element);
	else if (document.all) return document.all[element];
	else if (document.layers) return document.layers[element];
	return null;
}

var menu=null;
var delay=500;
var displayArea=document.getElementById("showSubMenu");
var previousMenu=null;
var delayhide= null;
var selectedMenu=null;
var menus= new Array();

function Menu(ref,id,className,hoverClassName){
	var menuItem=getElementById(String(id));
	this.className=className;
	this.refPage=ref;
	this.id=id;
	this.hoverClassName=hoverClassName;
	this.subMenus=new Array();
	menuItem.onmouseover=function(e) {
		showIt(this.id);
		this.className=hoverClassName;
		this.setAttribute("class",hoverClassName);
		var p=getElementById(ref+"_pillar");
		if (p) {changeImages(p.pillObj.imgName,p.pillObj.mouseOverImg);}
	}
	menuItem.onmouseout=function(e) {
		delayHide();
		this.setAttribute("class",className);
		var p=getElementById(ref+"_pillar");
		if (p) {changeImages(p.pillObj.imgName,p.pillObj.mouseOutImg);}
	}
}
Menu.prototype.addSMI=function(label, uri, className, hoverClassName){
	var index= this.subMenus.length;
	this.subMenus[index]=new Object();
	this.subMenus[index].label=label;
	this.subMenus[index].uri=uri;
	this.subMenus[index].className=className;
	this.subMenus[index].hoverClassName=hoverClassName;
}
Menu.prototype.droptIt=function(){
	var table=document.createElement("tbody");
	var tr=document.createElement("tr");
	if(this.subMenus.length>0){
		for(i=0;i<this.subMenus.length;i++){
			var td=document.createElement("td");
			className=this.subMenus[i].className;
			td.className=className;
			if(!td.className) td.setAttribute("class",className);
			var anchor=document.createElement("a");	
			anchor.setAttribute("id",this.subMenus[i].id);
			anchor.setAttribute("href",this.subMenus[i].uri);
			anchor.appendChild(document.createTextNode(this.subMenus[i].label));
			var hoverClassName=this.subMenus[i].hoverClassName;
			td.onmouseover=function(){
				clearDelayhide();
				this.className=hoverClassName;
				this.setAttribute("class",hoverClassName);
			};
			td.onmouseout=function(e){
				var event=window.event? window.event: e;
				resetIt(event);
				this.className=className;
				this.setAttribute("class",className);
		};
			td.appendChild(anchor);
			tr.appendChild(td);
		}
	}
	table.appendChild(tr);
	return table;
}
function getMenu(id){
	for(i=0;i<menus.length;i++){
		if(menus[i].id==id) return menus[i];
	}
	return false;
}
function showIt(id){
	clearDelayhide();
	var menuItem=getMenu(id);
	if(!menuItem){ hideIt(); return ; }
	var newMenu=menuItem.droptIt();
	try{
		if(newMenu){
			if(displayArea.childNodes.length>0) removeAllChilds(displayArea);
			displayArea.appendChild(newMenu);
			//alert(displayArea.innerHTML);
			previousMenu=newMenu;
		}else if(!previousMenu) displayArea.removeChild(previousMenu);
	}catch(e){
		alert(e);
		alert(newMenu);
	}
}
function removeAllChilds(cont){
	for(i=0;i<cont.childNodes.length;i++){
		var child=cont.childNodes[i];
		if(child.childNodes.length>0) removeAllChilds(child);
		cont.removeChild(child);
	}
}	
function resetIt(e){
	if (document.all && !contains(e.toElement)){
		clearDelayhide();
		delayhide=setTimeout("hideIt()",delay);
		return true;
	}else if (document.getElementById && e.currentTarget!= e.relatedTarget
		&& !contains_ns6(e.currentTarget, e.relatedTarget)){
		clearDelayhide();
		delayhide=setTimeout("hideIt()",delay);
		return true;
	}
	return false;
}
		
function delayHide(){
	clearDelayhide();
	delayhide=setTimeout("hideIt()",delay);
}		
function hideIt(){
	if(selectedMenu) showIt(selectedMenu.id);
}
		
function clearDelayhide(){
	if (window.delayhide) clearTimeout(delayhide);
}
function contains(parent,child){
	if(parent.childNodes.length > 0){
		for(i=0;i<parent.childNodes.length;i++){
			var child1=parent.childNodes[i];
			if(child1.childNodes.length>0) return contains(child1,child);
			if(child1==child) return child1;
		}
	}
	return false;
}
function contains_ns6(a, b) {
	if(!a || !b) return false;
	while (b.parentNode) if ((b = b.parentNode) == a) return true;
	return false;
}
function intializeMenu(urlPrefix,selMenu){
	var home=new Menu("home","homemenu","companyMenu","companyMenuHover");
	home.addSMI("About us",urlPrefix+"company/index.php","companyMenu","companyMenuHover");
	home.addSMI("Clients",urlPrefix+"company/customers.php","companyMenu","companyMenuHover");		
	home.addSMI("Careers",urlPrefix+"company/careers.php","companyMenu","companyMenuHover");		
	home.addSMI("Contact us",urlPrefix+"company/contact.php","companyMenu","companyMenuHover");		
	menus[0]=home;
		
	var company=new Menu("company","companyMenu","companyMenu","companyMenuHover");
	company.addSMI("About us",urlPrefix+"company/index.php","companyMenu","companyMenuHover");
	company.addSMI("Clients",urlPrefix+"company/customers.php","companyMenu","companyMenuHover");		
	company.addSMI("Careers",urlPrefix+"company/careers.php","companyMenu","companyMenuHover");		
	company.addSMI("Contact us",urlPrefix+"company/contact.php","companyMenu","companyMenuHover");
	menus[1]=company;
	
	var soft=new Menu("soft","softwareMenu","softMenu","softMenuHover");
	soft.addSMI("Software Home",urlPrefix+"soft/index.php","softMenu","softMenuHover");
	soft.addSMI("Projects/Products ",urlPrefix+"soft/products.php","softMenu","softMenuHover");
	soft.addSMI("Outsourcing",urlPrefix+"soft/outsource.php","softMenu","softMenuHover");
	soft.addSMI("Services",urlPrefix+"soft/services.php","softMenu","softMenuHover");
	soft.addSMI("Software Methodology",urlPrefix+"soft/software_development_methodology.php","softMenu","softMenuHover");
	soft.addSMI("Web Dev Methodology",urlPrefix+"soft/website_development_methodology.php","softMenu","softMenuHover");
	menus[2]=soft;
	
	var gis=new Menu("gis","gisMenu","gisMenu","gisMenuHover");
	gis.addSMI("GIS Home",urlPrefix+"gis/index.php","gisMenu","gisMenuHover");
	gis.addSMI("GIS Solutions",urlPrefix+"gis/customized_gis_solutions.php","gisMenu","gisMenuHover");
	gis.addSMI("Digitizing",urlPrefix+"gis/digitizing.php","gisMenu","gisMenuHover");
	gis.addSMI("PrithviGIS",urlPrefix+"gis/pgis.php","gisMenu","gisMenuHover");
	gis.addSMI("Introduction to GIS",urlPrefix+"gis/intro.php","gisMenu","gisMenuHover");
	menus[3]=gis;
	showSelMenu(selMenu,true);
}
function showSelMenu(selMenu, perm) {
	for(i=0;i<menus.length;i++){
		if(menus[i].refPage==selMenu){
			if (perm) selectedMenu=menus[i];
			showIt(menus[i].id);
			return menus[i].id;
		}
	}
}

function getBrowserHeight() {
	if (window.innerHeight) return window.innerHeight;
	else if (document.documentElement && document.documentElement.clientHeight != 0) return document.documentElement.clientHeight;
	else if (document.body) return document.body.clientHeight;
	return 0;
}
function bottom(){
	var footer=getElementById("footerDiv");
	var contentHeight=getElementById("pghead").offsetHeight+getElementById("content").offsetHeight+100;//100=header
	var desiredOffset = getBrowserHeight() - (contentHeight+footer.offsetHeight);
	if(desiredOffset > 0) footer.style.top = desiredOffset + 'px';
	else footer.style.top ='0px';
}
bottom();
