// Amazon Scroller
var amazonScroller = new Object;

amazonScroller.init = function(scrollerId) {
	scrollerItem = $ui("#" + scrollerId + " .item");
	scrollerItems = $ui("#" + scrollerId + " .items");

	sizeOfItems = scrollerItem.length;
	itemsWidth = parseInt(scrollerItems.css("width"));
	itemWidth = parseInt(scrollerItem.css("width"));
	barrier = ( ( ( sizeOfItems / 5 ) - 1 ) * itemsWidth );
	barrier = -barrier;
	scrollerItems.css("width",(sizeOfItems*itemWidth) + "px");
}

amazonScroller.scroller = {

	scroll: function(count) {

        leftPos = parseInt(scrollerItems.css("left"));
		leftPos = leftPos + (count*itemWidth);

		if(leftPos <=0 && leftPos>=barrier) {
			//Todo: Change path and filename of images!
			if(leftPos == barrier) {
				$ui(".scroll-right").attr("src", "//static.gmx.net/current/de/images/whitelabel/amazon/icon-right-inactive.gif");
			} else {
				$ui(".scroll-right").attr("src", "//static.gmx.net/current/de/images/whitelabel/amazon/icon-right.gif");
			}

			if(leftPos == 0) {
				$ui(".scroll-left").attr("src", "//static.gmx.net/current/de/images/whitelabel/amazon/icon-left-inactive.gif");
			} else {
				$ui(".scroll-left").attr("src", "//static.gmx.net/current/de/images/whitelabel/amazon/icon-left.gif");
			}


			scrollerItems.animate({
				left: leftPos
			}, 1500);
		}
	}
}


/* #temporarily */
function amazonScrollerHP() {

	this.init = function(hPscrollerId) {

		var hPscrollerItem = $ui("#slider-" + hPscrollerId + " .item");
		var hPscrollerItems = $ui("#slider-" + hPscrollerId + " .items");

		this.hPsizeOfItems = $ui("#slider-" + hPscrollerId + " .item").length;
		var tmphPsizeOfItems = this.hPsizeOfItems/5;
		tmphPsizeOfItems = tmphPsizeOfItems.toString().indexOf(".");
		if(this.hPsizeOfItems > 5) {
			$ui("#scroll-right-" + hPscrollerId).attr("src", "//static.gmx.net/current/de/images/whitelabel/amazon/icon-right.gif");
		}

		var hPitemsWidth = parseInt($ui("#slider-" + hPscrollerId + " .items").css("width"));
		var hPitemWidth = parseInt($ui("#slider-" + hPscrollerId + " .item").css("width"));
		this.hPitemWidth = hPitemWidth;

		var hPbarrier = ( ( ( this.hPsizeOfItems / 5 ) - 1 ) * hPitemsWidth );
		if (tmphPsizeOfItems == 1) {
			this.hPbarrier = -570;
		} else {
			this.hPbarrier = parseInt(-hPbarrier);
		}

		$ui("#slider-" + hPscrollerId + " .items").css("width",(this.hPsizeOfItems*hPitemWidth) + "px");
	};

	this.scroll = function(hPscroller, hPcount) {

		var hPrightImage = $ui("#scroll-right-" + hPscroller);
		var hPleftImage = $ui("#scroll-left-" + hPscroller);

		var hPleftPos = parseInt($ui("#slider-" + hPscroller + " .items").css("left"));
		hPleftPos = parseInt(hPleftPos + (hPcount*this.hPitemWidth));

		if(this.hPsizeOfItems >5 && hPleftPos <=0 && hPleftPos>=this.hPbarrier) {
			if(hPleftPos == this.hPbarrier) {
				hPrightImage.attr("src", "//static.gmx.net/current/de/images/whitelabel/amazon/icon-right-inactive.gif");
			} else {
				hPrightImage.attr("src", "//static.gmx.net/current/de/images/whitelabel/amazon/icon-right.gif");
			}

			if(hPleftPos == 0) {
				hPleftImage.attr("src", "//static.gmx.net/current/de/images/whitelabel/amazon/icon-left-inactive.gif");
			} else {
				hPleftImage.attr("src", "//static.gmx.net/current/de/images/whitelabel/amazon/icon-left.gif");
			}


			$ui("#slider-" + hPscroller + " .items").animate({
				left: hPleftPos
			}, 1500);
		}
	};

}


var amazonPlayer = new Object;


amazonPlayer.init = function() {
	var asins = new Array();

	$ui(".playerbtn").each(function(i){

		var playerBtn = $ui(".playerbtn");

		playerBtn.bind("mouseover", function() {
			$ui(this).attr("src", "//static.gmx.net/current/de/images/whitelabel/amazon/img-play-over.gif");
		});

		//mouseout
		playerBtn.bind("mouseout", function() {
			$ui(this).attr("src", "//static.gmx.net/current/de/images/whitelabel/amazon/img-play.gif");
		});

		//click
		playerBtn.bind("click", function() {
			amazonPlayer.player.statusChange(this.id, 'isLoading');
			amazonPlayer.player.play(this.id);
		});

	 });
}

amazonPlayer.player = {

	getFlashMovie: function(movieName) {
		var isIE = navigator.appName.indexOf("Microsoft") != -1;
		var isOpera = navigator.appName.indexOf("Opera") != -1;
		return (isIE || isOpera) ? window[movieName] : document[movieName];
	},

	statusChange: function(id, status) {
		var handleBtn = $ui("#" + id);
		$ui(".playerbtn").attr("src", "//static.gmx.net/current/de/images/whitelabel/amazon/img-play.gif");
		switch(status) {
			case 'isPlaying':
					handleBtn.attr("src", "//static.gmx.net/current/de/images/whitelabel/amazon/img-pause.gif");
					handleBtn.unbind();
					handleBtn.bind("click", function() {
						amazonPlayer.player.stop(id);
					});
			break;
			case 'isStopped':
					handleBtn.attr("src", "//static.gmx.net/current/de/images/whitelabel/amazon/img-play.gif");
					handleBtn.unbind();
					handleBtn.bind("click", function() {
						amazonPlayer.player.play(id);
					});
			break;
			case 'isLoading':
					handleBtn.attr("src", "//static.gmx.net/current/de/images/whitelabel/amazon/img-loading.gif");
			break;
		}
	},

	play: function(idToPlay) {

		var handleBtn = $ui("#" + idToPlay);

		$ui(".playerbtn").each(function(i){
			amazonPlayer.player.stop(this.id);
			$ui(this).attr("src", "//static.gmx.net/current/de/images/whitelabel/amazon/img-play.gif");
		});

		handleBtn.unbind();
		handleBtn.bind("click", function() {
			amazonPlayer.player.stop(this.id);
		});

		if(this.getFlashMovie("amazonmp3player")) {
			idToPlay = parseInt(idToPlay);
			this.getFlashMovie("amazonmp3player").playnr(idToPlay);
		}


	},

	stop: function(idToStop) {

		idToStopBtn = $ui("#" + idToStop);

		idToStopBtn.attr("src", "//static.gmx.net/current/de/images/whitelabel/amazon/img-play.gif");

		//mouseover
		idToStopBtn.bind("mouseover", function() {
			$ui(this).attr("src", "//static.gmx.net/current/de/images/whitelabel/amazon/img-play-over.gif");
		});

		//mouseout
		idToStopBtn.bind("mouseout", function() {
			$ui(this).attr("src", "//static.gmx.net/current/de/images/whitelabel/amazon/img-play.gif");
		});

		idToStopBtn.bind("click", function() {
			amazonPlayer.player.play(idToStop);
		});

		if(this.getFlashMovie("amazonmp3player")) {
			this.getFlashMovie("amazonmp3player").stoptrack();
		}
	}

}


//New Releases Tabswitcher
function activateNRTab(tabId, maxTabs) {
	for(var i=0; i<=maxTabs; i++) {
		$ui("#nrcnt-" + i).css("display", "none");
		$ui("#nrtab-" + i).removeClass("on");
	}
	$ui("#nrcnt-" + tabId).css("display", "block");
	if(tabId==maxTabs) {
		$ui("#nrtab-" + tabId).addClass("on last");
	} else {
		$ui("#nrtab-" + tabId).addClass("on");
	}

}

//Add item to Basket
function addToCart(cartItemAsin, serviceUrl) {
	// Ajax Request to put asin into cart
	$ui.ajax({
		type: "GET",
		async: true,
		url: serviceUrl, //Service?
		dataType: "json",
		data: "asin=" + cartItemAsin,
		success: function(jsonData){
			//show the user, that the action was successful -> change image
			var countItems = jsonData.amazonShopJson.cartItemsCount;
			$ui("#cartcount").html("(" + countItems + ")");
			$ui("#tocart-" + cartItemAsin ).attr("src", "//static.gmx.net/current/de/images/whitelabel/amazon/btn-nowincart.gif");
		}
	});
}



// Show/hide more text
function showHideMoreText(textIfNotShown, textIfShown) {
	$ui('.additional-information').toggleClass("off");
	$ui('.product-information').toggleClass('reduce');
	if($ui('.additional-information').hasClass("off")) { // Text ausgeblendet
		$ui('.product-information').text(textIfNotShown);
	} else {
		$ui('.product-information').text(textIfShown);
	}
	$ui('.product-information').blur();

}
