/*
 * Metodos JavaScript
 * (c) 2006, EDUCON
 */

/*
 * Inicializações básicas.
 */
function basics() {
	if (jQuery.browser.msie) {
		ativaHover('main_menu');
	}
}

function clear(elementId)
{
	$('div#' + elementId).empty();
	$('div#' + elementId).hide();
} 


/*
 * Função para o menu no IE.
 */
function DOMgetElementsByClassName($node, $className) {
	var $node, $atual, $className, $retorno = new Array(), $novos = new Array();
	$retorno = new Array();
	for (var $i = 0; $i < $node.childNodes.length; $i++) {
		$atual = $node.childNodes[$i];
		if ($atual.nodeType == 1) {
			$classeAtual = $atual.className;
			if (new RegExp("\\b" + $className + "\\b").test($classeAtual)) {
				$retorno[$retorno.length] = $atual;
			}
			if ($atual.childNodes.length > 0) {
				$novos = DOMgetElementsByClassName($atual, $className);
				if ($novos.length > 0) {
					$retorno = $retorno.concat($novos);
				}
			}
		}
	}
	return $retorno;
}

/*
 * Outra função para o menu no IE.
 */
function ativaHover(classe) {
	var pais = DOMgetElementsByClassName(document.body, classe);
	for (var j = 0; j < pais.length; j++) {
		var sfEls = pais[j].getElementsByTagName("LI");
		for (var i = 0; i < sfEls.length; i++) {
			sfEls[i].onmouseover = function() {
				this.className += ' over';
			}
			sfEls[i].onmouseout = function() {
				this.className = this.className.replace(new RegExp(" over\\b"), "");
			}
		}
	}
}

/*
 * Mostrar uma mensagem vinda de um XMLHttpRequest.
 */
function mostraMsg(xml) {
	if (xml.responseText != '') {
		alert(xml.responseText);
	}
}

/*
 * Troca um objeto de box.
 */
function trocaBox(origem, destino) {
	$('#' + destino).append($('option[@selected]', '#' + origem));
	$('option', '#' + origem).remove('[@selected]');
}

/*
 * Altera o valor de um campo para 'true' ou 'false' 
 * de acordo com o boolean passado.
 */
function setBooleanVal(id, bool) {
	if(bool) {
		$('#' + id).val('true');
	} else {
		$('#' + id).val('false');
	}
}

/*
 * Esconde o campo com id igual ao valor passado no 1o parâmetro e mostra o 2o.
 */
function escondeMostra(campo1, campo2) {
	$('#' + campo1).hide();
	$('#' + campo2).show();
}

function mostraEsconde(campo){
	var disp = jQuery('#' + campo).css('display');
	if(disp == 'block') {	
	    jQuery('#' + campo).hide();
	} else {
	    jQuery('#' + campo).show();
	}
	
}
/*
 * Carrega HTML
 */
function carregaHtml(url, parametros, divresult) {
	var strUrl = url;
	if (parametros!='') {
		strUrl+= '?' + parametros;
	}
	
	jQuery.ajax({
		type: 'post',
		url: strUrl,
		beforeSend:function(){
			jQuery('#' + divresult).html("Carregando...");
		}, complete:function(xml){
			jQuery('#' + divresult).html(xml.responseText);
		}
	});
}	

/*
 * Troca posicao dos Departamentos
 *
 */
function trocaPosicao(url, troca, lista, pai) {

	var origem = 'troca';
	
	var departamento = $('#' + origem).val();
	
	url += '?perform=salvarOrdenacao&idDepartamento=' + departamento + '&troca=' + troca + '&pai=' +pai;
	$.ajax({
		url: url,
		type: 'post',
		complete: function(xml) {
			if(xml.responseText != '') {
				$('#' + lista).html(xml.responseText);
			}	
		}
	});
}

/*
 * Associa afinidades do Produto
 */
function associaAfinidade(url, produto, afinidade) {
	url += '?perform=salvar&produtoId=' + produto + 
		'&afinidadeId=' + afinidade;
		
	$.ajax({
		url: url,
		type: 'post',
		complete: function(xml) {
			if(xml.responseText != '') {
				$('#afinidades').html(xml.responseText);
			}
		}
	});
}

/*
 * Associa departametos ao Produto
 */
function associaDepartamentoProduto(url, produto, associa) {
	var origem = 'dptos_troca';
	var destino = 'dptos_disp';
	
	if(associa){
		var origem = 'dptos_disp';
		var destino = 'dptos_troca';
	}
	
	var depto = $('#' + origem).val();
	
	url += '?perform=salvar&produtoId=' + produto + 
		'&departamentoId=' + depto +
		'&associar=' + associa;
		
	$.ajax({
		url: url,
		type: 'post',
		complete: function(xml) {
			trocaBox(origem, destino);
		}
	});
}

/*
 * Altera o idioma da página
 */
function changeLanguage(url, idioma) {

	url += '?idioma=' + idioma;
		
	jQuery.ajax({
		url: url,
		type: 'post',
		complete: function(xml) {
			window.location.reload(false);
		}
	});	
}

/*
 * Abre a janela para pagamento com Visa.
 */
function popVisa() {
	
	window.name = 'loja';
		
	var msg = '<p class=\"center\">' + msg + '</p><br />';
	var visa_popup = window.open('', 'visa_popup', 'toolbar=0,menubar=0,status=1,scrollbars=1,resizable=1,width=765,height=440');
	
	$('#sender').hide('fast');
}

/*
function (){
this.imagePopUp=window.open(this.site_path+'/_include/back_end/image_dialog.php?page_title='+this.page_title,'','width=620,height=500,resizable=1,scrollbars=yes');

//get current selected range
var sel=document.getElementById(this.wysiwyg_content).contentWindow.document.selection;
if(sel!=null){
rng=sel.createRange();
}
}
*/
/*
 * Abre a janela para pagamento com Amex.
 */
function popAmex() {
	
	window.name = 'loja';
		
	var msg = '<p class=\"center\">' + msg + '</p><br />';
	var visa_popup = window.open('', 'amex_popup', 'toolbar=0,menubar=0,status=1,scrollbars=1,resizable=1,width=765,height=440');
	
	$('#sender').hide('fast');
}
/*
 * Limita o campo a quantidade x de digitos
 */
function limitaText( p_objCampo, p_permitido , p_objDestino) {
			
	if (  p_objCampo.value.length > p_permitido ) {
		p_objCampo.value =  p_objCampo.value.substr( 0, p_permitido )
	}
	p_objDestino.value = p_objCampo.value;
}

/*
 * Esconde o campo com id igual ao valor passado no 1o parâmetro e mostra o 2o.
 */
function escondeMostra(campo1, campo2) {
	jQuery('#' + campo1).hide();
	jQuery('#' + campo2).show();
}



function mostraEstoque(url,div, value) {

	var status = 'false';

	if(value  == '5') {	
	   status = 'true'
	} else {
	   status = 'false';
	}
	
	url += '?perform=mostraEstoque&status=' + status;
	
	$.ajax({
		url: url,
		type: 'post',
		complete: function(xml) {
			if(xml.responseText != '') {
				$('#' + div).html(xml.responseText);
			}	
		}
	});	
	
}

function mostraEsconde(campo){
	var disp = jQuery('#' + campo).css('display');

	if(disp == 'block') {	
	    jQuery('#' + campo).hide();
	} else {
	    jQuery('#' + campo).show();
	}
}


function trocaImagem(url,img,foto) {

	
	url += '?perform=trocaImagem&imageId=' + img;

	jQuery.ajax({
		url: url,
		type: 'post',
		complete: function(xml) {

			
			jQuery('#' + foto).html(xml.responseText);
		}
	});	
}

/*
 * Associa faixaCep à Tabela
 */
function associaTabela(url, frete, associa) {
	var origem = 'faixa';
	var destino = 'faixa_tabela';
	var atribui = 'true';

	if(!associa){
		var origem = 'faixa_tabela';
		var destino = 'faixa';
		var atribui = 'false';
	}
	
	var faixaCep = $('#' + origem).val();
	var tabela = $('#tabelaId').val();
	
	url += '?perform=salvar&faixaId=' + faixaCep + '&freteId=' + frete +
		'&atribui=' + atribui + '&tabelaId=' +tabela;
		
	$.ajax({
		url: url,
		type: 'post',
		complete: function(xml) {
			trocaBox(origem, destino);
			if(xml != null) {
				$('#tabelaId').val(xml.responseText);
			}
		}
	});
}

/*
 * Associa faixaCeps ao Fornecedor
 *
 */
function associaFaixaCep(url, fornecedor, associa) {
	var origem = 'faixaCep_troca';
	var destino = 'faixaCep';
	var atribui = 'false';

	if(associa){
		var origem = 'faixaCep';
		var destino = 'faixaCep_troca';
		var atribui = 'true';
	}
	var faixaCep = $('#' + origem).val();
	
	url += '?perform=salvar&faixaId=' + faixaCep + '&fornecedorId=' + fornecedor + '&atribui=' + atribui;
	$.ajax({
		url: url,
		type: 'post',
		complete: function(xml) {
			trocaBox(origem, destino);
			mostraMsg(xml);	
		}
	});
}

/*
 * Associa países à Tabela
 */
function associaTabelaPaises(url, frete, associa,pais) {
	var origem = 'pais';
	var destino = 'paises_tabela';
	var atribui = 'true';

	if(!associa){
		var origem = 'paises_tabela';
		var destino = 'pais';
		var atribui = 'false';
	}
	
	var faixaCep = $('#' + origem).val();
	var tabela = $('#tabelaId').val();
	
	url += '?perform=salvarInt&faixaId=' + faixaCep + '&freteId=' + frete +
		'&atribui=' + atribui + '&tabelaId=' +tabela + '&paisId=' +pais;
		
	$.ajax({
		url: url,
		type: 'post',
		complete: function(xml) {
			trocaBox(origem, destino);
			if(xml != null) {
				$('#tabelaId').val(xml.responseText);
			}
		}
	});
}


