var brandSelector = {
	init: function() {
		if (!document.getElementById) return;
		if (!document.getElementById("allBrands")) return;
		this.allBrands = document.getElementById("allBrands");
		this.allBrands.style.display = "none";
		var li;
	
		this.setupAllLinkAnchors();
		this.setupBrandLetterLinks();
		
		this.allBrandsInner = document.getElementById("allBrandsInner");
		this.brandByLetter = document.getElementById("brandByLetter");
		this.allBrandsInner.insertBefore(this.createHideLink(),this.brandByLetter);
	},
	setupBrandLetterLinks: function() {
		var letterLinks = $$("#brandByLetter li a");
		for (var i=0; i < letterLinks.length; i++) {
			letterLinks[i].onclick = this.brandLetterClick;
		}
	},
	brandLetterClick: function() {
		brandSelector.resetBrandLetterStyling();
		$(this).addClass("selected");
		//jah(brandOverviewUri+this.firstChild.nodeValue, "brandResults");
		/*var myJah = new Ajax(brandOverviewUri+this.firstChild.nodeValue, {
			method: 'get',
			update: $("brandResults")
		}).request();*/
		var myJah = new Request({
        	url: brandOverviewUri+this.firstChild.nodeValue,
        	method: 'get',
        	update: $("brandResults")
    	}).send();
		return false;
	},
	resetBrandLetterStyling: function() {
		var letterLinks = $$("#brandByLetter li a");
		for (var i=0; i < letterLinks.length; i++) {
			$(letterLinks[i]).removeClass("selected");
		}
	},
	setupAllLinkAnchors: function() {
		var viewAllLinks = $$("a.viewAllBrands");
		for (var i=0; i < viewAllLinks.length; i++) {
			var type = 0;
			var classNames = viewAllLinks[i].className.split("|");
			for (var j=0; j < classNames.length; j++) {
				if (classNames[j].indexOf("type=") >= 0) {
					type = (classNames[j].split("=")[1] + "").trim();
					break;
				}				
			}
			viewAllLinks[i].thetype = type;
			viewAllLinks[i].bindObj = this;
			viewAllLinks[i].onclick = this.showAllBrands;
		}
	},	
	createHideLink: function() {
		var p = document.createElement("p");
		p.className = "hide";
		this.hideLink = document.createElement("a");
		this.hideLink.href= "#";
		var img = document.createElement("img");
		img.src= staticRoot+"/img/btn_hide.png";
		this.hideLink.appendChild(img);
		this.hideLink.bindObj = this;
		this.hideLink.onclick = this.hideAllBrands;
		p.appendChild(this.hideLink);
		return p;
	},
	hideAllBrands: function() {
		this.bindObj.allBrands.style.display = "none";
		$(li).removeClass("showingAllBrands");
		$(li).removeProperty("style");
		return false;
	},
	showAllBrands: function() {
		document.body.appendChild(this.bindObj.allBrands);
		var positions = BWCC.getAbsolutePosition(this);
		
		li = this.parentNode;
		$(li).addClass("showingAllBrands");
		
		li.style.paddingRight = brandSelector.typeInformation[this.thetype].paddingRight+"px";
		li.style.minHeight = brandSelector.typeInformation[this.thetype].minHeight+"px";
		li.style.marginBottom = brandSelector.typeInformation[this.thetype].marginBottom+"px";
		$(li).setStyles({background: brandSelector.typeInformation[this.thetype].bg});
		
		this.bindObj.allBrands.style.display = "block";
		this.bindObj.allBrands.style.position = "absolute";
		this.bindObj.allBrands.style.left = (positions.left+brandSelector.typeInformation[this.thetype].allBrandsOffsetLeft)+"px";
		this.bindObj.allBrands.style.top = (positions.top+brandSelector.typeInformation[this.thetype].allBrandsOffsetTop)+"px";
		
		return false;
	}
}

brandSelector.typeInformation = {
	"1": {
		allBrandsOffsetLeft: 172,
		allBrandsOffsetTop: -50,
		viewLinkReplacementLeft: -20 ,
		viewLinkReplacementTop: -6,
		bg: "url("+staticRoot+"/img/bg_viewallbrands2.gif) no-repeat left top",
		paddingRight: "46",
		minHeight: 22,
		marginBottom: -11
	},
	"2": {
		allBrandsOffsetLeft: -495,
		allBrandsOffsetTop: 18,
		viewLinkReplacementLeft: -20 ,
		viewLinkReplacementTop: -6,
		bg: "url("+staticRoot+"/img/bg_viewallbrands.gif) no-repeat left top",
		paddingRight: "12",
		minHeight: 28,
		marginBottom: 0
	}
}

window.addEvent('domready', function(){
	brandSelector.init();	
});
