/**
* @desc   toogle a element to show or hide
* @param  void
*
*/
function toogle(elemTarget) {

          //hidding
          if ($(elemTarget).getStyle('visibility') == 'visible') {
               $(elemTarget).setStyle('visibility','hidden');
               $(elemTarget).setStyle('height','0');
          }
          //showing
          else {
               $(elemTarget).setStyle('visibility','visible');
               $(elemTarget).setStyle('height','auto');
               
               // ao mostrar pular para o elemento
               self.location="#"+elemTarget;
          }
}

/**
 * @desc	Funcao para paginar, nao usar essa funcao diretamente, a funcao PHP PAGINACAO() que
 * 			faz a chamada
 * 
 * @param 	servidor string	Caminho do sistema
 * @param 	modulo string	Modulo a ser mostrado, com string criptografada
 * @param 	acao string		Acao a ser tomada dentro do modulo, com string criptografada  
 * @return
 */


function paginar(servidor, modulo, acao) {
	var nPagina = $('nPagina').value; 
	var qtdReg = $('qtdReg').value;
	
	// 
	window.open(servidor+'/index2.php?m='+modulo+'&a='+acao+'&pg='+nPagina+'&qtdReg='+qtdReg, '_self');
}

/**
 * @desc	Verificar os campos obrigatorios
 * @param 	sCampos Array
 * @return
 */

function camposObrigatorios(sCampos) {

	var valid = true;
	
	// verificando todos os campos
	for (i=0;i< sCampos.length;i++){
		
		// Destacar campos obrigatorios
		if ($(sCampos[i]).value  == "") {  
			$(sCampos[i]).addClass('campoObrigatorio');
			valid = false;
		} 
			else { $(sCampos[i]).removeClass('campoObrigatorio'); }
	} 

	return valid;
}

/**
 * @desc	Mascaras para os inputs
 * @param 	o	objeto
 * @param	f 	sub-funcao 
 * @return
 */

function mascara(o,f){
    v_obj=o
    v_fun=f
    setTimeout("execmascara()",1)
}

function execmascara(){
    v_obj.value=v_fun(v_obj.value)
}

function site(v){
    v=v.replace(/^http:\/\/?/,"")
    dominio=v
    caminho=""
    if(v.indexOf("/")>-1)
        dominio=v.split("/")[0]
        caminho=v.replace(/[^\/]*/,"")
    dominio=dominio.replace(/[^\w\.\+-:@]/g,"")
    caminho=caminho.replace(/[^\w\d\+-@:\?&=%\(\)\.]/g,"")
    caminho=caminho.replace(/([\?&])=/,"$1")
    if(caminho!="")dominio=dominio.replace(/\.+$/,"")
    v="http://"+dominio+caminho
    return v
}

/**
* @desc   load an page using ajax
* @param  string    ajaxUrl      relative url of the page to be loaded
* NOTE:   it's is posible to pass parameters and javascripts codes on
*         the resqueted page.
*
* @param  string    ajaxUpdate   where the ajax page will be displayed
* @param  string    onComplete   special functions thats need to be called after
*                             complete the page request
*
* NOTE:   OnComplete will only work if had be set special trigger for that
*
*/

function ajaxLoadPage(ajaxUrl, ajaxUpdate) {
	// default values
	onComplete       = typeof(onComplete)       != 'undefined' ? onComplete : false;

	// identify if url has any parameters using GET
	if(ajaxUrl.match(/\?/) )  { var getString = '&';  }
	     else { var getString = '?'; }

	// ajax request
	var req = new Request.HTML({
	             method: 'get',
	             url: ajaxUrl+getString+'nocache='+ new Date().getTime(),
	               onRequest: function() {
	                    $(ajaxUpdate).set('html', '<div class="loader"> <img src="includes/img/ajax-loader.gif"> </div>');
	               },
	               onComplete: function () {
	               },
	             update: $(ajaxUpdate),
	             evalScripts: true
	         }).send();

	}
