var carrinho = [];
if($j.cookie('carr'))
	var carr = $j.cookie('carr');
else
	var carr = '{}';
	
	function roundNumber(num, dec) {
	var result = Math.round(num*Math.pow(10,dec))/Math.pow(10,dec);
	return result;
}

function round(num){
	num = parseFloat(num);
	return roundNumber(num, 2);
}

function euro_format(number){
	return number_format(number,2,',','.') + '&euro;';
}

function number_format( number, decimals, dec_point, thousands_sep ) {
    // http://kevin.vanzonneveld.net
    // +   original by: Jonas Raoni Soares Silva (http://www.jsfromhell.com)
    // +   improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +     bugfix by: Michael White (http://crestidg.com)
    // +     bugfix by: Benjamin Lupton
    // +     bugfix by: Allan Jensen (http://www.winternet.no)
    // +    revised by: Jonas Raoni Soares Silva (http://www.jsfromhell.com)
    // +     bugfix by: Howard Yeend
    // *     example 1: number_format(1234.5678, 2, '.', '');
    // *     returns 1: 1234.57     
 
    var n = number, c = isNaN(decimals = Math.abs(decimals)) ? 2 : decimals;
    var d = dec_point == undefined ? "." : dec_point;
    var t = thousands_sep == undefined ? "," : thousands_sep, s = n < 0 ? "-" : "";
    var i = parseInt(n = Math.abs(+n || 0).toFixed(c)) + "", j = (j = i.length) > 3 ? j % 3 : 0;
    
    return s + (j ? i.substr(0, j) + t : "") + i.substr(j).replace(/(\d{3})(?=\d)/g, "$1" + t) + (c ? d + Math.abs(n - i).toFixed(c).slice(2) : "");
}

	
function adCarrinho(ref, nome, preco, cod, type, size, base_color, crit_color){
	var jaExiste = null;
	var posExistente = null; 
        
        alert('ref:'+ref+'nome:'+nome+'preco:'+preco+'cod:'+cod+'type:'+type+'size:'+size+'base_color:'+base_color+'crit_color:'+crit_color);

	carrinho = getCarrinho(); 
/*	if(!qnt){
		qnt = parseInt($j('#qnt_'+ref).attr('value'));
	}
	if(cor = $j('#cor_'+ref).attr('value')){
		if(cor=='p'){
			ref += 'p';
			nome += ' (Preta)';
		}else if(cor=='c'){
			ref += 'c';
			nome += ' (Castanha)';
		}else if(cor=='b'){
			ref += 'b';
			nome += ' (Bord&ocirc;)';
		}
	}else {
		alert('Selecione uma cor!');
		return void(0);
	}/**/
	for(i=0; i<carrinho.length; i++){
		if(i>0){
			if(carrinho[i].ref==ref) {
				jaExiste = true;
				posExistente = i;
			}
		}
	}
	if(jaExiste){
        document.location.href = '?sc=carr';
        //carrinho[posExistente].qnt = parseInt(carrinho[posExistente].qnt) + 1;
		//setCarrinhoJSON(carrinho);
	}else{
 		carr = $j.cookie('carr');
		carr = carr + ',{"ref":"'+ref+'", "nome":"'+nome+'", "preco":"'+preco+'", "cod":"'+cod+'", "qnt":"1", "type":"'+type+'", "size":"'+size+'", "base_color":"'+base_color+'", "crit_color":"'+crit_color+'"}';
	}
	setCarrinho(carr);
	
	// depois de adicionar manda pra pagina da encomenda
	//alert('Produto adicionado com sucesso!');
	document.location.href = "?sc=carr";

	//document.location.href = 'Page534.htm';
	return setCarrinho(carr);
}


/*
 * recebe os parametros do configurador e adiciona ao carrinho
 *
 */

function addCartXpto(ref, nome, preco, cod, type, size, base_color, crit_color){
	var jaExiste = null;
	var posExistente = null; 

	carrinho = getCarrinho(); 

	for(i=0; i<carrinho.length; i++){
		if(i>0){
			if(carrinho[i].ref==ref && carrinho[i].type==type && carrinho[i].size==size && carrinho[i].base_color==base_color && carrinho[i].crit_color==crit_color) {
				jaExiste = true;
				posExistente = i;
			}
		}
	}
	if(jaExiste){
  	// não faz nada
	}else{
 		carr = $j.cookie('carr');
		carr = carr + ',{"ref":"'+ref+'", "nome":"'+nome+'", "preco":"'+preco+'", "cod":"'+cod+'", "qnt":"1", "type":"'+type+'", "size":"'+size+'", "base_color":"'+base_color+'", "crit_color":"'+crit_color+'" }';
                alert('Produto adicionado com sucesso');
	}
	setCarrinho(carr);
	
	return setCarrinho(carr);
}

function removeCarrinho(ref, base_color, crit_color, type, size){
	carrinho = getCarrinho();
	var novoCarrinho = [];
	carr = '{}';
	var i;
	for(i=0; i<carrinho.length; i++){
		if(i>0){
                  if(carrinho[i].ref==ref && carrinho[i].base_color==base_color && carrinho[i].crit_color==crit_color && carrinho[i].type==type && carrinho[i].size==size) {
                    // Do nothing
                  } else {
                    carr = carr + ',{"ref":"'+carrinho[i].ref+'", "nome":"'+carrinho[i].nome+'", "preco":"'+carrinho[i].preco+'", "qnt":"'+carrinho[i].qnt+'", "cod":"'+carrinho[i].cod+'", "type":"'+carrinho[i].type+'", "size":"'+carrinho[i].size+'", "base_color":"'+carrinho[i].base_color+'", "crit_color":"'+carrinho[i].crit_color+'" }';
                  }
		}
	}
        contar();
	return setCarrinho(carr);
}

function alteraCarrinhoQnt(ref, base_color, crit_color, type, size , qnt){
	if(qnt<1){
		//return removeCarrinho(ref);
		qnt=0;	
	} 
	carrinho = getCarrinho();
	var novoCarrinho = [];
	carr = '{}';
	var i;
	for(i=0; i<carrinho.length; i++){
		if(i>0){
			if(carrinho[i].ref==ref && carrinho[i].base_color==base_color && carrinho[i].crit_color==crit_color && carrinho[i].type==type && carrinho[i].size==size) {
                          carr = carr + ',{"ref":"'+carrinho[i].ref+'", "nome":"'+carrinho[i].nome+'", "preco":"'+carrinho[i].preco+'", "qnt":"'+qnt+'", "cod":"'+carrinho[i].cod+'", "type":"'+carrinho[i].type+'", "size":"'+carrinho[i].size+'", "base_color":"'+carrinho[i].base_color+'", "crit_color":"'+carrinho[i].crit_color+'"}';
			}else{
                          carr = carr + ',{"ref":"'+carrinho[i].ref+'", "nome":"'+carrinho[i].nome+'", "preco":"'+carrinho[i].preco+'", "qnt":"'+carrinho[i].qnt+'", "cod":"'+carrinho[i].cod+'", "type":"'+carrinho[i].type+'", "size":"'+carrinho[i].size+'", "base_color":"'+carrinho[i].base_color+'", "crit_color":"'+carrinho[i].crit_color+'" }';
			}
		}
	}
	return setCarrinho(carr);
	
}

function getCarrinho(){
	if ($j.cookie('carr')) {
		eval('carrinho = ['+$j.cookie('carr').replace("+"," ")+'];');
	} else {
		carrinho = [];
	}
	
	return carrinho;
}
function setCarrinho(carrStr){
	carrStr = $j.cookie('carr', carrStr, {expires: 1 });
	contar();
	m();
	return carrStr;
}
function setCarrinhoJSON(obj){
	carr = '{}';
	for(i=0; i<obj.length; i++){
		if(i>0){
			carr = carr + ',{"ref":"'+obj[i].ref+'", "nome":"'+obj[i].nome+'", "preco:"'+obj[i].preco+'", "qnt":"'+obj[i].qnt+'", "cod":"'+obj[i].cod+'"}';
		}
	}
	
	return $j.cookie('carr', carr, {expires: 1 });
}
function limparCarrinho() {
	carr = '{}';
	$j.cookie('carr', '', { expires: -1 });
	contar();
	m();
}

function apenas_limparCarrinho() {
	carr = '{}';
	$j.cookie('carr', '', { expires: -1 });
	contar();
}

function mostraCarrinho(){
	var convidado_checkout = $j.cookie('convidado_checkout');
	carrinho = getCarrinho();
	
	var tabela = '<form method="post" action="?sc=pag&op=1">';
	tabela += '<table cellspacing="0" >';
	var qnts = 0;
	var total = 0;
	var itemsCnt;
	tabela += '<tr>';
//	tabela += '<th>Ref.</th>';
	tabela += '<th class="col1">Nome</th>';

	if (!convidado_checkout) {
                tabela += '<th>Tam</th>';
		tabela += '<th>Pre&ccedil;o Unit&aacute;rio</th>';
		tabela += '<th>Qtd</th>';
		tabela += '<th>Sub total</th>';
	} else {
		tabela += '<th width="50">Pre&ccedil;o</th>';
	}

	tabela += '<th width="80" nowrap="nowrap"><a href="javascript:limparCarrinho()">Limpar&nbsp;tudo</a></th>';
	tabela += '</tr>';
        itemsCnt = 0;
	$j.each(carrinho,function(i,obj){
		if(i>0){
			if(obj.qnt== 'NaN') {
				obj.qnt=1;
			}
			tabela += '<tr>';
//			tabela += '<td><a href="?sc=visCatg&cod='+obj.cod+'&ref='+obj.ref+'">'+obj.ref+'</a></td>';
			tabela += '<td class="left"><a href="?sc=visCatg&cod='+obj.cod+'&ref='+obj.ref+'">'+unescape(obj.nome)+'</a>';
                        tabela += '<span class = "info" ><div style = "background-color:#'+obj.crit_color+'" class = "amostra"></div></span>';
                        tabela += '<br /><span class = "info" >'+obj.type+' - </span><div style = "background-color:#'+obj.base_color+'" class = "amostra"></div></td>';
			// no modo de convidado não mostra a quantidade nem o preço unitário
			if (!convidado_checkout) {
                                tabela += '<td>'+obj.size+'</td>';
				tabela += '<td>'+obj.preco+'&euro;</td>';
				tabela += '<td>&nbsp;<input maxlength="3" class="qnt" size="1" onblur="alteraCarrinhoQnt(\''+obj.ref+'\',\''+obj.base_color+'\',\''+obj.crit_color+'\',\''+obj.type+'\',\''+obj.size+'\',     this.value)" value="'+obj.qnt+'" /></td>';
			}
			tabela += '<td>'+euro_format(obj.preco*obj.qnt)+'</td>';
			
//			tabela += '<td><input type="button" value=" X " onclick="removeCarrinho(\''+obj.ref+'\')" />&nbsp;</td>';
			tabela += '<td><a href="#" onclick="removeCarrinho(\''+obj.ref+'\',\''+obj.base_color+'\',\''+obj.crit_color+'\',\''+obj.type+'\',\''+obj.size+'\')">Limpar</a></td>';
			tabela += '</tr>';
			total += obj.preco*obj.qnt;
			qnts += parseInt(obj.qnt);
			tabela +='<input type="hidden" name="ref[]" value='+obj.ref+' />';
		}
		itemsCnt = i;
	});
        if(itemsCnt==0){
		tabela += '<tr><td colspan="6" align="center">N&atilde;o tem compras</td></td>';
	}
	if(itemsCnt>0){

        
	tabela += '<tr>';
	
	if (!convidado_checkout) {
		tabela += '<td colspan="3" class="total"></td>';
	} 
		
//		tabela += '<td>'+qnts+'</td>';
		tabela += '<td class="total">Total:</td>';
		tabela += '<td class="total">'+euro_format(total)+'</td>';
//		tabela += '<td><a href="javascript:limparCarrinho()">Limpar Carrinho</a>&nbsp;</td>';
		tabela += '<td class="total">&nbsp;</td>';
		tabela += '</tr>';
	}
	tabela += '</table>';
	if(itemsCnt==0){
		tabela += '<div class="finalizar"><input type="image" src="img/carr_seguinte_off.jpg" value="Seguinte" disabled="disabled" class="seguinte"/></div></form>';
	} else {
		tabela += '<div class="finalizar"><input type="image" src="img/carr_seguinte.jpg" value="Seguinte" class="seguinte"/></div></form>';
	}
	if (!convidado_checkout) {
		tabela += '<div class="recalcular"><input type="image" src="img/carr_recalcular.jpg" value="Recalcular" onClick="return false" /></div>';
	}
	if(itemsCnt>0){
		tabela += '<p>';
		
		
		tabela += '</p>';
	}
		
	return(tabela);
		
}



function m(){
	$j('#carrinho').html(mostraCarrinho());
}


function contar(){
  carrStr = $j.cookie('carr');
  if (carrStr){
    var subs = carrStr.split('ref');
    if (subs.length > 1) {
    $j('.encomenda_mens').html((subs.length-1)+" itens");
    //total = getTotal();
    //$j('#val').html(total+' &euro;');
    //$j('#cart_widget').css('display','block');
    } else {
    $j('.encomenda_mens').html('0 itens');
    //$j('#val').html('0 &euro;');
    //$j('#cart_widget').css('display','none');
    }
  } else {
    $j('.encomenda_mens').html('0 itens');
    //$j('#val').html('0 &euro;');
    //$j('#cart_widget').css('display','none');
  }
  }

function getTotal() {
    carrinho = getCarrinho();
    total = 0;
    $j.each(carrinho,function(i,obj){
        if (i>0) {
            total += obj.preco*obj.qnt;
        }
    });
    return total;
}
