var DISPLAYBLOCK = "visible";
var DISPLAYNONE = "oculto";
var SELECTED = "selec";
var ANCHORSUFFIX = "_content";
var BULLEYE = "ocms_"

var agrupacionProductos = document.getElementById("agrupacion_productos");
var listadoProductos = document.getElementById("listado_productos");
var productos = document.getElementById("productos");
var listadoProductosElements = listadoProductos.getElementsByTagName("li");
var productsContainerList = getAllProducts(productos);

var anchor = getAnchor(document.location.href);
productsInit();


// methods
function getAllProducts(productList){
var productsContainerList = new Array();
var allProductsContainerList = productos.getElementsByTagName("div");
	var cont=0;
	for (i=0; i<allProductsContainerList.length;i++){
		if(allProductsContainerList[i].id.lastIndexOf(ANCHORSUFFIX)>=0){
			productsContainerList.splice(cont++,1,allProductsContainerList[i]);
		}
	}
	return productsContainerList;
}

function hasAnchor(uri){
	return uri.lastIndexOf('#')>0;
}

function getAnchor(uri){
	if(hasAnchor(uri)){
		return uri.substr(uri.lastIndexOf('#')+1,uri.length);
	}
	return "";
}

function getUriWithoutAnchor(uri){
	if(hasAnchor(uri)){
		return uri.substr(0,uri.lastIndexOf('#'));
	}
	return uri;
}


function productsInit(){
	for(i=0; i<listadoProductosElements.length;i++){
		var NURL = new String(document.location.href + "#" + listadoProductosElements[i].id + "_content");
		listadoProductosElements[i].onclick = function(){
			if(isOnline=="false"){
				/*window.location.href=NURL;
				window.location.reload();*/
				doProductAction(this);
				return false;
			}else{
				doProductAction(this);
				return false;
			}
		};
	}
	initPos = anchor!=""?0:1;
	for(i=initPos; i<productsContainerList.length;i++){
		if(productsContainerList[i]!=null)
		{
			if (productsContainerList[i]!=undefined && productsContainerList[i].id!=anchor){
				productsContainerList[i].className=DISPLAYNONE;
			}
		}
	}
	
	var currentProduct="";
	for(i=0; i<productsContainerList.length;i++){
		if(productsContainerList[i].className!=DISPLAYNONE){
			currentProduct = productsContainerList[i].id.substr(0, productsContainerList[i].id.lastIndexOf(ANCHORSUFFIX));
		}
	}

	for(i=0; i<listadoProductosElements.length;i++){
		if(i==0 && listadoProductosElements[0].id == currentProduct){
			listadoProductosElements[i].className=SELECTED;
		}else if(listadoProductosElements[i].id + ANCHORSUFFIX == anchor){
			listadoProductosElements[i].className=SELECTED;
		}else{
			listadoProductosElements[i].className="";
		}
	}
}

function doProductAction(element){
	hideAllProducts()
	for(i=0; i<listadoProductosElements.length;i++){
		var product = document.getElementById(listadoProductosElements[i].id + ANCHORSUFFIX);
		
		// reload selected element style
		if(listadoProductosElements[i]==element){
			listadoProductosElements[i].className=SELECTED;
		}else{
			listadoProductosElements[i].className="";
		}
		showProduct(product, element);
	}
	changeProduct(parseInt(element.id.substring(element.id.lastIndexOf("_")+1))+1);
}

function hideAllProducts(){
	for(i=0; i<productsContainerList.length;i++){
		productsContainerList[i].className="oculto";
	}
}

function showProduct(product, element){
	if(product!=null)
	{
	   if (product!=undefined)
	   {
		if(product.id.lastIndexOf(element.id+"_")>=0){ // "_" prevent posible errors with short <li> id's
			product.className=DISPLAYBLOCK;
		}else{
			product.className=DISPLAYNONE;
		}
	   }
	}	
}

