function INITProductView(){
	if (document.getElementById("thumbnails")) {
		var O_ThumbNails = document.getElementById("thumbnails").getElementsByTagName("a");
		
		
		for (var i = 0; i < O_ThumbNails.length; i++) { 
	    	O_ThumbNails[i].onclick = function(){
				var O_ThumbNails = document.getElementById("thumbnails").getElementsByTagName("a");
				var O_ImgContainer = document.getElementById("imgContainer");
				var S_Temp = "";
				
				// Replace Image
				document.getElementById("mainimg").src = "";
				S_Temp = O_ImgContainer.innerHTML;
				O_ImgContainer.innerHTML = "";
				O_ImgContainer.innerHTML = S_Temp;
				document.getElementById("mainimg").src = this.getAttribute("href");
				
				SelThumb(this, O_ThumbNails);
	        	return false;
    		}

	    }
	}
	
	if (document.getElementById("content")) {
		
		// Radio Button Events
		var O_ProductOptions = document.getElementById("content").getElementsByTagName("input");
		for (var i = 0; i < O_ProductOptions.length; i++) { 
			if (O_ProductOptions[i].type == "radio") {
				O_ProductOptions[i].onclick = function() {
					SelOption(this.parentNode);
				}
			}
		}
		
		// Form Submit
		var O_ProductForm = document.getElementById("content").getElementsByTagName("form");

		for (var i = 0; i < O_ProductForm.length; i++) { 
    		
	    	O_ProductForm[i].onsubmit = function(){
				var S_OptionID = "";
				var S_ReferenceID = "";
				var S_BundleID = 0;
				
				var O_FormInputs = document.getElementById("content").getElementsByTagName("input");
				for (var z = 0; z < O_FormInputs.length; z++) {
					if (O_FormInputs[z].type == "radio" && O_FormInputs[z].checked == true) {
						S_OptionID = O_FormInputs[z].value;
					}
					
					if (O_FormInputs[z].type == "hidden" && O_FormInputs[z].name == "ReferenceID") {
						S_ReferenceID = O_FormInputs[z].value;
					}
					
					if (O_FormInputs[z].type == "hidden" && O_FormInputs[z].name == "itemid") {
						S_BundleID = O_FormInputs[z].value;
					}
					
					if (O_FormInputs[z].type == "hidden" && O_FormInputs[z].name == "ptype" && O_FormInputs[z].value == "product") {
						S_BundleID = 0;
					}
				}
				
				if (S_OptionID == "") {
					S_OptionID = 0;
					alert("Please select an OPTION");
				} else {
					AddToCart(O_ProductForm, S_OptionID, S_ReferenceID, S_BundleID);
				}
				
				
	        	return false; 	
    		}

	    }
	}
}

function SelThumb(O_Image, O_ThumbNails) {
	for (var i = 0; i < O_ThumbNails.length; i++) {
		O_ThumbNails[i].className = "";
    }
	O_Image.className = "active";
}

function SelOption(O_Option) {
	var O_AllOptions = document.getElementById("content").getElementsByTagName("input");

	for (var i = 0; i < O_AllOptions.length; i++) {
		if (O_AllOptions[i].type == "radio") {
			O_AllOptions[i].parentNode.className = "";
		}
    }
	O_Option.className = "selected";
}

addDOMLoadEvent(INITProductView);

//addDOMLoadEvent(CartAlertFix);

// Preload clear image for switching thumbs	
clear = new Image(); 
clear ="/_site/img/loader.gif";


/* More Items Nav Functions */
var I_ProductPosition = 0;
var I_StartPosition = 0;
var I_ProductPositionMax = 0;
var I_ItemID = 0;
var I_ArtistID = 0;
var I_CategoryID = 0;
var I_ProductPositionMaxHit = 0;
var I_ProductPositionMinHit = 0;
var I_TempPostion = 0;
var I_BtnCheck = 0;
var I_ReferenceID = 0;

var B_InitPrev = false;
var B_InitNext = false;
var B_InitEndItem = false;
var B_ActiveMove = false;
var B_ButtonsOn = true;

var S_Ptype = "product";

var O_RequestNextLeft = createRequestObj();
var O_RequestNextRight = createRequestObj();
var O_RequestPrevLeft = createRequestObj();
var O_RequestPrevRight = createRequestObj();

// Main Item Vars
var O_RequestMainLeft = createRequestObj();
var O_RequestMainRight = createRequestObj();


// Get  Product Ids
function GetProductsInfo() {
	// Load Default Positions and item counts
	if (document.getElementById("itemstart")) {
		I_ProductPosition = parseInt(document.getElementById("itemstart").value);
	}
	
	if (document.getElementById("maxitems")) {
		I_ProductPositionMax = parseInt(document.getElementById("maxitems").value);
	}
	
	if (document.getElementById("itemid")) {
		I_ItemID = parseInt(document.getElementById("itemid").value);
	}
	
	if (document.getElementById("artistid")) {
		I_ArtistID = parseInt(document.getElementById("artistid").value);
	}
	
	if (document.getElementById("cid")) {
		I_CategoryID = parseInt(document.getElementById("cid").value);
	}
	
	if (document.getElementById("sid")) {
		I_ReferenceID = parseInt(document.getElementById("sid").value);
	}
	
	if (document.getElementById("ptype")) {
		S_Ptype = document.getElementById("ptype").value;
	}
	
	
	
	I_StartPosition = I_ProductPosition;
	
	if (I_StartPosition == 0) {
		if (document.getElementById("moveLast")) {
			document.getElementById("moveLast").className = "deactive";
		}
	} else if (I_StartPosition == I_ProductPositionMax) {
		if (document.getElementById("moveNext")) {
			document.getElementById("moveNext").className = "deactive";
		}
	}
	
	I_ProductPositionMaxHit = I_ProductPosition + 1;
	I_ProductPositionMinHit = I_ProductPosition - 1;
	
	loadNavShell_Left();
	loadNavShell_Right();
}

function loadNavShell_Left() {
	O_RequestMainLeft.open("get", "start.asp?id=" + I_ItemID + "&cid=" + I_CategoryID + "&sid=" + I_ReferenceID + "&artist=" + I_ArtistID + "&position=" + (I_ProductPosition - 1) + "&sort=desc&type=" + S_Ptype, true);
	O_RequestMainLeft.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	O_RequestMainLeft.setRequestHeader("Content-length", 0);
	O_RequestMainLeft.onreadystatechange = loadShellLeft;
	O_RequestMainLeft.send("");
}

function loadShellLeft() {
	if (O_RequestMainLeft.readyState == 4) {
		var resContent = O_RequestMainLeft.responseText;
		document.getElementById("back").innerHTML = document.getElementById("back").innerHTML + resContent;
		
		if (document.getElementById("nextItems") && document.getElementById("prevItems") && B_ActiveMove == false) {
			B_ActiveMove = true;
			MoveItemClick();
		}
	}
}

function loadNavShell_Right() {
	O_RequestMainRight.open("get", "start.asp?id=" + I_ItemID + "&cid=" + I_CategoryID + "&sid=" + I_ReferenceID + "&artist=" + I_ArtistID + "&position=" + (I_ProductPosition + 1) + "&sort=asc", true);
	O_RequestMainRight.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	O_RequestMainRight.setRequestHeader("Content-length", 0);
	O_RequestMainRight.onreadystatechange = loadNavShellRight;
	O_RequestMainRight.send("");
}

function loadNavShellRight() {
	if (O_RequestMainRight.readyState == 4) {
		var resContent = O_RequestMainRight.responseText;
		document.getElementById("next").innerHTML = document.getElementById("next").innerHTML + resContent;
		
		if (document.getElementById("nextItems") && document.getElementById("prevItems") && B_ActiveMove == false) {
			B_ActiveMove = true;
			MoveItemClick();
		}
	}
}

addDOMLoadEvent(GetProductsInfo);

// On clicks to move items
function MoveItemClick() {
	
	HideMoreItems();
	
	$("#moveLast").click(function(){
		if (B_ButtonsOn) {
			B_ButtonsOn = false;
			MovePrev();
		} else {
			//alert("BTn DISABLED");
		}
		return false;
	});

	$("#moveNext").click(function(){
		if (B_ButtonsOn) {
			B_ButtonsOn = false;
			MoveNext();
		}
		return false;
	});
	
	// Move Files
	if (document.getElementById("nextItems")) {
		document.getElementById("nextItems").style.left = "-154px";
	}
	
	if (document.getElementById("prevItems")) {
		document.getElementById("prevItems").style.left = "-154px";
	}
	
	// Start
	ExpandItemsWidth();
	
	
	loadPrevItemsLeft();
	loadPrevItemsRight();
	
	loadNextItemsLeft();
	loadNextItemsRight();
	
}

function ShowMoreItems() {
	
	// Enable nextSlider backSlider
	if (document.getElementById("nextSlider")) {
		document.getElementById("nextSlider").style.visibility = "visible";
	}
	
	if (document.getElementById("backSlider")) {
		document.getElementById("backSlider").style.visibility = "visible";
	}
}

function HideMoreItems() {
	
	// Enable nextSlider backSlider
	if (document.getElementById("nextSlider")) {
		document.getElementById("nextSlider").style.visibility = "hidden";
	}
	
	if (document.getElementById("backSlider")) {
		document.getElementById("backSlider").style.visibility = "hidden";
	}
}

function ExpandItemsWidth() {
	if (document.getElementById("nextItems")) {
		document.getElementById("nextItems").style.width = (154*(I_ProductPositionMax+2))+"px";
	}
	
	if (document.getElementById("prevItems")) {
		document.getElementById("prevItems").style.width = (154*(I_ProductPositionMax+2))+"px";
	}
}

function MovePrev() {
	
	//alert("prv " + (I_ProductPosition - 1));
	if ((I_ProductPosition - 1) == 0) {
		if (document.getElementById("moveLast")) {
			document.getElementById("moveLast").className = "deactive";
		}
		//alert(document.getElementById("moveNext").className);
		if (document.getElementById("moveNext")) {
			if (document.getElementById("moveNext").className == "deactive") {
				document.getElementById("moveNext").className = "";
			}
		}
	} else {
		if (document.getElementById("moveNext")) {
			if (document.getElementById("moveNext").className == "deactive") {
				document.getElementById("moveNext").className = "";
			}
		}
	}
	
	
	if ((I_ProductPosition - 1) == -1) {
		// DO NOTTHING FIRST ITEM 
		B_ButtonsOn = true;
	} else if ((I_ProductPosition - 1) >= I_ProductPositionMinHit) {
		// DO NOTTHING Item Already loaded
		MovePrevCount();
		$(".move").animate({"left": "+=154px"}, "slow");
		/*$(".move").queue(function () {
				I_BtnCheck++;
				if (I_BtnCheck == 2) {
		        	B_ButtonsOn = true;
					I_BtnCheck = 0;
					$(this).dequeue();
				}
		      });*/
		B_ButtonsOn = true;
	} else {
		HideMoreItems();
				
		// Load Items
		loadPrevItemsLeft();
		loadPrevItemsRight();
				
		// Product Position
		MovePrevCount();
	}
}

function MovePrevCount() {
	I_ProductPosition = I_ProductPosition - 1;
			
	if (I_ProductPosition < I_ProductPositionMinHit) {
		I_ProductPositionMinHit = I_ProductPosition;
	}
}

function MoveNext() {
	
	//alert("Next " + (I_ProductPosition + 1));
	
	if ((I_ProductPosition + 1) == (I_ProductPositionMax)) {
		if (document.getElementById("moveNext")) {
			document.getElementById("moveNext").className = "deactive";
		}
		if (document.getElementById("moveLast")) {
			if (document.getElementById("moveLast").className == "deactive") {
				document.getElementById("moveLast").className = "";
			}
		}
	} else {
		if (document.getElementById("moveLast")) {
			if (document.getElementById("moveLast").className == "deactive") {
				document.getElementById("moveLast").className = "";
			}
		}
	}
	
	if (I_ProductPosition == (I_ProductPositionMax)) {
		// DO NOTTHING LAST ITEM
		B_ButtonsOn = true;
	} else if ((I_ProductPosition + 1) <= I_ProductPositionMaxHit) {
		
		// DO NOTTHING Item Alredy loaded
		MoveNextCount();
		
		$(".move").animate({"left": "-=154px"}, "slow");
		
		/*$(".move").queue(function () {
				I_BtnCheck++;
				if (I_BtnCheck == 2) {
		        	B_ButtonsOn = true;
					I_BtnCheck = 0;
					$(this).dequeue();
				}
		      });*/
		B_ButtonsOn = true;
	} else {		
		// Load Items
		loadNextItemsLeft();
		loadNextItemsRight();
		
		// Product Position
		MoveNextCount();
	}
	
}

function MoveNextCount() {
	I_ProductPosition = I_ProductPosition + 1;
	
	if (I_ProductPosition > I_ProductPositionMaxHit) {
		I_ProductPositionMaxHit = I_ProductPosition;
	}
	
	
}

function loadNextItemsLeft() {
	O_RequestNextLeft.open("get", "moreitems.asp?id=" + I_ItemID + "&cid=" + I_CategoryID + "&sid=" + I_ReferenceID + "&artist=" + I_ArtistID + "&position=" + (I_ProductPosition + 1) + "&sort=asc", true);
	O_RequestNextLeft.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	O_RequestNextLeft.setRequestHeader("Content-length", 0);
	O_RequestNextLeft.onreadystatechange = loadEndItemLeft;
	O_RequestNextLeft.send("");
}

function loadNextItemsRight() {
	O_RequestNextRight.open("get", "moreitems.asp?id=" + I_ItemID + "&cid=" + I_CategoryID + "&sid=" + I_ReferenceID + "&artist=" + I_ArtistID + "&position=" + (I_ProductPosition + 2) + "&sort=asc&type=" + S_Ptype, true);
	O_RequestNextRight.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	O_RequestNextRight.setRequestHeader("Content-length", 0);
	O_RequestNextRight.onreadystatechange = loadEndItemRight;
	O_RequestNextRight.send("");
}

function loadEndItemLeft() {
	if (O_RequestNextLeft.readyState == 4) {
		var resContent = O_RequestNextLeft.responseText;
		document.getElementById("prevItems").innerHTML = document.getElementById("prevItems").innerHTML + resContent;
	}
}

function loadEndItemRight() {
	if (O_RequestNextRight.readyState == 4) {
		var resContent = O_RequestNextRight.responseText;
		//alert(resContent);
		document.getElementById("nextItems").innerHTML = document.getElementById("nextItems").innerHTML + resContent;
		
		if (B_InitEndItem == true) {
			$(".move").animate({"left": "-=154px"}, "slow");
			/*$(".move").queue(function () {
					I_BtnCheck++;
					if (I_BtnCheck == 2) {
			        	B_ButtonsOn = true;
						I_BtnCheck = 0;
						$(this).dequeue();
					}
			      });*/
			B_ButtonsOn = true;
		}
		
		B_InitEndItem = true;
	}
}


function loadPrevItemsLeft() {
	
	O_RequestPrevLeft.open("get", "moreitems.asp?id=" + I_ItemID + "&cid=" + I_CategoryID + "&sid=" + I_ReferenceID + "&artist=" + I_ArtistID + "&position=" + (I_ProductPosition - 2) + "&sort=desc&type=" + S_Ptype, true);
	O_RequestPrevLeft.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	O_RequestPrevLeft.setRequestHeader("Content-length", 0);
	O_RequestPrevLeft.onreadystatechange = loadStartItemLeft;
	O_RequestPrevLeft.send("");
}

function loadPrevItemsRight() {
	O_RequestPrevRight.open("get", "moreitems.asp?id=" + I_ItemID + "&cid=" + I_CategoryID + "&sid=" + I_ReferenceID + "&artist=" + I_ArtistID + "&position=" + (I_ProductPosition - 1) + "&sort=desc&type=" + S_Ptype, true);
	O_RequestPrevRight.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	O_RequestPrevRight.setRequestHeader("Content-length", 0);
	O_RequestPrevRight.onreadystatechange = loadStartItemRight;
	O_RequestPrevRight.send(""); 
}

function loadStartItemLeft() {
	if (O_RequestPrevLeft.readyState == 4) {
		var resContent = O_RequestPrevLeft.responseText;
		document.getElementById("prevItems").innerHTML = resContent + document.getElementById("prevItems").innerHTML;
		
		if (B_InitPrev == true) {
			if (document.getElementById("prevItems")) {
				document.getElementById("prevItems").style.left = "-154px";
				B_ButtonsOn = true;
			}
		}
		
		B_InitPrev = true;
	}
}

function loadStartItemRight() {
	if (O_RequestPrevRight.readyState == 4) {
		var resContent = O_RequestPrevRight.responseText;
		
		document.getElementById("nextItems").innerHTML = resContent + document.getElementById("nextItems").innerHTML;
		
		if (B_InitNext == true) {
			if (document.getElementById("nextItems")) {
				document.getElementById("nextItems").style.left = "-154px";
				B_ButtonsOn = true;
			}
		}
		
		if (B_InitNext == true) {
			setTimeout('AnimPrev()', 200);
		} else {
			ShowMoreItems();
			
			//Load Main Items in background
			loadMainItemLeft(1);
			loadMainItemRight(1);
		}
		
		B_InitNext = true;
	}
}

function AnimPrev() {
	ShowMoreItems();
	$(".move").animate({"left": "+=154px"}, "slow");
	
	/*$(".move").queue(function () {
			I_BtnCheck++;
			if (I_BtnCheck == 2) {
	        	B_ButtonsOn = true;
				I_BtnCheck = 0;
				$(this).dequeue();
			}
	      });*/
	B_ButtonsOn = true;
	
	//Load Main Items in background
	loadMainItemLeft(0);
	loadMainItemRight(0);
}


// Backgound / Main Item Changes
function loadMainItemLeft(I_Extra) {
	O_RequestMainLeft.open("get", "item.asp?id=" + I_ItemID + "&cid=" + I_CategoryID + "&sid=" + I_ReferenceID + "&artist=" + I_ArtistID + "&position=" + (I_ProductPosition - 1 - I_Extra) + "&sort=asc&type=" + S_Ptype, true);
	O_RequestMainLeft.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	O_RequestMainLeft.setRequestHeader("Content-length", 0);
	O_RequestMainLeft.onreadystatechange = MainItemLeft;
	O_RequestMainLeft.send("");
}

function loadMainItemRight(I_Extra) {
	O_RequestMainRight.open("get", "item.asp?id=" + I_ItemID + "&cid=" + I_CategoryID + "&sid=" + I_ReferenceID + "&artist=" + I_ArtistID + "&position=" + (I_ProductPosition - I_Extra) + "&sort=asc&type=" + S_Ptype, true);
	O_RequestMainRight.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	O_RequestMainRight.setRequestHeader("Content-length", 0);
	O_RequestMainRight.onreadystatechange = MainItemRight;
	O_RequestMainRight.send("");
}


function MainItemLeft() {
	if (O_RequestMainLeft.readyState == 4 && O_RequestMainLeft.responseText != "") {
		var resContent2 = O_RequestMainLeft.responseText;
		document.getElementById("moveLast").innerHTML = resContent2;
	}
}

function MainItemRight() {
	if (O_RequestMainRight.readyState == 4 && O_RequestMainRight.responseText != "") {
		var resContent3 = O_RequestMainRight.responseText;
		document.getElementById("moveNext").innerHTML = resContent3;
	}
}


