function log(l) {
	if (window.console && console.log) {
		console.log(l);
	}
}

function go_financiamentopage() {
	var frm = document.frmCompra;
	if (frm.plafond) frm.preco.value = frm.plafond.value;
	frm.p.value = 'financiamento';
	frm.submit();
}

function go_confirm() {
	var frm = document.frmCompra;
	if (frm.mod && frm.mod.value == '') {
		alert('Preencha a modalidade de credito');
		return;
	}
	frm.submit();
}

function ajudaEntrega(v) {
	var html = '';
	if (v == 'casa') {
		html += '<p>Receba a sua encomenda em qualquer lado, r&#225;pida e seguramente.</p>';
			} else {
		html += '<p>Sem portes, receber&#225; confirma&#231;&#227;o telefonica da disponibilidade da encomenda. Paga na entrega.</p>';
	}
	var div = $('ajudaent');
	div.innerHTML = html;
}

function taxaCredito() {this.escaloes = new Array();this.add = _add;}
function _escalao(limite, nper, tx) {this.limite = limite;this.nper = nper;this.tx = tx;}
function _add(limite, nper, tx) {this.escaloes[this.escaloes.length] = new _escalao(limite, nper, tx);}

var txCredito = new taxaCredito()

txCredito.add(150, 3, 0.349466)
txCredito.add(150, 6, 0.180948)
txCredito.add(150, 12, 0.096903)

txCredito.add(300, 3, 0.349466)
txCredito.add(300, 6, 0.180948)
txCredito.add(300, 12, 0.096903)
txCredito.add(300, 18, 0.068608)
txCredito.add(300, 24, 0.054822)

txCredito.add(450.01, 3, 0.348174)
txCredito.add(450.01, 6, 0.179793)
txCredito.add(450.01, 12, 0.095783)
txCredito.add(450.01, 18, 0.067989)
txCredito.add(450.01, 24, 0.054188)
txCredito.add(450.01, 30, 0.04568)
txCredito.add(450.01, 36, 0.040291)

txCredito.add(750.01, 3, 0.346856)
txCredito.add(750.01, 6, 0.178616)
txCredito.add(750.01, 12, 0.094647)
txCredito.add(750.01, 18, 0.066663)
txCredito.add(750.01, 24, 0.052831)
txCredito.add(750.01, 30, 0.044609)
txCredito.add(750.01, 36, 0.039191)
txCredito.add(750.01, 42, 0.035181)
txCredito.add(750.01, 48, 0.032359)

txCredito.add(1250.01, 3, 0.345978)
txCredito.add(1250.01, 6, 0.177834)
txCredito.add(1250.01, 12, 0.093893)
txCredito.add(1250.01, 18, 0.065651)
txCredito.add(1250.01, 24, 0.051799)
txCredito.add(1250.01, 30, 0.043291)
txCredito.add(1250.01, 36, 0.03784)
txCredito.add(1250.01, 42, 0.033989)
txCredito.add(1250.01, 48, 0.031138)

txCredito.add(2000.01, 3, 0.34554)
txCredito.add(2000.01, 6, 0.177443)
txCredito.add(2000.01, 12, 0.093518)
txCredito.add(2000.01, 18, 0.064648)
txCredito.add(2000.01, 24, 0.050779)
txCredito.add(2000.01, 30, 0.042252)
txCredito.add(2000.01, 36, 0.036778)
txCredito.add(2000.01, 42, 0.032768)
txCredito.add(2000.01, 48, 0.02989)

txCredito.add(3000.01, 3, 0.345073)
txCredito.add(3000.01, 6, 0.177028)
txCredito.add(3000.01, 12, 0.093119)
txCredito.add(3000.01, 18, 0.06415)
txCredito.add(3000.01, 24, 0.050273)
txCredito.add(3000.01, 30, 0.041738)
txCredito.add(3000.01, 36, 0.036253)
txCredito.add(3000.01, 42, 0.031968)
txCredito.add(3000.01, 48, 0.029073)

txCredito.add(5000.01, 18, 0.06415)
txCredito.add(5000.01, 24, 0.050273)
txCredito.add(5000.01, 30, 0.041738)
txCredito.add(5000.01, 36, 0.036253)
txCredito.add(5000.01, 42, 0.031968)
txCredito.add(5000.01, 48, 0.029073)

txCredito.add(10000.01, 30, 0.041738)
txCredito.add(10000.01, 36, 0.036253)
txCredito.add(10000.01, 42, 0.031968)
txCredito.add(10000.01, 48, 0.029073)

txCredito.add(15000.01, 42, 0.031968)
txCredito.add(15000.01, 48, 0.029073)

txCredito.add(25000, 42, 0.031968)
txCredito.add(25000, 48, 0.029073)

function changeCredito(v, preco) {
	var html = '<table border="0" cellpadding="5" cellspacing="0" class="textTable11">'
	
	var plafond = 0;
	var pmt = 0;
	var entrada = 0;
	var nper = 0;
	var tx = 0;
	var mincredito = 0;
	var maxcredito = 0;
		
	switch (v) {
		
		case 'f5':
		case 'f10':
		case 'f20':
			if (v == 'f5') {
				mincredito = 167; nper = 5; tx = 0.05;
			} else if (v == 'f10') {
				mincredito = 167; nper = 10; tx = 0.1;
			} else {
				mincredito = 167; nper = 20; tx = 0.2;
			}
			pmt = preco/nper; entrada = preco*tx
			
			if (preco < mincredito) {
				html += '<tr><td><b>Valor m&#237;nimo de cr&#233;dito nesta modalidade &#233; de ' + mincredito + ' &#8364;</b></td></tr>'
			} else {
				html += '<tr><td>Entrada inicial</td><td align="right"><input type="hidden" name="entrada" value="' + entrada.toFixed(2) + '"/>' + entrada.toFixed(2) + ' &#8364;</td></tr>';
				html += '<tr><td><b>Mensalidades ' + nper + ' x </b></td><td align="right"><input type="hidden" name="mensalidade" value="' + pmt.toFixed(2) + '"/><b>' + pmt.toFixed(2) + ' &#8364;</b></td></tr>';
			}
			break;
		
		case 'c5':
		case 'c10':
			plafond = 0; 
			while(plafond < preco) {
				plafond += 25
			}
			if (plafond < 250) {
				plafond = 250;
			}
			if (v == 'c5') {
				mincredito = 12.5; tx = 0.05;	
			} else if (v == 'c10') {
				mincredito = 25; tx = 0.1;	
			}
			if (plafond < 250) {
				pmt = mincredito;
			} else {
				pmt = plafond*tx;
			}
			html += '<tr><td>Valor de plafond</td><td align="right"><input type="hidden" name="plafond" value="' + plafond.toFixed(2) + '"/>' + plafond.toFixed(2) + ' &#8364;</td></tr>';
			html += '<tr><td><b>Mensalidade do cart&#227;o</b></td><td align="right"><input type="hidden" name="mensalidade" value="' + pmt.toFixed(2) + '"/><b>' + pmt.toFixed(2) + ' &#8364;</b></td></tr>';
			html += '<tr><td colspan="2">J&#225; possuo cart&#227;o com o n&#186;<br/><input type="text" class="textbox" name="numcartao" style="width:200px"/></td></tr>';
			
			break;
		
		case 'cr':
			mincredito = 150;
			maxcredito = 25000;
			
			if (preco < mincredito) {
				html += '<tr><td><b>Valor m&#237;nimo de cr&#233;dito nesta modalidade &#233; de ' + mincredito + ' &#8364;</b></td></tr>'
			} else if (preco > maxcredito) {
				html += '<tr><td><b>Valor m&#225;ximo de cr&#233;dito nesta modalidade &#233; de ' + maxcredito + ' &#8364;</b></td></tr>'
			} else {				
				var txoptions = '';
				var i = 0;
				var escalao = 0;
				var limite = 0;
				var iend = 0;
				var ibegin = 0;
				
				while(escalao < preco) {
					escalao = txCredito.escaloes[i].limite;
					if (escalao >= preco) {
						limite = txCredito.escaloes[i-1].limite;
						iend = i-1;
						break;
					}
					i++;
				}
				
				for (i = iend; i >= 0; i--) {
					if (txCredito.escaloes[i].limite != limite) {
						ibegin = i + 1
						break;
					}
				}
				pmt = txCredito.escaloes[ibegin].tx * preco
				
				for (i = ibegin; i <= iend; i++) {
					txoptions += '<option value="' + txCredito.escaloes[i].tx + '" meses="' + txCredito.escaloes[i].nper + '">' + txCredito.escaloes[i].nper + '</option>';
				}			
				html += '<tr><td>N&#186; de meses</td><td>'
				html += '<select name="nper" onchange="changePmt(this, document.frmCompra.preco.value)">' + txoptions + '</select><input type="hidden" name="prazo" value="' + txCredito.escaloes[ibegin].nper + '"/></td></tr>';
				html += '<tr><td><b>Mensalidade</b></td><td align="right"><input type="hidden" name="mensalidade" value="' + pmt.toFixed(2) + '"/><b><div id="pmt" name="pmt">' + pmt.toFixed(2) + ' &#8364;</div></b></td></tr>';
			}
		
	}
	html += '</table>'
	
	var div = document.getElementById('cred')
	div.innerHTML = html;
}

function changePmt(sel, preco) {
	var v = sel.value;
	var t = sel.options[sel.selectedIndex].text;
	var div = document.getElementById('pmt')
	document.frmCompra.prazo.value = t;
	var pmt = v * preco
	document.frmCompra.mensalidade.value = pmt.toFixed(2);
	div.innerHTML = pmt.toFixed(2) + ' &#8364;';
}

function ajudaPagamento(e, v) {
	var html = '';
	
		
	if (e == 'casa') {
		if (v == 'pronto') {
			html += '<p>Sem portes, encomendas com mais de 2kg, entrega em 36h por DHL, com menos de 2kg, entrega em 3 dias por CTT.</p>';
			html += '<p>Aguarde email com dados de pagamento.</p>';
		} 
		else if (v == 'Paypal') {
			html += '<p>Aguarde o pedido de pagamento Paypal.</p>';
			html += '<p>Sem portes, encomendas com mais de 2kg, entrega em 36h por DHL, com menos de 2kg, entrega em 3 dias por CTT.</p>';
		} 
		else {
			html += '<p>Entrega em 3 dias por CTT, encomendas com mais de 2kg, custo adicional 11.50 euros, com menos de 2kg, custo adicional 6.50 euros.</p>';
		} 
	} 
	var div = $('ajudapag');
	div.innerHTML = html;
}

function array_cor(name) {
	this.name = name;
	this.cores = new Array();
	this.add = cor_add;
}

function cor(name, image) {
	this.name = name;
	this.images = image.split(';');
}

function cor_add(name, image) {
	this.cores[this.cores.length] = new cor(name, image);
}

function item_viewcolor(colorname, colors, index) {
	var div = $('foto');
	var html = '';

	var frm = document.frmCompra;

	for (var i = 0; i < colors.cores.length; i++) {
		if (colors.cores[i].name == colorname) {
			frm.cor.value = colorname;
			html += '<a tabindex="-1" title="clique para ampliar" href="javascript:item_zoom(\'' + colors.cores[i].images[index] + '\')">';
			html += '<img border="0" src="image.aspx?src=media/equip/' + colors.cores[i].images[index] + '&tbw=300"/>';
			html += '</a>';
			if (colors.cores[i].images.length > 1) {
				html += '<p>';
				for (var n = 0; n < colors.cores[i].images.length; n++) {
					html += '<a href="javascript:item_viewcolor(\'' + colorname + '\', eq_cores, ' + n + ')">';
					html += '<img src="image.aspx?src=media/equip/' + colors.cores[i].images[n] + '&tbw=30" border="0" align="absmiddle"/>';
					html += '</a>';
					html += '&#160;';
				}
				html += '</p>';
			}
			html += '<p align="center"><a href="javascript:item_zoom(\'' + colors.cores[i].images[index] + '\')">[ ampliar ]</a></p>';
		}
	}
	div.innerHTML = html;
}

function item_zoom(src) {
	var w = window.open('media/equip/' + src,'zoomwin','menubar=0,titlebar=0,toolbar=0,location=0,directories=0,status=0,scrollbars=0,resizable=0,copyhistory=0,width=778,height=550,top='+((screen.availHeight-550)/2)+',left='+((screen.availWidth-778)/2));
	w.focus();
}

function px(w, h) {
	document.write('<img src="inc/px.gif" width="' + w  + '" height="' + h + '"/>');
}

function sortList(c_orderby, col) {
	var f = c_orderby.substring(0, c_orderby.indexOf(' '));
	var o = c_orderby.substring(c_orderby.indexOf(' ') + 1);
	
	if (f == col) {
		if (o == 'ascending') {
			o = 'descending';
		} else {
			o = 'ascending';
		}
	} else {
		o = 'ascending';
		f = col;
	}
	var fo = f + ' ' + o;
	document.xfrm.s_orderby.value = fo;
	document.xfrm.ac.value = 'list';

	document.xfrm.submit();
}

function pageList(s) {
	document.xfrm.ac.value = 'list';
	document.xfrm.s_page.value = s;
	document.xfrm.submit();
}

function oc_estcivil(obj) {
	var fldTR, disp;
	if (obj.value == '2' || obj.value == '3')
	{
		disp = 'block'
	}
	else
	{
		disp = 'none'
	}
	
	fldTR = eval('document.all.' + 'fldTR_nome_conj');
	fldTR.style.display = disp;
	
	fldTR = eval('document.all.' + 'fldTR_dtnasc_conj');
	fldTR.style.display = disp;
	
	fldTR = eval('document.all.' + 'fldTR_nac_conj');
	fldTR.style.display = disp;
	
	fldTR = eval('document.all.' + 'fldTR_contrib_conj');
	fldTR.style.display = disp;
	
	fldTR = eval('document.all.' + 'fldTR_bi_conj');
	fldTR.style.display = disp;
	
	fldTR = eval('document.all.' + 'fldTR_profissao_conj');
	fldTR.style.display = disp;
	
	fldTR = eval('document.all.' + 'fldTR_empresa_conj');
	fldTR.style.display = disp;
	
	fldTR = eval('document.all.' + 'fldTR_antempresa_conj');
	fldTR.style.display = disp;
	
	fldTR = eval('document.all.' + 'fldTR_tel_empresa_conj');
	fldTR.style.display = disp;
	
	fldTR = eval('document.all.' + 'fldTR_rendmensal_conj');
	fldTR.style.display = disp;
	
	fldTR = eval('document.all.' + 'fldTR_empresa_conj');
	fldTR.style.display = disp;
	
	fldTR = eval('document.all.' + 'fldTR_conj1');
	fldTR.style.display = disp;
	
	fldTR = eval('document.all.' + 'fldTR_conj3');
	fldTR.style.display = disp;
}

function tableMenu (tableId, rowId) {
	var t = $(tableId);
	t.select("tr").each(function(r) {
		var id = r.id;
		if (id) {
			var l = $(id + 'link');
			if (l) {
				if (id == tableId + rowId) {
					r.style.display = 'block';
					l.className = 'mms'
				} else {
					r.style.display = 'none';
					l.className = 'mm';
				}
			}
		}
	});
}

function oc_tipohab(obj) {
	var fldTR, disp;
	if (obj.value == '1' || obj.value == '3') {
		disp = 'block';
	} else {
		disp = 'none';
	}
	fldTR = $('fldTR_enchab');
	fldTR.style.display = disp;
}

function go_financiamento() {
	var frm = document.xfrm;
	frm.p.value = 'financiamento';
	frm.submit();
}

function xfrm_submit(formName) {
	var frm = eval('document.' + formName);
	var msg = '';
	
	elements = frm.elements;
	for (i = 0; i < elements.length; i++) {
		element = elements[i];
		if (element.type == 'text' && element.xrequired == '1' && element.value == '') {
			if (msg == '') msg = 'Tem de preencher os seguintes campos: ';
			msg += element.xfieldlabel + '; ';
		}
		if (element.type == 'select-one' && element.xrequired == '1' && (element.value == '__n' || element.value == '-' || element.value == '')) {
			if (msg == '') msg = 'Tem de preencher os seguintes campos: ';
			msg += element.xfieldlabel + '; ';
		}
	}
	
	var errTD = $(formName + '_errMsg');
	if (msg != '') {
		errTD.innerHTML = msg;
		errTD.parentElement.style.display = 'block';
	} else {
		//frm.ac.value = 'insert';
		frm.submit();
	}
}

function xfrm_news_submit() {
	var frm = document.newsletter;
	if (frm.email.value != '' && frm.email.value != 'O seu e-mail') {
		frm.submit();
	}
}

function calc_fin(formName) {
	var frm = eval('document.' + formName);
	
	var a = frm.ano;
	
	if (!isFinite(frm.preco.value) || isNaN(frm.preco.value) || frm.preco.value < 0 || frm.preco.value == '') {
		frm.preco.value = 0;
	}
	
	if (!isFinite(frm.entrada.value) || isNaN(frm.entrada.value) || frm.entrada.value < 0 || frm.entrada.value == '') {
		frm.entrada.value = 0;
	}
	var PV = frm.preco.value - frm.entrada.value; frm.montante.value = PV;
	
	if (!isFinite(frm.mensalidade.value) || isNaN(frm.mensalidade.value) || frm.mensalidade.value < 0 || frm.mensalidade.value == '') {
		frm.mensalidade.value = 0;
	}
	
	if (frm.tipofin.value == '3') {
		frm.entrada.value = 0.1 * frm.preco.value;
		frm.mensalidade.value = 0.1 * frm.preco.value;
	}
	
	var PMT = frm.mensalidade.value;
	
	var r = 0;
	var nPerMax = 0;
	var nPerMin = 12;
	
	switch (frm.tipofin.value) {
		case '1':
			r = 0.155 / 12; nPerMax = 72; break;
		case '2':
			if (a && a.value >= 2003) {
				r = 0.155 / 12; nPerMax = 72;
			} else {
				r = 0.19 / 12; nPerMax = 60;
			}
			 break;
	}
	
	var FV = 0;
	var nPer = fin_NPER(PV, PMT, r, FV);
	
	if (frm.tipofin.value == '3') {
		frm.prazo.value = 10;
	} else {
		if (isFinite(nPer) && !isNaN(nPer)) {
			if (nPer > nPerMax) {
				frm.prazo.value = 'excede o prazo maximo'; //'max = ' + nPerMax;
			} else {
				if (nPer < nPerMin) {
					frm.prazo.value = 'inferior ao prazo minimo'; //''min = ' + nPerMin;
				} else {
					frm.prazo.value = Math.round(nPer);
				}
			}
		} else {
			frm.prazo.value = 'excede o prazo maximo'; //'max = ' + nPerMax;
		}
	}
}

function fin_NPER(PV, PMT, r, FV) {
	PV = - PV;
	var tmp = (PMT / r - FV) / (PMT / r + PV);
	var res = Math.log(tmp) / Math.log(1 + r);
	return res;
}

function validateNumber(value) {
	var i;
	if (isNaN(parseInt(value))) return false;
	for (i = 0; i < value.length; i ++ ) if (value.charAt(i) < '0' ||  value.charAt(i) > '9') return false;
	return true;
}

function validateNumberAndPoint(value)
{
	var i, flag;
	
	flag = false;
	
	if (isNaN(parseFloat(value))) return false;

	for (i = 0; i < value.length; i ++ ) 
	{
		if (value.charAt(i)=='.' && flag == false) 
		{
			if (flag == false) i++
			else return false;
			flag = true;
		}
			
		if (value.charAt(i) < '0' ||  value.charAt(i) > '9') return false;
	}		
	return true;
}


function validateInteger(value)
{
	if (value == null) return null;
	if (value.lenght == 0) return null;	
	return validateNumber(value) == true ? parseInt(value) : '';
}


function validateReal(value)
{
	if (value==null) return null;
	if (value.lenght==0) return null;
	return validateNumberAndPoint(value.replace(",", ".")) == true ? parseFloat(value.replace(",", ".")) : '';
}

function imgShowHide() {
	var div = document.getElementById('imgShow');
	div.style.visibility = 'hidden';
}

function imgShow(obj) {
	var i, img
	var div = document.getElementById('imgShow');
	
	if (!obj.src2) {
		return;
	}
	
	var sImg = obj.src2; //, w, h
	//sImg = sImg.substring(0,sImg.indexOf('.jpg') - 1) + '.jpg';
	var w = 640;
	var h = 480;
	
	var html = '';
	html += '<table cellpadding="0" cellspacing="0" border="0" width="' + w + '">'
	html += '<tr>'
	html += '<td colspan="2" rowspan="2" style="background-color:#EBEBEB;border-color:#39587D #39587D #39587D #39587D;border-style:solid;border-width:1px 1px 1px 1px;">'
	html += '<table cellpadding="0" cellspacing="0" border="0">'
	html += '<tr><td height="480" valign="top">'
	html += '<img src="' + sImg + '" alt=""/>'; //width="' + w + '" height="' + h + '"
	html += '</td></tr>'
	html += '<tr><td height="20" align="right" style="padding:5px;"><a class="frmBtn2" href="#" onclick="imgShowHide()"><b>fechar janela</b></a>'
	html += '</td></tr>'
	html += '</table>'
	html += '</td>'
	html += '<td width="6" height="6"><img src="inc/shadow1.gif"/></td>'
	html += '</tr>'
	html += '<tr><td height="' + h + '" background="inc/shadow4.gif"><img src="inc/pix.gif" width="6" height="6"/></td></tr>'
	html += '<tr>'
	html += '<td width="6" height="6"><img src="inc/shadow2.gif"/></td>'
	html += '<td width="' + w + '" background="inc/shadow5.gif"><img src="inc/pix.gif" width="6" height="6"/></td>'
	html += '<td width="6" height="6"><img src="inc/shadow3.gif"/></td>'
	html += '</tr>'
	html += '</table>'
	div.innerHTML = html;
	
	div.style.visibility = 'visible';
}

function xkeydown(obj, e) {
	/*log(e);
	if (obj.type == 'textarea') {
		if (e.ctrlKey && (e.keyCode == 13)) {
			e.keyCode = 9
		}
	} 
	else {
		if(e.keyCode == 13) {e.keyCode = 9}
	}*/
}

function openPopup (src) {
	//src = "http://localhost/motonegocio/" + src
	//alert(src)
	
	//window.open(src, "motosolucao")
	document.location = src;
	//window.open(src, "motosolucao", "screenX=50,screenY=50,width=600,height=550,resizable=0,scrollbars=0,dependent=0")
	//window.open(src, "motosolucao.com", "screenX=50,screenY=50,width=400,height=400,resizable=0,scrollbars=0,dependent=0")
	//return
}

