/*
 * Custom JS v 1.0
 * Makes use of jQuery 1.2.6
*/

// Write in the CSS file to control load flicker
document.write('<link href="/static/c/skins/btcom/css/has_js.css" media="screen" type="text/css" rel="stylesheet" />');


if ( typeof DK == 'undefined' ) { self.DK = {}; }

DK= {
	dropDownPanels:function(){
		DK.dropDownPanels.isOpen = false;						

		$('<a href="#" class="dropdown1" title="Open">Open</a>').appendTo($(".hasDropDown"));
		var ddPanels=$(".hasDropDown .dropdown1");
		
		for (i = 0, j = ddPanels.length; i < j; i++) {
			ddLink = $(ddPanels[i].parentNode);
			ddWindow = $('<div class="ddWindow"></div>').appendTo($("body"));
	
			$(ddPanels[i]).click(function(){
				$(ddWindow).html($("#footerContainer").html());
				var bgPanel = $("#bgPanel");

				this.className = "close";
				this.title = "Close";
				this.innerHTML = "Close";
				if(ddLink.className != "selected")
					ddLink.addClass("openedDropDown");
				
				$('#primeNav li').css({borderBottom:"1px solid #cccccc"});
				$('#primeNav li.openedDropDown').css({borderBottom:"1px solid white"});
						
				var ddClose = $(".close", ddWindow);
				
				var closeFn = function(){
					var thisObj = $('.close',$('.hasDropDown')).get(0)
					thisObj.className = "dropdown1";
					thisObj.innerHTML = "Open";
					thisObj.title = "Open";

					ddLink.removeClass("openedDropDown");
		
					ddWindow.css({ display: "none" });
					ddLink.css({ zIndex: 0 });
					bgPanel.css({ display: "none" });
					DK.dropDownPanels.isOpen = false;
					$('#primeNav li').css({borderBottom:"none"});
				}

				if (DK.dropDownPanels.isOpen) {
					closeFn();
					return false;
				} 
				else {
					DK.dropDownPanels.isOpen = true;
					ddClose.click(closeFn);
					bgPanel.click(closeFn);
					
					var topOffset = this.offsetTop + this.offsetHeight + 1;
					var leftOffset = this.offsetLeft;
					var refX = $("#mainContentArea").get(0).offsetLeft - 6; //-6 because of shadow image
					var refY = $("#mainContentArea").get(0).offsetTop;
					
					ddWindow.css({ display: "block", zIndex: 100, position: "absolute", left: refX, top: refY});
					
					DK.dropDownPanels.setUpDD(this, bgPanel);
				}

				return false;
			});
		}

		DK.dropDownPanels.setUpDD = function(ddLink, bgPanel){
			//$(ddLink).css({zIndex: 2});
			// calculate the height of the page
			ddLink = ddLink.parentNode.parentNode
			var pageHeight = $("#contentAreas").get(0).offsetHeight;
			var topOffset = ddLink.offsetTop + ddLink.offsetHeight + 1;

			bgPanel.css({height: pageHeight - topOffset + "px", top: topOffset + 'px', display: "block", opacity: "0.5", zIndex: 99 });
			
		}							
	}
}

function addEvent(element, ev_type, fn) {
	if (element.addEventListener) {
		element.addEventListener(ev_type, fn, false);
        return true;
    } else if (element.attachEvent) {
	    // this is the key line for IE. Any function attached here will not be able to make
	    // use of 'this'. This is a design flaw in MSFTs attachEvent function.
        var r = element.attachEvent('on' + ev_type, fn);
        return r;
    } else {
        element['on' + ev_type] = fn;
    }
}

function addHoverToInputImage(){
	$("input.hasRollOver").hover (
		function(){
			$(this).addClass('hover');
		},
		function(){
			$(this).removeClass('hover');
		}
	);
}



addEvent(window, 'load', function(){
	DK.dropDownPanels();
	addHoverToInputImage();
});

