/////////////////////////////////////////////////////////////////////////
// Start Body functions /////////////////////////////////////////////////
document.getStyleObjectById = function(sId){
	var sIdUL = document.getElementById(sId);
	if(sIdUL && typeof sIdUL.style != 'undefined'){
		sIdUL = sIdUL.style;
	}
	return sIdUL;
}

document.getElementsByClassName = function(clsName){
    var retVal = new Array();
    var elements = document.getElementsByTagName("*");
    for(var i = 0;i < elements.length;i++){
        if(elements[i].className.indexOf(" ") >= 0){
            var classes = elements[i].className.split(" ");
            for(var j = 0;j < classes.length;j++){
                if(classes[j] == clsName)
                    retVal.push(elements[i]);
            }
        }
        else if(elements[i].className == clsName)
            retVal.push(elements[i]);
    }
    return retVal;
}

window.onload = function(){	
	if(document.getElementById){
		// Set up the (main) menu
		menuRollOverSetup(); 
		
		// Set up the home/categories 
		if(g_PAGETYPE == 'home') homeCategoriesRollOverSetup(); 
	
		// Set up the faqs
		if(g_PAGETYPE == 'faqs') faqsClickSetup(); 
	
		// Set up the products/categories
		if(g_PAGETYPE == 'products_categories') productsCategoriesRollOverSetup(); 
	
		// Set up the products/category/types 
		if(g_PAGETYPE == 'products_types') productsCategoryTypesRollOverSetup(); 
	
		// Set up the products/category/type/items 
		if(g_PAGETYPE == 'products_items') productsCategoryTypeItemsRollOverSetup(); 
	
		// Set up the products/category/type/pages 
		if(g_PAGETYPE == 'products_items') productsCategoryTypePagesRollOverSetup(); 
		
		// Set up the products/category/type/item/images 
		if(g_PAGETYPE == 'products_item') productsCategoryTypeItemImagesRollOverSetup()
	
		// Set up the products menu
		//productsMenuRollOverSetup(); 
	
		// Set up the services menu
		//servicesMenuRollOverSetup(); 
	}
}

window.onunload = function(){ 
	// Remember to close the popup, if necessary
	closePopUp();	
}	

/////////////////////////////////////////////////////////////////////////
// Start PopUp Window ///////////////////////////////////////////////////
var winPopUp = null;
function openPopUp(strURL, nLeft, nTop, nWidth, nHeight){
	closePopUp();
	var sFeatures = 'left='+nLeft+',top='+nTop+',screenX='+nLeft+',screenY='+nTop+',width='+nWidth+',height='+nHeight+',menubar=1,titlebar=1,scrollbars=1,resizable=1';
	winPopUp = window.open('./' + strURL, 'ewin', sFeatures);
}
function closePopUp(){ 
	if(winPopUp && !winPopUp.closed) winPopUp.close();
	winPopUp = null;
}	

/////////////////////////////////////////////////////////////////////////
// Start Home/Categories ////////////////////////////////////////////////

// This gets called by window.onload()
function homeCategoriesRollOverSetup(){
	var aDiv = document.getElementsByClassName('home_category_box');
	for(var i = 0; i < aDiv.length; i++){
		aDiv[i].onmouseover = function(event){ homeCategoriesRollOver(event, this, 1); } 
		aDiv[i].onmouseout = function(event){ homeCategoriesRollOver(event, this, 0); } 
	}
}

function homeCategoriesRollOver(e, obj, bOver){
	var obj_id_parts = obj.id.split('_');
	obj_id_parts[0] = 'a';
	var a_style = document.getStyleObjectById(obj_id_parts.join('_'));
	if(bOver == 1){	
		a_style.color = '#FFFFFF'; 
		a_style.background = '#6D90A5 url(./style/home_category_box_top_over.gif) top left no-repeat'; 
	} else {
		a_style.color = '#607F93'; 
		a_style.background = '#D2DCE5 url(./style/home_category_box_top_out.gif) top left no-repeat'; 
	}
}

/////////////////////////////////////////////////////////////////////////
// Start FAQs //////////////////////////////////////////////////////////

// This gets called by window.onload()
function faqsClickSetup(){
	var aDiv = document.getElementsByClassName('faq');
	for(var i = 0; i < aDiv.length; i++){
		aDiv[i].onclick = function(event){ faqsClick(event, this); } 
	}
}

function faqsClick(e, obj){
	var a_style = document.getStyleObjectById(obj.id + '_tar');
	a_style.color = '#F29400'; 
}

/////////////////////////////////////////////////////////////////////////
// Start Products/Categories ////////////////////////////////////////////

// This gets called by window.onload()
function productsCategoriesRollOverSetup(){
	var aDiv = document.getElementsByClassName('products_category_box');
	for(var i = 0; i < aDiv.length; i++){
		aDiv[i].onmouseover = function(event){ productsCategoriesRollOver(event, this, 1); } 
		aDiv[i].onmouseout = function(event){ productsCategoriesRollOver(event, this, 0); } 
	}
}

function productsCategoriesRollOver(e, obj, bOver){
	var obj_id_parts = obj.id.split('_');
	obj_id_parts[0] = 'a';
	var a_style = document.getStyleObjectById(obj_id_parts.join('_'));
	if(bOver == 1){	
		a_style.color = '#FFFFFF'; 
		a_style.background = '#6D90A5 url(./style/products_category_box_top_over.gif) top left no-repeat'; 
	} else {
		a_style.color = '#607F93'; 
		a_style.background = '#D2DCE5 url(./style/products_category_box_top_out.gif) top left no-repeat'; 
	}
}


/////////////////////////////////////////////////////////////////////////
// Start Products/Category/Types ////////////////////////////////////////

// This gets called by window.onload()
function productsCategoryTypesRollOverSetup(){
	var aDiv = document.getElementsByClassName('products_category_type_box');
	for(var i = 0; i < aDiv.length; i++){
		aDiv[i].onmouseover = function(event){ productsCategoryTypesRollOver(event, this, 1); } 
		aDiv[i].onmouseout = function(event){ productsCategoryTypesRollOver(event, this, 0); } 
	}
}

function productsCategoryTypesRollOver(e, obj, bOver){
	var obj_id_parts = obj.id.split('_');
	obj_id_parts[0] = 'a';
	var a_style = document.getStyleObjectById(obj_id_parts.join('_'));
	if(bOver == 1){	
		a_style.color = '#FFFFFF'; 
		a_style.backgroundColor = '#6D90A5'; 
	} else {
		a_style.color = '#607F93'; 
		a_style.backgroundColor = '#D1DCE5'; 
	}
}

/////////////////////////////////////////////////////////////////////////
// Start Products/Category/Type/Items ///////////////////////////////////

// This gets called by window.onload()
function productsCategoryTypeItemsRollOverSetup(){
	var aDiv = document.getElementsByClassName('products_category_type_item_box');
	for(var i = 0; i < aDiv.length; i++){
		aDiv[i].onmouseover = function(event){ productsCategoryTypeItemsRollOver(event, this, 1); } 
		aDiv[i].onmouseout = function(event){ productsCategoryTypeItemsRollOver(event, this, 0); } 
	}
}

function productsCategoryTypeItemsRollOver(e, obj, bOver){
	var obj_id_parts = obj.id.split('_');
	obj_id_parts[0] = 'a';
	var a_style = document.getStyleObjectById(obj_id_parts.join('_'));
	if(bOver == 1){	
		a_style.textDecoration = 'underline'; 
	} else {
		a_style.textDecoration = 'none'; 
	}
}


/////////////////////////////////////////////////////////////////////////
// Start Products/Category/Type Pages ///////////////////////////////////

// This gets called by window.onload()
function productsCategoryTypePagesRollOverSetup(){
	var aDiv = document.getElementsByClassName('item_page_a');
	for(var i = 0; i < aDiv.length; i++){
		aDiv[i].onmouseover = function(event){ productsCategoryTypePagesRollOver(event, this, 1); } 
		aDiv[i].onmouseout = function(event){ productsCategoryTypePagesRollOver(event, this, 0); } 
	}
}

function productsCategoryTypePagesRollOver(e, obj, bOver){
	var img = MM_findObj('img_' + obj.id);
	if(bOver == 1){	img.oldSrc = img.src; img.src = './style/items_page/' + obj.name + '.gif'; } 
	else img.src = img.oldSrc;
}


/////////////////////////////////////////////////////////////////////////
// Start Products/Category/Type/Item Images /////////////////////////////

// This gets called by window.onload()
function productsCategoryTypeItemImagesRollOverSetup(){
	var aDiv = document.getElementsByClassName('item_image_a');
	for(var i = 0; i < aDiv.length; i++){
		aDiv[i].onmouseover = function(event){ productsCategoryTypeItemImagesRollOver(event, this, 1); } 
		aDiv[i].onmouseout = function(event){ productsCategoryTypeItemImagesRollOver(event, this, 0); } 
	}
}

function productsCategoryTypeItemImagesRollOver(e, obj, bOver){
	var img = MM_findObj('img_' + obj.id);
	if(bOver == 1){	img.oldSrc = img.src; img.src = './style/items_page/' + obj.name + '.gif'; } 
	else img.src = img.oldSrc;
}


/////////////////////////////////////////////////////////////////////////
// Start Menu ///////////////////////////////////////////////////////////
var gm_aPreloadImageSrc = [];

// This gets called by window.onload()
function menuRollOverSetup(){
	var aMenuItems = ['home', 'products', 'services', 'company_info', 'get_a_quote', 'faqs', 'contact_us'];
	for(var i = 0; i < aMenuItems.length; i++){
		var sMenuItem = aMenuItems[i];
		var a = MM_findObj('a_menu_' + sMenuItem);
		if(a != null){
			eval("a.onmouseover = function(){ menuSetImgSrc('" + sMenuItem + "', 1); }"); 
			eval("a.onmouseout = function(){ menuSetImgSrc('" + sMenuItem + "', 0); }"); 
			gm_aPreloadImageSrc[i] = new Image();
			gm_aPreloadImageSrc[i].src = './style/menu/menu_out_' + sMenuItem + '.gif';
		}	
	}
}

function menuSetImgSrc(sKey, bOver){
	var img = MM_findObj('img_menu_' + sKey);
	if(bOver == 1){	img.oldSrc = img.src; img.src = './style/menu/menu_over_' + sKey + '.gif'; } 
	else img.src = img.oldSrc;
}


/////////////////////////////////////////////////////////////////////////
// Start Products Menu //////////////////////////////////////////////////
var gpm_Image = null;
var gpm_aLinks = new Object();
var gpm_aTargets = new Object();
var gpm_asIds = []; 	// Current visible Product menu items (one of
						// which is always visible)

// This gets called by window.onload()
function productsMenuRollOverSetup(){
	var div = MM_findObj('products_menu');
	var aDiv = document.getElementsByClassName('pm_source');
	for(var i = 0; i < aDiv.length; i++){
		aDiv[i].onmouseover = function(event){ productsMenuShowHide(event, this, 1); } 
		aDiv[i].onmouseout = function(event){ productsMenuShowHide(event, this, 0); } 
	}
	gpm_Image = MM_findObj('pmimg_menu_products');
	gpm_Image.outSrc = gpm_Image.src; 
	gpm_Image.overSrc = './style/menu/menu_over_products.gif';
	
	gpm_aTargets['top'] = document.getStyleObjectById('pmtar');
}

function productsMenuShowHide(e, obj, bOver){
	if(bOver){
		gpm_Image.src = gpm_Image.overSrc; 

/*		gpm_aTargets['top'].visibility = 'visible';
		gpm_asIds = ['']; // Represents the top in this format

		var asId = obj.id.split('_');
		for(var i = 1; i < asId.length; i++){
			gpm_asIds[i] = gpm_asIds[i - 1] + '_' + asId[i];
			if(typeof gpm_aLinks[gpm_asIds[i]] == 'undefined'){
				// This will be called if the object has never been moused over before
				gpm_aLinks[gpm_asIds[i]] = document.getStyleObjectById('pma' + gpm_asIds[i]);
				gpm_aTargets[gpm_asIds[i]] = document.getStyleObjectById('pmtar' + gpm_asIds[i]);
			}
			gpm_aLinks[gpm_asIds[i]].backgroundColor = '#E0E8F6';
			gpm_aTargets[gpm_asIds[i]].visibility = 'visible';
		}
*/
	} else {
		productsMenuHideAll();
	}
	//document.getElementById('report').innerHTML = '[<br />&nbsp;' + gpm_asIds.join('<br />,&nbsp;') + '<br />]<br />';
	if (!e) var e = window.event;
	e.cancelBubble = true;
	if (e.stopPropagation) e.stopPropagation();
}

function productsMenuHideAll(){
	gpm_Image.src = gpm_Image.outSrc; 
/*	gpm_aTargets['top'].visibility = 'hidden';
	for(var i = 1; i < gpm_asIds.length; i++){
		gpm_aLinks[gpm_asIds[i]].backgroundColor = '#FFFFFF';
		gpm_aTargets[gpm_asIds[i]].visibility = 'hidden';
	}
	gpm_asIds = [];*/
}
/////////////////////////////////////////////////////////////////////////
// Start Services Menu //////////////////////////////////////////////////
var gaSMs = []; 

// This gets called by window.onload()
function servicesMenuRollOverSetup(){
	var div = MM_findObj('services_menu');
	var aDiv = document.getElementsByClassName('sm_source');
	for(var i = 0; i < aDiv.length; i++){
		aDiv[i].onmouseover = function(event){ servicesMenuShowHide(event, this, 1); } 
		aDiv[i].onmouseout = function(event){ servicesMenuShowHide(event, this, 0); } 
	}
}

function menuSetImgSrcService(bOver){
	var img = MM_findObj('smimg_menu_services');
	if(bOver == 1){	img.oldSrc = img.src; img.src = './style/menu/menu_over_services.gif'; } 
	else img.src = img.oldSrc;	
}

function servicesMenuShowHide(e, obj, bOver){
	menuSetImgSrcService(bOver);
/*	if(bOver){
		gaSMs = [''];
		document.getStyleObjectById('smtar').visibility = 'visible';
	} else {
		for(var i = 0; i < gaSMs.length; i++){
			var sSM = gaSMs[i];
			document.getStyleObjectById('smtar'+ sSM).visibility = 'hidden';
		}
		gaSMs = [];
	}*/
	if (!e) var e = window.event;
	e.cancelBubble = true;
	if (e.stopPropagation) e.stopPropagation();
}

