
var NewAccordion = Accordion.extend({
    showAll: function() {
        var obj = {};
        //this.previous = -1;                  //  Added this line
        this.elements.each(function(el, i){
            obj[i] = {};
            this.fireEvent('onActive', [this.togglers[i], el]);
            for (var fx in this.effects) obj[i][fx] = el[this.effects[fx]];
        }, this);
        return this.start(obj);
    },
    hideAll: function() {
        var obj = {};
        //this.previous = -1;                  //  Added this line
        this.elements.each(function(el, i){
            obj[i] = {};
            this.fireEvent('onBackground', [this.togglers[i], el]);
            for (var fx in this.effects) obj[i][fx] = 0;
        }, this);
        return this.start(obj);
    }
});

	
	//main
	var stretchers = $$('div.accordion');
	var togglers_1 = $$('h3.toggler');
	var togglers_2 = $$('img.togg_img2');
	var togglers_3 = $$('table.togg_table');
	var togglers = $$('img.togg_img');

	//accordion for toggle all ..
	var a_stretchers = stretchers;
	var a_togglers = $$('a.g_toggler');

	stretchers.setStyles({'height': '0', 'overflow': 'hidden'});
	
	var myAccordion; var myAccordion1; var sideAccordion;
	var g_Accordion, g_Accordion1;
	var image_folder = "/themes/jacobsen/images";
	var acc1 = new Object(), acc2 = new Object(), acc3 = new Object(), acc4 = new Object();

	function addAccordion(togg, stre, ty, obj_name){
		if(ty == 'img') {
			window[obj_name] = new Accordion(togg, stre, {
				'opacity': true,
				'alwaysHide': true,
				'show': -1,			
				'start': false,
				'transition': Fx.Transitions.Quad.easeOut,
				onActive: function(toggler){
					var obj_img = toggler;
					if(obj_img && obj_img.src && obj_img.src.indexOf("bg-products-") >= 0){
						var filename = obj_img.src.substr(obj_img.src.indexOf("bg-products-"),obj_img.src.length);
						var localeCheck = filename.charAt(14);
						var locale = filename.substr(12,2);

						if(obj_img.src.indexOf("green") >= 0) {
							if (localeCheck == "-") {
								obj_img.src = image_folder + "/bg-products-" + locale + "-hide-green.gif";
							}
							else {
								obj_img.src = image_folder + "/bg-products-hide-green.gif";
							}
						}
						else if(obj_img.src.indexOf("orange") >= 0) {
							if (localeCheck == "-") {
								obj_img.src = image_folder + "/bg-products-" + locale + "-hide-orange.gif";
							}
							else {
								obj_img.src = image_folder + "/bg-products-hide-orange.gif";
							}
						}
						else if(obj_img.src.indexOf("blue") >= 0) {
							if (localeCheck == "-") {
								obj_img.src = image_folder + "/bg-products-" + locale + "-hide-blue.gif";
							}
							else {
								obj_img.src = image_folder + "/bg-products-hide-blue.gif";
							}
						}
						else if(obj_img.src.indexOf("brown") >= 0) {
							if (localeCheck == "-") {
								obj_img.src = image_folder + "/bg-products-" + locale + "-hide-brown.gif";
							}
							else {
								obj_img.src = image_folder + "/bg-products-hide-brown.gif";
							}
						}
					}				
				},
				onBackground: function(toggler){
					var obj_img = toggler;
					if(obj_img && obj_img.src && obj_img.src.indexOf("bg-products-") >= 0){
						var filename = obj_img.src.substr(obj_img.src.indexOf("bg-products-"),obj_img.src.length);
						var localeCheck = filename.charAt(14);
						var locale = filename.substr(12,2);

						if(obj_img.src.indexOf("green") >= 0) {
							if (localeCheck == "-") {
								obj_img.src = image_folder + "/bg-products-" + locale + "-view-green.gif";
							}
							else {
								obj_img.src = image_folder + "/bg-products-view-green.gif";
							}
						}
						else if(obj_img.src.indexOf("orange") >= 0) {
							if (localeCheck == "-") {
								obj_img.src = image_folder + "/bg-products-" + locale + "-view-orange.gif";
							}
							else {
								obj_img.src = image_folder + "/bg-products-view-orange.gif";
							}
						}
						else if(obj_img.src.indexOf("blue") >= 0) {
							if (localeCheck == "-") {
								obj_img.src = image_folder + "/bg-products-" + locale + "-view-blue.gif";
							}
							else {
								obj_img.src = image_folder + "/bg-products-view-blue.gif";
							}
						}
						else if(obj_img.src.indexOf("brown") >= 0) {
							if (localeCheck == "-") {
								obj_img.src = image_folder + "/bg-products-" + locale + "-view-brown.gif";
							}
							else {
								obj_img.src = image_folder + "/bg-products-view-brown.gif";
							}
						}
					}				
				}
			});	
	    } else if (ty == 'table'){
	       window[obj_name] = new Accordion(togg, stre, {
                'opacity': true,
                'alwaysHide': true,
                'show': -1,         
                'start': false,
                'transition': Fx.Transitions.Quad.easeOut,
                onActive: function(toggler){
					var obj_img = toggler.getChildren().getChildren().getLast().getFirst().getLast().getFirst();
					//var obj_img = toggler.getParent().getParent().getPrevious().getFirst();
                    if(obj_img.src && obj_img.src.indexOf("bg-products-") >= 0){
						var filename = obj_img.src.substr(obj_img.src.indexOf("bg-products-"),obj_img.src.length);
						var localeCheck = filename.charAt(14);
						var locale = filename.substr(12,2);

						if(obj_img.src.indexOf("green") >= 0) {
							if (localeCheck == "-") {
								obj_img.src = image_folder + "/bg-products-" + locale + "-hide-green.gif";
							}
							else {
								obj_img.src = image_folder + "/bg-products-hide-green.gif";
							}
						}
						else if(obj_img.src.indexOf("orange") >= 0) {
							if (localeCheck == "-") {
								obj_img.src = image_folder + "/bg-products-" + locale + "-hide-orange.gif";
							}
							else {
								obj_img.src = image_folder + "/bg-products-hide-orange.gif";
							}
						}
						else if(obj_img.src.indexOf("blue") >= 0) {
							if (localeCheck == "-") {
								obj_img.src = image_folder + "/bg-products-" + locale + "-hide-blue.gif";
							}
							else {
								obj_img.src = image_folder + "/bg-products-hide-blue.gif";
							}
						}
						else if(obj_img.src.indexOf("brown") >= 0) {
							if (localeCheck == "-") {
								obj_img.src = image_folder + "/bg-products-" + locale + "-hide-brown.gif";
							}
							else {
								obj_img.src = image_folder + "/bg-products-hide-brown.gif";
							}
						}
                    }                            
                },
                onBackground: function(toggler){
					var obj_img = toggler.getChildren().getChildren().getLast().getFirst().getLast().getFirst();
					//var obj_img = toggler.getParent().getParent().getPrevious().getFirst();
                    if(obj_img.src && obj_img.src.indexOf("bg-products-") >= 0){
						var filename = obj_img.src.substr(obj_img.src.indexOf("bg-products-"),obj_img.src.length);
						var localeCheck = filename.charAt(14);
						var locale = filename.substr(12,2);

						if(obj_img.src.indexOf("green") >= 0) {
							if (localeCheck == "-") {
								obj_img.src = image_folder + "/bg-products-" + locale + "-view-green.gif";
							}
							else {
								obj_img.src = image_folder + "/bg-products-view-green.gif";
							}
						}
						else if(obj_img.src.indexOf("orange") >= 0) {
							if (localeCheck == "-") {
								obj_img.src = image_folder + "/bg-products-" + locale + "-view-orange.gif";
							}
							else {
								obj_img.src = image_folder + "/bg-products-view-orange.gif";
							}
						}
						else if(obj_img.src.indexOf("blue") >= 0) {
							if (localeCheck == "-") {
								obj_img.src = image_folder + "/bg-products-" + locale + "-view-blue.gif";
							}
							else {
								obj_img.src = image_folder + "/bg-products-view-blue.gif";
							}
						}
						else if(obj_img.src.indexOf("brown") >= 0) {
							if (localeCheck == "-") {
								obj_img.src = image_folder + "/bg-products-" + locale + "-view-brown.gif";
							}
							else {
								obj_img.src = image_folder + "/bg-products-view-brown.gif";
							}
						}
                    }                
                }
            }); 
	    
		} else {
			window[obj_name] = new Accordion(togg, stre, {
				'opacity': true,
				'alwaysHide': true,
				'show': -1,			
				'start': false,
				'transition': Fx.Transitions.Quad.easeOut,
				onActive: function(toggler){
					var obj_img = toggler.getPrevious().getChildren().getChildren().getLast().getFirst().getLast().getFirst();
					//var obj_img = toggler.getParent().getPrevious().getFirst();
					if(obj_img.src && obj_img.src.indexOf("bg-products-") >= 0){
						var filename = obj_img.src.substr(obj_img.src.indexOf("bg-products-"),obj_img.src.length);
						var localeCheck = filename.charAt(14);
						var locale = filename.substr(12,2);

						if(obj_img.src.indexOf("green") >= 0) {
							if (localeCheck == "-") {
								obj_img.src = image_folder + "/bg-products-" + locale + "-hide-green.gif";
							}
							else {
								obj_img.src = image_folder + "/bg-products-hide-green.gif";
							}
						}
						else if(obj_img.src.indexOf("orange") >= 0) {
							if (localeCheck == "-") {
								obj_img.src = image_folder + "/bg-products-" + locale + "-hide-orange.gif";
							}
							else {
								obj_img.src = image_folder + "/bg-products-hide-orange.gif";
							}
						}
						else if(obj_img.src.indexOf("blue") >= 0) {
							if (localeCheck == "-") {
								obj_img.src = image_folder + "/bg-products-" + locale + "-hide-blue.gif";
							}
							else {
								obj_img.src = image_folder + "/bg-products-hide-blue.gif";
							}
						}
						else if(obj_img.src.indexOf("brown") >= 0) {
							if (localeCheck == "-") {
								obj_img.src = image_folder + "/bg-products-" + locale + "-hide-brown.gif";
							}
							else {
								obj_img.src = image_folder + "/bg-products-hide-brown.gif";
							}
						}
					}				
				},
				onBackground: function(toggler){
					var obj_img = toggler.getPrevious().getChildren().getChildren().getLast().getFirst().getLast().getFirst();
					//var obj_img = toggler.getParent().getPrevious().getFirst();
					if(obj_img.src && obj_img.src.indexOf("bg-products-") >= 0){
						var filename = obj_img.src.substr(obj_img.src.indexOf("bg-products-"),obj_img.src.length);
						var localeCheck = filename.charAt(14);
						var locale = filename.substr(12,2);

						if(obj_img.src.indexOf("green") >= 0) {
							if (localeCheck == "-") {
								obj_img.src = image_folder + "/bg-products-" + locale + "-view-green.gif";
							}
							else {
								obj_img.src = image_folder + "/bg-products-view-green.gif";
							}
						}
						else if(obj_img.src.indexOf("orange") >= 0) {
							if (localeCheck == "-") {
								obj_img.src = image_folder + "/bg-products-" + locale + "-view-orange.gif";
							}
							else {
								obj_img.src = image_folder + "/bg-products-view-orange.gif";
							}
						}
						else if(obj_img.src.indexOf("blue") >= 0) {
							if (localeCheck == "-") {
								obj_img.src = image_folder + "/bg-products-" + locale + "-view-blue.gif";
							}
							else {
								obj_img.src = image_folder + "/bg-products-view-blue.gif";
							}
						}
						else if(obj_img.src.indexOf("brown") >= 0) {
							if (localeCheck == "-") {
								obj_img.src = image_folder + "/bg-products-" + locale + "-view-brown.gif";
							}
							else {
								obj_img.src = image_folder + "/bg-products-view-brown.gif";
							}
						}
					}				
				}
			});	
		}
	}

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
function getAnchorPosition(anchorname) {
	// This function will return an Object with x and y properties
	var useWindow=false;
	var coordinates=new Object();
	var x=0,y=0;
	// Browser capability sniffing
	var use_gebi=false, use_css=false, use_layers=false;
	if (document.getElementById) { use_gebi=true; }
	else if (document.all) { use_css=true; }
	else if (document.layers) { use_layers=true; }
	// Logic to find position
 	if (use_gebi && document.all) {
		x=AnchorPosition_getPageOffsetLeft(document.all[anchorname]);
		y=AnchorPosition_getPageOffsetTop(document.all[anchorname]);
		}
	else if (use_gebi) {
		var o=document.getElementById(anchorname);
		x=AnchorPosition_getPageOffsetLeft(o);
		y=AnchorPosition_getPageOffsetTop(o);
		}
 	else if (use_css) {
		x=AnchorPosition_getPageOffsetLeft(document.all[anchorname]);
		y=AnchorPosition_getPageOffsetTop(document.all[anchorname]);
		}
	else if (use_layers) {
		var found=0;
		for (var i=0; i<document.anchors.length; i++) {
			if (document.anchors[i].name==anchorname) { found=1; break; }
			}
		if (found==0) {
			coordinates.x=0; coordinates.y=0; return coordinates;
			}
		x=document.anchors[i].x;
		y=document.anchors[i].y;
		}
	else {
		coordinates.x=0; coordinates.y=0; return coordinates;
		}
	coordinates.x=x;
	coordinates.y=y;
	return coordinates;
	}


// Functions for IE to get position of an object
function AnchorPosition_getPageOffsetLeft (el) {
	var ol=el.offsetLeft;
	while ((el=el.offsetParent) != null) { ol += el.offsetLeft; }
	return ol;
	}
	
function AnchorPosition_getWindowOffsetLeft (el) {
	return AnchorPosition_getPageOffsetLeft(el)-document.body.scrollLeft;
	}	
	
function AnchorPosition_getPageOffsetTop (el) {
	var ot=el.offsetTop;
	while((el=el.offsetParent) != null) { ot += el.offsetTop; }
	return ot;
	}
	
function AnchorPosition_getWindowOffsetTop (el) {
	return AnchorPosition_getPageOffsetTop(el)-document.body.scrollTop;
	}
 

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////	
	window.addEvent('load', function(){
		
		//initialization of togglers effects
		togglers.each(function(toggler, i){
			toggler.$tmp.fx = new Fx.Style(toggler, 'background-color', {'wait': false, 'transition': Fx.Transitions.Quart.easeOut});
		});
		
		togglers_2.each(function(toggler, i){
            toggler.$tmp.fx = new Fx.Style(toggler, 'background-color', {'wait': false, 'transition': Fx.Transitions.Quart.easeOut});
        });
        
        togglers_3.each(function(toggler, i){
            toggler.$tmp.fx = new Fx.Style(toggler, 'background-color', {'wait': false, 'transition': Fx.Transitions.Quart.easeOut});
        });

		togglers_1.each(function(toggler, i){
			toggler.$tmp.fx = new Fx.Style(toggler, 'background-color', {'wait': false, 'transition': Fx.Transitions.Quart.easeOut});
		});
		
		a_togglers.each(function(toggler, i){
			toggler.$tmp.fx = new Fx.Style(toggler, 'background-color', {'wait': false, 'transition': Fx.Transitions.Quart.easeOut});
		});
		
    
		function expandCollapse(){
			//expand all

			g_Accordion = new NewAccordion('a.g_toggler', 'div#techspecs div.accordion ', {
				is_open: false,
				show:-1,
				//start: 'all-closed',
				onActive: function(toggler){
					var objs = $$('div#techspecs img.togg_img');
					for (var i =0; i < objs.length; i++) {
						var obj_img = objs[i];
						if(obj_img && obj_img.src && obj_img.src.indexOf("bg-products-") >= 0){
							var filename = obj_img.src.substr(obj_img.src.indexOf("bg-products-"),obj_img.src.length);
							var localeCheck = filename.charAt(14);
							var locale = filename.substr(12,2);

							if(obj_img.src.indexOf("green") >= 0) {
								if (localeCheck == "-") {
									obj_img.src = image_folder + "/bg-products-" + locale + "-hide-green.gif";
								}
								else {
								obj_img.src = image_folder + "/bg-products-hide-green.gif";
								}
							}
							else if(obj_img.src.indexOf("orange") >= 0) {
								if (localeCheck == "-") {
									obj_img.src = image_folder + "/bg-products-" + locale + "-hide-orange.gif";
								}
								else {
									obj_img.src = image_folder + "/bg-products-hide-orange.gif";
								}
							}
							else if(obj_img.src.indexOf("blue") >= 0) {
								if (localeCheck == "-") {
									obj_img.src = image_folder + "/bg-products-" + locale + "-hide-blue.gif";
								}
								else {
									obj_img.src = image_folder + "/bg-products-hide-blue.gif";
								}
							}
							else if(obj_img.src.indexOf("brown") >= 0) {
								if (localeCheck == "-") {
									obj_img.src = image_folder + "/bg-products-" + locale + "-hide-brown.gif";
								}
								else {
									obj_img.src = image_folder + "/bg-products-hide-brown.gif";
								}
							}
						}
					}					
				},
				onBackground: function(toggler){
					var objs = $$('div#techspecs img.togg_img');
					for (var i =0; i < objs.length; i++) {
						var obj_img = objs[i];
						if(obj_img && obj_img.src && obj_img.src.indexOf("bg-products-") >= 0){
							var filename = obj_img.src.substr(obj_img.src.indexOf("bg-products-"),obj_img.src.length);
							var localeCheck = filename.charAt(14);
							var locale = filename.substr(12,2);

							if(obj_img.src.indexOf("green") >= 0) {
								if (localeCheck == "-") {
									obj_img.src = image_folder + "/bg-products-" + locale + "-view-green.gif";
								}
								else {
									obj_img.src = image_folder + "/bg-products-view-green.gif";
								}
							}
							else if(obj_img.src.indexOf("orange") >= 0) {
								if (localeCheck == "-") {
									obj_img.src = image_folder + "/bg-products-" + locale + "-view-orange.gif";
								}
								else {
									obj_img.src = image_folder + "/bg-products-view-orange.gif";
								}
							}
							else if(obj_img.src.indexOf("blue") >= 0) {
								if (localeCheck == "-") {
									obj_img.src = image_folder + "/bg-products-" + locale + "-view-blue.gif";
								}
								else {
									obj_img.src = image_folder + "/bg-products-view-blue.gif";
								}
							}
							else if(obj_img.src.indexOf("brown") >= 0) {
								if (localeCheck == "-") {
									obj_img.src = image_folder + "/bg-products-" + locale + "-view-brown.gif";
								}
								else {
									obj_img.src = image_folder + "/bg-products-view-brown.gif";
								}
							}
						}
					}					
				}
			});
			
			/*$$('a.g_toggler')[0].addEvent('click', function(){
				if (! this.is_open){
					g_Accordion.showAll();	
					this.is_open = true;
				} else {
					g_Accordion.hideAll();
					this.is_open = false;
				}
			});*/
			
		}
		
		expandCollapse();
	    
		//the accordion
		addAccordion($$('div#techspecs img.togg_img'), $$('div#techspecs div.accordion '), 'img', 'acc1'); 			//spec-open/closed graphic
		addAccordion($$('div#techspecs h3.toggler'), $$('div#techspecs div.accordion '), 'h3', 'acc2');				//h3 header - product category links 
		addAccordion($$('div#techspecs img.togg_img2'), $$('div#techspecs div.accordion '), 'img', 'acc3');			//category product image
		addAccordion($$('div#techspecs table.togg_table'), $$('div#techspecs div.accordion '), 'table', 'acc4');	//category text

		//For Gas Spec
		//addAccordion($$('div#gas_specs img.togg_img'), $$('div#gas_specs div.accordion '), 'img', 'acc3');
		//addAccordion($$('div#gas_specs h3.toggler'), $$('div#gas_specs div.accordion '), 'h3', 'acc4');
		
		//open the accordion section relative to the url
		/*var found = 0;
		$$('h3.toggler a').each(function(link, i){
			if (window.location.hash.test(link.hash)) found = i;
		});
		acc1.display(found);
		acc2.display(found);
		*/
//		acc3.display(found);
//		acc4.display(found);

        var url= new String(window.location);

        var prodAplic= url.indexOf('applications');
        
        if (prodAplic!=-1)
        	{p= $get("i",window.location)}
        else
        	{p= $get("p",window.location)}
        
        //all products //expand a category when needed on URL
        if(p!="")
        {
            //alert(1);
            g_Accordion.hideAll();
            g_Accordion.display(p);
            acc1.display(p);
            acc2.display(p);
            acc3.display(p);
            acc4.display(p);
            //alert($get("p",window.location));

            var anchor = getAnchorPosition(p);        
            //alert(anchor.x);
            //alert(anchor.y);
            
            window.scrollTo(anchor.x,anchor.y);
        }
        else
        {
            g_Accordion.hideAll();
        }
            
        
	});
	
 function $get(key,url){  
     if(arguments.length < 2) url =location.href;  
     if(arguments.length > 0 && key != ""){  
         if(key == "#"){  
             var regex = new RegExp("[#]([^$]*)");  
         } else if(key == "?"){  
             var regex = new RegExp("[?]([^#$]*)");  
         } else {  
            var regex = new RegExp("[?&]"+key+"=([^&#]*)");  
         }  
         var results = regex.exec(url);  
        return (results == null )? "" : results[1];  
     } else {  
         url = url.split("?");  
         var results = {};  
             if(url.length > 1){  
                url = url[1].split("#");  
                 if(url.length > 1) results["hash"] = url[1];  
                 url[0].split("&").each(function(item,index){  
                     item = item.split("=");  
                     results[item[0]] = item[1];  
                 });  
             }  
         return results;  
     }  
 }  
 
 