var miniCarousel = {
	init: function(){
		var div_id = "brandCarousel";
		if (!$(div_id)) return;
		var fo = new FlashObject(staticRoot + "swf/mini_carousel.swf", div_id + "_movie", '471', '271', '8', '#FFFFFF');
		fo.addParam("menu", false);
		fo.addParam("allowScriptAccess", "always");
		if(typeof xmlMiniCarousel != "undefined")
			fo.addVariable("xml_url", xmlMiniCarousel);
		//fo.addVariable("accent_colour", "#FF0000");
		//fo.addVariable("accent_colour", colorpicker.getStoredColour());
		fo.write(div_id);
	}
}

var superCarousel = {
	overlayHTMLObject: "",
	init: function() {
		var div_id = "flash_enhancement";
		var div_obj = $(div_id);
		if(div_obj != null) {
			var fallback_id = "flash_fallback";
			var header_id = "header";
			//var root = (staticRoot.indexOf("https")==0 ? "http" + staticRoot.substr(5) : staticRoot);
			
			var root = staticRoot;
			var fo = new FlashObject(root+"swf/usc_super_carousel.swf", div_id + "_movie", '960', '576', '8', '#ffffff');
			//var fo = new FlashObject("http://usc.scene7.com/e2/usc/Videos/usc_super_carousel.swf", div_id + "_movie", '960', '576', '8', '#ffffff');
			fo.addParam("WMODE", "opaque");
			fo.addParam("AllowScriptAccess", "always");
			fo.addVariable("xml_url",xmlSuperCarousel);

			fo.addVariable("currentcarouselid", "Promo_01");			
			//fo.addVariable("currentcarouselid", this.getParameter("currentcarouselid"));
			
			fo.addVariable("show_header_bg_fn", "header.showHeaderFromFlash");
			//fo.addVariable("show_header_bg_fn", "headerBg.show");
			
			fo.addVariable("close_panel_fn", "superCarousel.closeOverlay");
			fo.addVariable("show_products_fn", "superCarousel.showProducts");
			//alert("colour:" + colorpicker.getStoredColourClass());
			fo.addVariable("accent_colour", "#333333");
			//fo.addVariable("accent_colour", colorpicker.getStoredColour());

			var fallback_obj = $(fallback_id);
			if(fo.write(div_id)){
				if(fallback_obj != null) {
					fallback_obj.setStyles("position:absolute;top:-9999em;");
					$(header_id).setStyles("position:absolute;top:0;left:0;height:136px;");
				}
			}			
			this.createOverlay();
		}
	},
	getParameter: function(name) {
		var url = document.location.toString();
		var length = name.length+1;
		var pos = url.indexOf(name + "=");
		if(pos == -1) return;
		var end_pos = url.indexOf("&",pos+length);
		if(end_pos == -1) end_pos = url.length;
		return url.substring(pos+length, end_pos);
	},	
	createCloseButton: function() {
		var theanchor = document.createElement("a");
		theanchor.href="#";
		theanchor.className = "close";
		var img = document.createElement("img");
		img.setAttribute("src", staticRoot+"img/btn_closeoverlay.gif");
		img.setAttribute("alt", "Close overlay");
		theanchor.appendChild(img);
		superCarousel.overlayHTMLObject.insertBefore(theanchor, superCarousel.overlayHTMLObject.firstChild);
		theanchor.onclick = this.closeOverlay;
	},
	createOverlay: function() {
		var overlay = document.createElement("div");
		var wrapper = document.getElementById("primary");
		overlay.setAttribute("id", "overlay");
		overlay.className = "clearfix";
		superCarousel.overlayHTMLObject = overlay;
		wrapper.appendChild(superCarousel.overlayHTMLObject);
		superCarousel.overlayHTMLObject.style.display = "none";	
	},	
	showProducts: function(products){
		var url1 = document.forms.carousel_hidden_fields.url_show_overlay.value;
		products = 'pid='+products;
		var ajax = new Ajax(url1, {method: 'get', data: products, onComplete: superCarousel.addResultsToWrapper});
		ajax.request();
		//var ajax = new Ajax('http://dev13.web.ecommera.demandware.net/on/demandware.store/Sites-USC-Site/default/usc_test-carouseloverlay', {method: 'get', data: products, onComplete: superCarousel.addResultsToWrapper}).request();
	},
	addResultsToWrapper: function(results) {
		if (!superCarousel.overlayHTMLObject) {
			superCarousel.overlayHTMLObject.innerHTML = results;
		}
		else {
			superCarousel.closePanel();
			superCarousel.overlayHTMLObject.innerHTML = results;
		}
		var myPsiTabs = new tabset($$("div#productSupportInfo ul.tabNavigation li a"), "myPsigroup", $("psiTab1"), $$("div#productSupportInfo div.tab"));
		superCarousel.createCloseButton();
		superCarousel.overlayHTMLObject.style.display="block";
		superCarousel.overlayHTMLObject.focus();
		TB_init();
	},
	closePanel : function (){
		//this.getMovie().closeOverlay();
		//if (superCarousel.overlayHTMLObject.style.display == "block") {
		//	superCarousel.overlayHTMLObject.style.display = "none";
		//}		
	},
	closeOverlay : function(){
		if (superCarousel.overlayHTMLObject.style.display == "block") {
			superCarousel.overlayHTMLObject.style.display = "none";
		}	
		superCarousel.getMovie().closeOverlay();
	},
	getMovie : function(){
		return document.getElementById("flash_enhancement_movie");
	}
}

var header = {
	headerMaskID: "headerMask", headerMask: "",	header: "",	glowEffect: "",
	init: function(){	
		/*removed USC-1255
		* if (!$("ptStoreFront") && !$("ptProductDetails") ) return;
		*/
		var $ = document.id;
		if ($("ptCheckOut")) return;
		if (!$(this.headerMaskID)) return;
		this.headerMask = $(this.headerMaskID);
		this.header = $("header");
		if (header.detectMacXFF()) {
			this.headerMask.set('opacity', 1);
			this.headerMask.style.backgroundImage = "url("+ staticRoot + "img/bg_header_whitetransparent.png)";
			this.headerMask.style.backgroundRepeat ="repeat";
			this.headerMask.style.backgroundColor ="transparent";
		}
		else {
			this.glowEffect = new Fx.Tween(this.headerMask, {transition : Fx.Transitions.linear, property: 'opacity', duration : 600, wait : false, fps : 25 });
			this.glowEffect.set(0.6);
			this.header.addEvent('mouseenter', this.showOpaque);
			this.header.addEvent('mouseleave', this.fadeOut);		
		}
	},
	showOpaque: function(){
		var $ = document.id;
		header.glowEffect.cancel();
		header.glowEffect.set(0);	
	},
	fadeOut: function(){
		var $ = document.id;
		header.glowEffect.start(0.6);
	},
	showHeaderFromFlash: function(){
		var $ = document.id;
		if (!(header.detectMacXFF())) {
			this.showOpaque();
			this.fadeOut();
		}
	},
	/*This function is a browser sniffer (yes I know this is bad and I am going to hell) to detect Firefox on the Mac.
	 * There is a bug which affects firefox on the mac where flash movies with wmode="transparent" under a semi-transparent background do not appear at all. 
	 */
	detectMacXFF: function() {
		var $ = document.id;
		var userAgent = navigator.userAgent.toLowerCase();
		if (userAgent.indexOf('mac') != -1 && userAgent.indexOf('firefox') != -1) {
	  		return true;
		}
	}
}

window.addEvent('domready', function(){
	var $ = document.id;
//	superCarousel.init();
	miniCarousel.init();
	header.init();
});

