
/*
03/2006
César de Moura Campos
cesar@cmcinternet.com.br
www.cmcinternet.com.br
CMC - SOLUÇÕES EM INTERNET
11 - 9774-2380
*/

//retorna numero randomico
function randomNumber(range)
{
	var randomnumber = Math.floor(Math.random() * range);
	return(randomnumber);
}

// number formatting function
// copyright Stephen Chapman 24th March 2006, 10th February 2007
// permission to use this function is granted provided
// that this copyright notice is retained intact
function formatNumber(num,dec,thou,pnt,curr1,curr2,n1,n2) 
{
	var x = Math.round(num * Math.pow(10,dec));
	if (x >= 0) n1=n2='';
	var y = (''+Math.abs(x)).split('');
	var z = y.length - dec; 
	if (z<0) z--; 
	for(var i = z; i < 0; i++) y.unshift('0');
	y.splice(z, 0, pnt); 
	while (z > 3) 
	{
		z-=3; 
		y.splice(z,0,thou);
	}
	var r = curr1+n1+y.join('')+n2+curr2;
	return r;
}

/**
 * Adiciona método lpad() à classe String.
 * Preenche a String à esquerda com o caractere fornecido,
 * até que ela atinja o tamanho especificado.
 */
String.prototype.lpad = function(pSize, pCharPad)
{
	var str = this;
	var dif = pSize - str.length;
	var ch = String(pCharPad).charAt(0);
	for (; dif>0; dif--) str = ch + str;
	return (str);
}

/**
 * Adiciona método trim() à classe String.
 * Elimina brancos no início e fim da String.
 */
String.prototype.trim = function()
{
	return this.replace(/^\s*/, "").replace(/\s*$/, "");
}

/*
Open Centered Popup Window Script-
© DHTML Shock (www.dhtmlshock.com)
To add more shock to your site, visit www.DHTML Shock.com
*/
function OpenBrWindow(theURL,winName,features, myWidth, myHeight, isCenter) { //v3.0
  if(window.screen)if(isCenter)if(isCenter=="true"){
    var myLeft = (screen.width-myWidth)/2;
    var myTop = (screen.height-myHeight)/2;
    features+=(features!='')?',':'';
    features+=',left='+myLeft+',top='+myTop;
  }
  window.open(theURL,winName,features+((features!='')?',':'')+'width='+myWidth+',height='+myHeight);
}

//
function setVisibility(visible, elid)
{
	var element = document.getElementById(elid);
	element.className=(visible)?'visible':'invisible';
}

//
function displayAlertMessage(div_alert, message, timeout)
{
	var element = document.getElementById(div_alert);
	if (element == null) return;
	element.innerHTML = message;
	
	setVisibility(true, div_alert);
	
	if (timeout != null)
		if (timeout > 0)
			TempOut = window.setTimeout("setVisibility(false, '" + div_alert + "');", timeout * 1000);
}

//
var oldClassName = '';
function highlightTR(iditem)
{
	var obj = document.getElementById('tr_' + iditem);
	oldClassName = obj.className;
	obj.className='highlight';
}
function unHighlightTR(iditem)
{
	var obj = document.getElementById('tr_' + iditem);
	obj.className=oldClassName;
}

//USADO PARA TRUNCAR O TEXTO DE UM TEXT OU TEXAREA DE ACORDO COM O NUMERO DE CARACTERES DEFINIDO.
function limitText(txt, maxLen)
{
	var intLen = txt.value.length;
	var strText = txt.value;
	
	if(intLen > maxLen)
	{
		var strNewText = strText.substring(0,maxLen); 
		txt.value = strNewText;
	}
}

//VERIFICA SE O ENDERECO DE EMAIL E VALIDO OU NAO
function checkmail(str)
{
	var filter = new RegExp("^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,3}|[0-9]{1,3})(\\]?)$");
	if (filter.test(str))
	{
		return true;
	}
	else
	{
		alert("O e-mail digitado não é válido!")
		return false;
	}
}

//---------------------------------------------------------------------------	
/*
	Treat the code in your page according to the browser used.
	Autor: Sergio Abreu
	http://sitedosergio.sitesbr.net
	http://multibrowser.sitesbr.net
	Please, keep these credits here. Thank you !
*/
var _browser_rv = ( navigator.userAgent.indexOf('rv:') > -1 );
var _browser_op = ( navigator.userAgent.indexOf('Opera') > -1 );
var _browser_ie = ( navigator.userAgent.indexOf('MSIE') > -1 );
var _browser_pd = ( navigator.product == 'Gecko' );
var _browser_ff = ( navigator.vendor == 'Firefox' || ( _browser_pd && (navigator.userAgent.indexOf('Firefox') > -1 || navigator.userAgent.indexOf('BonEcho') > -1) && _browser_pd && navigator.userAgent.indexOf('Flock') == -1));
var _browser_fk = ( ( _browser_pd && navigator.userAgent.indexOf('Firefox') > -1 && _browser_pd && navigator.userAgent.indexOf('Flock') > -1));
var _browser_ns = ( navigator.vendor == 'Netscape' );
function isMozilla(){ // Mozilla Suite Browser
  return ( _browser_pd && _browser_rv && ! _browser_ff && ! _browser_ns && ! _browser_fk);
}
function isFirefox(){ // Mozilla Firefox
  return ( _browser_pd && ( _browser_ff || ! _browser_rv ) && ! _browser_fk);
}
function isFlock(){
  return ( _browser_pd && _browser_fk);
}
function isNetscape(){ // Netscape 6 or higher
  return( _browser_pd && _browser_ns);
}
function isIE(){ // Internet Explorer
  return( ! _browser_pd && _browser_ie && ! _browser_op);
}
function isOpera(){ // Opera browser
  return( ! _browser_pd && _browser_op);
}
function otherBrowsers(){
  return( !isMozilla() && !isFirefox() && !isNetscape() && !isIE() && !isOpera());
}
//---------------------------------------------------------------------------	


//EXIBE UM DETERMINADO ELEMENTO
function showElement(element)
{
	var strVisible = element.style.visibility;
	alert(strVisible);
	element.style.visibility = "visible";
}

//EXIBE UM DETERMINADO ELEMENTO
function hideElement(element)
{
	var strVisible = element.style.visibility;
	alert(strVisible);
	element.style.visibility = "hidden";
}

//COPIA DADOS PARA O CLIPBOARD
function copy_clip(meintext)
{
	 if (window.clipboardData)
	{
		// the IE-manier
		window.clipboardData.setData("Text", meintext);
	}
   	else if (window.netscape)
   	{
		// dit is belangrijk maar staat nergens duidelijk vermeld:
 		netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');
 		// maak een interface naar het clipboard
 		var clip = Components.classes['@mozilla.org/widget/clipboard;1'].createInstance(Components.interfaces.nsIClipboard);
 		if (!clip) return;
 		// maak een transferable
 		var trans = Components.classes['@mozilla.org/widget/transferable;1'].createInstance(Components.interfaces.nsITransferable);
 		if (!trans) return;
 		// specificeer wat voor soort data we op willen halen; text in dit geval
 		trans.addDataFlavor('text/unicode');
 		// om de data uit de transferable te halen hebben we 2 nieuwe objecten nodig   om het in op te slaan
 		var str = new Object();
 		var len = new Object();
 		var str = Components.classes["@mozilla.org/supports-string;1"].createInstance(Components.interfaces.nsISupportsString);
 		var copytext=meintext;
 		str.data=copytext;
		trans.setTransferData("text/unicode",str,copytext.length*2);
 		var clipid=Components.interfaces.nsIClipboard;
   		if (!clip) return false;
   		clip.setData(trans,null,clipid.kGlobalClipboard);
   	}
	alert("Contéudo copiado para o ClipBoard.");
   	return false;
}
