//------------------------------------------------------------
// suppress all error messages and do nothing with them:
//
function noErrorMessages () { return true; }
window.onerror = noErrorMessages;


/********************************************
Função: Confere Login

Verifica se todos os campos do login
foram preeenchidos.
********************************************/
function confereLogin ( nomeForm )
{
	if ( eval( nomeForm ).login.value == "" )
	{
		alert( 'Por favor preencha o campo Usuário.' ) ;
		return false ;
	} else if ( eval( nomeForm ).senha.value == "" )
	{
		alert( 'Por favor preencha o campo Senha.' ) ;
		return false ;
	} /* if */
	return true ;
} 
/* fim da função confere campo login */

/********************************************
Função: Confere Contato

Verifica se todos os campos do contato
foram preeenchidos.
********************************************/
function confereContato ( nomeForm )
{
	if ( eval( nomeForm ).nome.value == "" )
	{
		alert( 'Por favor preencha o campo nome.' ) ;
		return false ;
	} 
	else if ( ! validaEmail( eval( nomeForm ).emailContato.value ) )
	{
		alert( 'Por favor verifique o campo email.' ) ;
		return false ;
	} 
	else if ( eval( nomeForm ).emailContato.value == "" )
	{
		alert( 'Por favor preencha o campo email.' ) ;
		return false ;
	}
	else if ( eval( nomeForm ).assunto.value == "" )
	{
		alert( 'Por favor preencha o campo assunto.' ) ;
		return false ;
	}
	else if ( eval( nomeForm ).mensagem.value == "" )
	{
		alert( 'Por favor preencha o campo mensagem.' ) ;
		return false ;
	} /* if */
	return true ;
} 
/* fim da função confere contato */


/********************************************
Função: Confere Newsletter

Verifica se todos os campos do login
foram preeenchidos.
********************************************/
function confereEnviaNewsletter ( nomeForm, windowName )
{
	if ( ! validaEmail( eval( nomeForm ).emailNewsletter.value ) )
	{
		alert( 'Por favor verifique o campo email.' ) ;
		return false ;
	}
	else if ( eval( nomeForm ).emailNewsletter.value == "" )
	{
		alert( 'Por favor preencha o campo email.' ) ;
		return false ;
	} /* if */
	//chama pagina para enviar mail
	popupForm( nomeForm, windowName ) ;
	return true ;
} 
/* fim da função confere EnviaNewsletter */

/********************************************
Função: Confere Esqueceu Senha

Verifica se todos os campos do login
foram preeenchidos.
********************************************/
function confereEsqueceuSenha ( nomeForm, windowName )
{
	if ( ! validaEmail( eval( nomeForm ).emailEsqueceuSenha.value ) )
	{
		alert( 'Por favor verifique o campo email.' ) ;
		return false ;
	}
	else if ( eval( nomeForm ).emailEsqueceuSenha.value == "" )
	{
		alert( 'Por favor preencha o campo email.' ) ;
		return false ;
	} /* if */
	//chama pagina para enviar mail
	popupForm( nomeForm, windowName ) ;
	return true ;
} 
/* fim da função confere campo login */


/********************************************
Função: Confere Campo Cadastro

Verifica se todos os campos do cadastro
foram preeenchidos.
********************************************/
function confereCadastro( nomeForm )
{
	if ( eval( nomeForm ).nome.value == "" )
	{
		alert( 'Por favor preencha o campo Nome.' ) ;
		return false ;
	}else if ( ! validaEmail( eval( nomeForm ).emailCadastro.value ) )
	{
		alert( 'Por favor verifique o campo email.' ) ;
		return false ;
	}else if ( eval( nomeForm ).emailCadastro.value == "" )
	{
		alert( 'Por favor preencha o campo Email.' ) ;
		return false ;
	}else if ( eval( nomeForm ).telefone.value == "" || eval( nomeForm ).ddd.value == "" )
	{
		alert( 'Por favor preencha o campo DDD e Telefone.' ) ;
		return false ;
	}
	else if ( eval( nomeForm ).endereco.value == "" )
	{
		alert( 'Por favor preencha o campo Endereço.' ) ;
		return false ;
	}/*else if ( eval( nomeForm ).complemento.value == "" )
	{
		alert( 'Por favor preencha o campo Complemento.' ) ;
		return false ;
	}*/else if ( eval( nomeForm ).bairro.value == "" )
	{
		alert( 'Por favor preencha o campo Bairro.' ) ;
		return false ;
	}else if ( eval( nomeForm ).cidade.value == "" )
	{
		alert( 'Por favor preencha o campo Cidade.' ) ;
		return false ;
	}else if ( eval( nomeForm ).estado.value == "-1" )
	{
		alert( 'Por favor preencha o campo Estado.' ) ;
		return false ;
	}else if ( eval( nomeForm ).cep.value == "" )
	{
		alert( 'Por favor preencha o campo Cep.' ) ;
		return false ;
	}
	/* if */ 
	return true ;
} 
/* fim da função Confere Campo Cadastro */


/********************************************
Função: Confere Data

Verifica a data informada é válida
********************************************/
function confereData (dia, mes, ano)
{
	var dias = 0;

	if ((mes > 12) || (mes < 0)) {
		return false; // mês inválido.
	}
	
	if (mes == 2) {
		//Valida fevereiro
		dias = (((ano%4 == 0 && ano%100 != 0) || ano%400 == 0) ? 29 : 28);
	} else {
		//Valida todos os meses, exceto fevereiro
		dias = 30 + ((mes < 8) ? mes%2 : (mes%7)%2);
	}

	if ((dia > dias) || (dia < 0)) {
		return false; // Dia inválido.
	}
	return true;
}
/* fim da função confere data */

/********************************************
Função: Verifica Acentuacao

Verifica se numa string possui caracteres
com acentuação.
********************************************/

function temAcento( str )
{
	str1 = new String(str);
	inx = str1.lastIndexOf("\\");
	inx2 = str1.lastIndexOf(".");
	str1 = str1.substring(inx+1, inx2);
	expReg = new RegExp("[!?%`',^çÇàèìòùâêîôûäëïöüáéíóúãõÀÈÌÒÙÂÊÎÔÛÄËÏÖÜÁÉÍÓÚÃÕ]", "gi");
	results = str1.match(expReg);
	if ( results == null )
		return false;// nao tem acento
		return true; // tem acento
}
/* fim da função verifica acento */

/********************************************
Função: limpaInput

Mantém o texto padrão (value) do input,
caso seja modificado mantém o modificado.
********************************************/

function limpaInput( formfield )
{
	if ( formfield.defaultValue == formfield.value )
	{
		formfield.value = "" ;
	} /* if */
}
/* fim da função limpaInput */

/********************************************
Função: preencheInput

Mantém o texto padrão (value) do input,
caso seja modificado mantém o modificado.
********************************************/
function preencheInput( formfield )
{
	if ( formfield.value == "" )
	{
		formfield.value = formfield.defaultValue ;
	} /* if */
}
/* fim da função limpaInput */

/********************************************
Função: Popup Form

Mostra o resultado do formulário em
um popup.
********************************************/
function popupForm( myForm, windowName )
{
	if ( ! window.focus ) return true ;
	
	window.open( '', windowName, 'height=200,width=400,scrollbars=no' ) ;
	myForm.target = windowName ;
	return true ;
}
/* fim da função popupForm */

/*********************************************** 
 Funcao valida email
 verifica se o email foi digitado corretamente.
**********************************************/
function validaEmail( str )
{
    var filter = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
    if( filter.test( str ) )
      return true ; //email valido
    else
    {
      return false; //email invalido
    } /* if */
} /* Fim da função validaEmail */

/**
* Função que que atribui texto a uma caixa de texto automaticamente
* de acordo com uma msg padrao pre-estabelecida. 
* @param idMsg - mensagem a ser colocado no campo textarea
* @param idTextArea - caixa de texto que ira aparecer o texto de idMsg
* @autor Bernardo Nunes
*/
function atribuiMensagemPadrao( idMsg, idTextArea )
{
	if( WYSIWYG.viewTextMode[idTextArea] )
	{
		alert( "Mude a opção View Text para View Source!" ) ;
	}
	else
	{
		if( WYSIWYG.getEditorWindow( idTextArea ).document.getElementById( "contentTheme" ) )
		{
			WYSIWYG.getEditorWindow( idTextArea ).document.getElementById( "contentTheme" ).innerHTML = document.getElementById( idMsg ).value ;
		}
		else
		{
			WYSIWYG.getEditorWindow( idTextArea ).document.body.innerHTML = document.getElementById( idMsg ).value ;
		}
		WYSIWYG.updateTextArea( idTextArea ) ;
	}
} /* Fim da função atribuiMensagemPadrao */

/**
* Função que que atribui texto a uma caixa de texto automaticamente
* de acordo com uma msg padrao pre-estabelecida. 
* @param idMsg - mensagem a ser colocado no campo textarea
* @param idTextArea - caixa de texto que ira aparecer o texto de idMsg
* @autor Bernardo Nunes
*/
function atribuiTema( idTema, idTextArea )
{
	if( WYSIWYG.viewTextMode[idTextArea] )
	{
		alert( "Mude a opção View Text para View Source!" ) ;
	}
	else
	{
		var msg ;
		var divCT ;
		if( WYSIWYG.getEditorWindow( idTextArea ).document.body.innerHTML == " " || WYSIWYG.getEditorWindow( idTextArea ).document.body.innerHTML == "" || WYSIWYG.getEditorWindow( idTextArea ).document.body.innerHTML == "<br>" || WYSIWYG.getEditorWindow( idTextArea ).document.body.innerHTML == "<br />" )
		{
			WYSIWYG.getEditorWindow( idTextArea ).document.body.innerHTML = document.getElementById( idTema ).value ;
			WYSIWYG.updateTextArea( idTextArea ) ;
		}
		else
		{
			if( WYSIWYG.getEditorWindow( idTextArea ).document.getElementById( "contentTheme" ) )
			{
				msg = WYSIWYG.getEditorWindow( idTextArea ).document.getElementById( "contentTheme" ).innerHTML ;
			}
			else
			{
				msg = WYSIWYG.getEditorWindow( idTextArea ).document.body.innerHTML ;
			} /* if */
			
			if( document.getElementById( idTema ).value == " " || document.getElementById( idTema ).value == "" || document.getElementById( idTema ).value == "<br>" || document.getElementById( idTema ).value == "<br />" )
			{
				WYSIWYG.getEditorWindow( idTextArea ).document.body.innerHTML = '<div id="contentTheme"></div>' ;
			}
			else
			{
				WYSIWYG.getEditorWindow( idTextArea ).document.body.innerHTML = document.getElementById( idTema ).value ;
			}
			WYSIWYG.getEditorWindow( idTextArea ).document.getElementById( "contentTheme" ).innerHTML = msg ;
		} /* if */
		WYSIWYG.updateTextArea( idTextArea ) ;
	} /* if */
} /* Fim da função atribuiMensagemPadrao */

/**
* Função para do envio da mala direta
* @autor Bernardo Nunes
*/
function escolheRemetente( campo )
{
	if( document.getElementById( campo ).value == "Outros" )
	{
			document.getElementById( "auto" ).style.display = "none" ;
			document.getElementById( "manual" ).style.display = "" ;
			document.getElementById( "auto1" ).style.display = "none" ;
			document.getElementById( "manual1" ).style.display = "" ;
			document.getElementById( campo ).options[ 0 ].selected = true ; 
	}
	else
	{
		document.getElementById( "auto" ).style.display = "" ;
		document.getElementById( "manual" ).style.display = "none" ;		
		document.getElementById( "auto1" ).style.display = "" ;
		document.getElementById( "manual1" ).style.display = "none" ;
		document.getElementById( "paraManual" ).value = "" ;
	}
} /* Fim da função escolheRemetente */

/**
* Função para esconder layer
* @autor Bernardo Nunes
*/
function esconderLayer( id )
{
	document.getElementById( id ).style.display = "none" ;
} /* Fim da função escolheRemetente */

/********************************************
Função: Confere exclusão

Verifica se o usuário realmente deseja 
excluir item.
********************************************/
function confereExcluir( )
{
	
	if ( !confirm( "Clique em OK para APAGAR este item. Caso deseje cancelar, clique em CANCELAR." ) ) 
	{
		return false ;
	} /* if */
	return true ;
} 
/* fim da função confere campo login */

/********************************************
Função: Confere Cliente

Verifica se o form deve excluir ou atualizar
os dados do cliente.
********************************************/
function confereCliente( nomeForm, modo )
{
	var ret = false ;
	if(	modo == 1 )
	{
		eval( nomeForm ).modo.value = 1 ;
		ret = confereCadastro( nomeForm ) ;
	} /* if */
	
	if(	modo == 2 )
	{
		eval( nomeForm ).modo.value = 2 ;
		ret = confereExcluir( ) ;
	} /* if */
	
	return ret ;
} 
/* fim da função confereCliente */

/********************************************
Função: Confere Produto

Verifica se o form deve excluir ou atualizar
os dados do produto.
********************************************/
function confereProduto( nomeForm, modo )
{
	var ret = false ;
	if(	modo == 1 )
	{
		eval( nomeForm ).modo.value = 1 ;
		ret = confereProdutos( nomeForm, modo ) ;
	} /* if */
	
	if(	modo == 2 )
	{
		eval( nomeForm ).modo.value = 2 ;
		ret = confereExcluir( ) ;
	} /* if */
	
	return ret ;
} 
/* fim da função confereProduto */

/********************************************
Função: Confere Categoria

Verifica se o form deve excluir ou atualizar
os dados de uma categoria.
********************************************/
function confereCategoria( nomeForm, modo )
{
	var ret = false ;
	if(	modo == 1 )
	{
		eval( nomeForm ).modo.value = 1 ;
		ret = confereCategorias( nomeForm, modo ) ;
	} /* if */
	
	if(	modo == 2 )
	{
		eval( nomeForm ).modo.value = 2 ;
		ret = confereExcluir( ) ;
	} /* if */
	
	return ret ;
} 
/* fim da função confereCategoria */

/********************************************
Função: Confere Novidade

Verifica se o form deve excluir ou atualizar
os dados de uma novidade.
********************************************/
function confereNovidade( nomeForm, modo )
{
	var ret = false ;
	if(	modo == 1 )
	{
		eval( nomeForm ).modo.value = 1 ;
		ret = confereNovidades( nomeForm, modo ) ;
	} /* if */
	
	if(	modo == 2 )
	{
		eval( nomeForm ).modo.value = 2 ;
		ret = confereExcluir( ) ;
	} /* if */
	
	return ret ;
} 
/* fim da função confereNovidade */

/********************************************
Função: Confere Destaque

Verifica se o form deve excluir ou atualizar
os dados de um destaque.
********************************************/
function confereDestaque( nomeForm, modo )
{
	var ret = false ;
	if(	modo == 1 )
	{
		eval( nomeForm ).modo.value = 1 ;
		ret = confereDestaques( nomeForm, modo ) ;
	} /* if */
	
	if(	modo == 2 )
	{
		eval( nomeForm ).modo.value = 2 ;
		ret = confereExcluir( ) ;
	} /* if */
	
	return ret ;
} 
/* fim da função confereDestaque */


/********************************************
Função: Confere Sua Mensagem

Verifica se o form deve excluir ou atualizar
os dados do cliente.
********************************************/
function confereSuaMensagem( nomeForm, modo )
{
	var ret = false ;
	if(	modo == 1 )
	{
		eval( nomeForm ).modo.value = 1 ;
		ret = confereDadosSuaMensagem( nomeForm ) ;
	} /* if */
	
	if(	modo == 2 )
	{
		eval( nomeForm ).modo.value = 2 ;
		ret = confereExcluir( ) ;
	} /* if */
	
	return ret ;
} 
/* fim da função confereSuaMensagem */

/********************************************
Função: Confere Dados SuaMensagem

Verifica se todos os campos estão preenchidos.
********************************************/
function confereDadosSuaMensagem ( nomeForm )
{
	if ( eval( nomeForm ).nome.value == "" )
	{
		alert( 'Por favor preencha o campo nome.' ) ;
		return false ;
	}
	else if ( eval( nomeForm ).mensagem.value == "" )
	{
		alert( 'Por favor preencha o campo mensagem.' ) ;
		return false ;
	} /* if */
	return true ;
} 
/* fim da função confereDadosSuaMensagem */

/**
* Função para do habilitar pedido senha
* @autor Bernardo Nunes
*/
function selecionaPedidoSenha( )
{	
	if( document.getElementById( 'pedidoSenha' ).style.display == "none" )
	{
		document.getElementById( 'pedidoSenha' ).style.display = "" ;
		document.getElementById( 'naoPedidoSenha' ).style.display = "none" ;
	}
	else
	{
		document.getElementById( 'pedidoSenha' ).style.display = "none" ;
		document.getElementById( 'naoPedidoSenha' ).style.display = "" ;
	}
} /* Fim da função selecionaPedidoSenha */

/********************************************
Função: Confere Cadastro Produto

Verifica se todos os campos 
foram preeenchidos.
********************************************/
function confereProdutos( nomeForm, modo )
{
	if ( eval( nomeForm ).produto.value == "" )
	{
		alert( 'Por favor preencha o campo produto.' ) ;
		return false ;
	} 
	else if ( eval( nomeForm ).preco.value == "" )
	{
		alert( 'Por favor preencha o campo preço.' ) ;
		return false ;
	}
	else if ( eval( nomeForm ).descricao.value == "" )
	{
		alert( 'Por favor preencha o campo descrição.' ) ;
		return false ;
	}
	else if ( modo != 1 && eval( nomeForm ).imagem.value == "" )
	{
		alert( 'Por favor preencha o campo imagem.' ) ;
		return false ;
	}
	else if ( modo != 1 && eval( nomeForm ).thumb.value == "" )
	{
		alert( 'Por favor preencha o campo thumbnail.' ) ;
		return false ;
	} /* if */
	return true ;
} 
/* fim da função confere produtos */

/********************************************
Função: Confere Cadastro Categorias

Verifica se todos os campos 
foram preeenchidos.
********************************************/
function confereCategorias ( nomeForm, modo )
{
	if ( eval( nomeForm ).categoria.value == "" )
	{
		alert( 'Por favor preencha o campo categoria.' ) ;
		return false ;
	} 
	else if ( modo != 1 && eval( nomeForm ).imagem.value == "" )
	{
		alert( 'Por favor preencha o campo imagem.' ) ;
		return false ;
	}
	else if ( eval( nomeForm ).ordem.value == "" )
	{
		alert( 'Por favor preencha o campo ordem.' ) ;
		return false ;
	}/* if */
	return true ;
} 
/* fim da função confere categorias */

/********************************************
Função: Confere Combo

Verifica se a combo foi preeenchida.
********************************************/
function confereCombo( id )
{
	if ( document.getElementById( id ).value == -1 )
	{
		alert( 'Por favor selecione uma opção.' ) ;
		return false ;
	} /* if */
	return true ;
} 
/* fim da função confere combo */

/********************************************
Função: Confere Cadastro Novidades

Verifica se todos os campos 
foram preeenchidos.
********************************************/
function confereNovidades ( nomeForm, modo )
{
	if ( eval( nomeForm ).descricao.value == "" )
	{
		alert( 'Por favor preencha o campo descrição.' ) ;
		return false ;
	} 
	else if ( modo != 1 && eval( nomeForm ).imagem.value == "" )
	{
		alert( 'Por favor preencha o campo imagem.' ) ;
		return false ;
	}
	else if ( eval( nomeForm ).urlNovidades.value == "" )
	{
		alert( 'Por favor preencha o campo link.' ) ;
		return false ;
	}/* if */
	return true ;
} 
/* fim da função confere novidades */

/********************************************
Função: Confere Cadastro Destaques

Verifica se todos os campos 
foram preeenchidos.
********************************************/
function confereDestaques ( nomeForm, modo )
{
	if ( eval( nomeForm ).descricao.value == "" )
	{
		alert( 'Por favor preencha o campo descrição.' ) ;
		return false ;
	} 
	else if ( modo != 1 && eval( nomeForm ).imagem.value == "" )
	{
		alert( 'Por favor preencha o campo imagem.' ) ;
		return false ;
	}
	else if ( eval( nomeForm ).urlDestaques.value == "" )
	{
		alert( 'Por favor preencha o campo link.' ) ;
		return false ;
	}/* if */
	return true ;
} /* fim da função confere destaques */

/********************************************
Função: Limita n. de chars em textfield
********************************************/
function limitText( limitField, limitCount, limitNum )
{
	if ( limitField.value.length > limitNum ) 
	{
		limitField.value = limitField.value.substring( 0, limitNum ) ;
	}
	else
	{
		limitCount.value = limitNum - limitField.value.length ;
	}
} /* fim da função limitText */

