// Java Document

// esta função mostra o div (id=ab) e esconde todos os demais de classe 'aba' 
String.prototype.trim = function() {
return this.replace(/^\s+|\s+$|\t/g, '');
}

var editando = false;

function z(i){
	// Não mexer nesta.

	return document.getElementById(i)
}

function setContent(id, content)
{
	var ct = z(id);
	ct.innerHTML = content;
}

function mostraAba(ab) {
divs = document.getElementsByTagName("div");
topAb = 'topAba' + ab;
ld = divs.length;
	for(n=0;n<ld;n++) {
		if(ab==divs[n].id) {
			divs[n].style.position='relative';
			divs[n].style.visibility='visible';
			divs[n].style.width='100%';
		} 
		else 
		{
			if(divs[n].className=='aba')
			{
				divs[n].style.position='absolute';
				divs[n].style.left='0px';
				divs[n].style.visibility='hidden';
				divs[n].style.width='0px';
			}
		}
		if(topAb==divs[n].id)
		{
			divs[n].className='abaAberta';
		}
		else
		{
			tmp = divs[n].id.substr(0,6);
			if(tmp=='topAba')
			{
				divs[n].className='abaFechada';
			}
			
		}
	}
	trocaAba(ab);
}

// esta função mostra ou esconde o div (id=ab) clicado 
function abreAba(ab) {
divs = document.getElementsByTagName("div");
divAB = document.getElementById('botAB');
ld = divs.length;
	for(n=0;n<ld;n++) 
	{
		if(ab==divs[n].id) 
		{
			if(divs[n].style.visibility=='hidden')
			{
				divAB.className='footerFechar';
				divs[n].style.position='relative';
				divs[n].style.visibility='visible';
				divs[n].style.width='100%';
			} 
			else 
			{
				divAB.className='footerAbrir';
				divs[n].style.position='absolute';
				divs[n].style.left='0px';
				divs[n].style.visibility='hidden';
				divs[n].style.width='0px';
			}
		}
	}
}

function trocaAba(ab) {
ab = ab + 'Aba';
divs = document.getElementsByTagName("div");
ld = divs.length;
	for(n=0;n<ld;n++) {
		if(ab==divs[n].id) 
		{
			divs[n].className=='abaAberta';
		} 
		else 
		{
			if(divs[n].className=='abaAberta')
			{
				
				divs[n].className=='abaFechada';
			}
		}
	}
}

var isNN = (navigator.appName.indexOf("Netscape")!=-1);
function autoTab(input,len, e) 
{
	var keyCode = (isNN) ? e.which : e.keyCode; 
	var filter = (isNN) ? [0,8,9] : [0,8,9,16,17,18,37,38,39,40,46];
	if(input.value.length >= len && !containsElement(filter,keyCode)) 
	{
		input.value = input.value.slice(0, len);
		input.form[(getIndex(input)+1) % input.form.length].focus();
	}

	function containsElement(arr, ele) 
	{
		var found = false, index = 0;
		while(!found && index < arr.length)
		if(arr[index] == ele) found = true;	else index++;
		return found;
	}
	
	function getIndex(input) 
	{
		var index = -1, i = 0, found = false;
		while (i < input.form.length && index == -1)
		if (input.form[i] == input)index = i;
		else i++;
		return index;
	}
	return true;
}

function confirmNavigate(message, URL)
{
	input_box=confirm(message);
	if (input_box==true)
	{ 
		// Output when OK is clicked
		window.location.href = URL;
	}
}

function confirmPost(message, myForm, fAction)
{
	input_box=confirm(message);
	if (input_box==true)
	{ 
		// Output when OK is clicked
		document[myForm].myAction.value = fAction;
		document[myForm].submit();
	}
}

function SetAllCheckBoxes(CheckName, CheckValue)
{
	chks = document.getElementsByTagName('input');
	ld = chks.length;
	for(n=0;n<ld;n++) 
	{
		nomered = chks[n].name.substr(0,8);
		if(nomered==CheckName)
		{	
			chks[n].checked=CheckValue;
		}
	}
}

var popUpWin=0;
function popUpWindow(URLStr, left, top, width, height)
{
  if(popUpWin)
  {
    if(!popUpWin.closed) popUpWin.close();
  }
  //popUpWin = 
  open(URLStr, '_blank', 'toolbar=no,location=yes,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,copyhistory=no,width='+width+',height='+height+',left='+left+', top='+top+',screenX='+left+',screenY='+top+'');
}

function mOver(id)
{
	obj = document.getElementById(id);
	obj.style.color='#000000'
}

function mOut(id)
{
	obj = document.getElementById(id);
	obj.style.color='#FFFFFF'
}

function edita(e,obj,dest)
{
	var b=1;
	var edtBox = z('edtBox');
	edtBox.style.display='block';
	edtBox.style.top=(findPosY(obj)-23)+'px';
	edtBox.style.left=findPosX(obj)+'px';

	var btCancel = z('edCancel');
	btCancel.style.display='block';
	var btSave = z('edSave');
	btSave.style.display='block';
	var btEdit = z('edEdit');
	btEdit.style.display='none';

	editando = true;
	obj.editando=true;
	var id = obj.id;
	var oldValue=obj.innerHTML;
	var objValue = str_replace(obj.innerHTML,'\n','');
	objValue = str_replace(objValue,'<br>','\n');
	objValue = objValue.trim();
	var idStrip = id.split('.');
	var edtObj = createEdtObj(idStrip[0],idStrip[1],objValue,obj,oldValue);
	obj.innerHTML = '';
	obj.appendChild(edtObj);
	edtObj.focus();
}

function createEdtObj(tipo,fldName,valor,obj,oldValue)
{
	var doc = document;
	switch(tipo)
	{
		case 'text':
			var objRet = doc.createElement("input");
			objRet.type = "text";
			objRet.name = fldName;
			objRet.value = valor;
		break;
		case 'textarea':
			var objRet = doc.createElement("textarea");
			objRet.name = fldName;
			objRet.value = valor;
		break;		
	}
	var btSave = z('edSave');
	btSave.onclick=function(){ endEdit(obj,objRet,oldValue,false)};
	var btCancel = z('edCancel');
	btCancel.onclick=function(){ endEdit(obj,objRet,oldValue,true)};

	objRet.style.border='none';
	objRet.style.backgroundColor='rgb(240,240,240)';
	objRet.style.fontFamily = obj.style.fontFamily;
	objRet.style.fontSize = obj.style.fontSize;
	objRet.style.color='rgb(0,0,0)';
	objRet.style.width = (obj.offsetWidth) + 'px';
	objRet.style.height = (obj.offsetHeight) + 'px';
	
	return objRet;
}

function endEdit(obj,objEdit,oldValue,cancela)
{
	var edtBox = z('edtBox');
	edtBox.style.display='none';
	editando = false;
	obj.editando=false;
	if(!cancela)
	{
		obj.innerHTML = str_replace(objEdit.value,'\n','<br>');
	} else
	{
		obj.innerHTML = oldValue;
	}
	var id = obj.id;
	var objValue = str_replace(obj.innerHTML,'\n','');
	objValue = str_replace(objValue,'<br>','\n');
	if(!cancela)
	{
		commitChanges(id,objValue);
	}
}

function commitChanges(strId,valor)
{
	var idStrip = strId.split('.');
	var ccbFieldName = idStrip[1];
	var ccbClassName = idStrip[2];
	var ccbID = idStrip[3];
	var sendValue = escape(valor);
	saveInfo(ccbClassName,ccbFieldName,ccbID,sendValue);
//	alert(ccbFieldName + ' :: ' + ccbClassName + ' :: ' + ccbID);
}

function carrega()
{
	document.body.oncontextmenu = function(e) { 
	if(e.target.tagName=='INPUT' || e.target.tagName=='TEXTAREA')
	{
		return false;
	}; 
	};
}

function str_replace(haystack, needle, replacement) {
	var temp = haystack.split(needle);
	return temp.join(replacement);
}

function apareceLinha(obj)
{
	var corOrig=obj.style.backgroundColor;
	if(!obj.attributes['bgorg'])
	{
		obj.attributes['bgorg']=corOrig;
	}
	var manip = corOrig;
	manip = manip.replace('rgb(','');
	manip = manip.replace(')','');
	manip = manip.split(',');
	for(var a in manip)
	{
		manip[a] = Math.floor(manip[a]) + 10;
		if(manip[a]>255) manip[a]=255;
	}
	obj.style.backgroundColor='rgb(' + manip[0] + ',' + manip[1]+ ',' + manip[2]+')';
	
}

function apagaLinha(obj)
{
	obj.style.backgroundColor = obj.attributes['bgorg'];
	obj.attributes['bgorg']=false;
}

function findPosX(obj)
{
var curleft = 0;
if(obj.offsetParent)
	while(1) 
	{
	  curleft += obj.offsetLeft;
	  if(!obj.offsetParent)
		break;
	  obj = obj.offsetParent;
	}
else if(obj.x)
	curleft += obj.x;
return curleft;
}

function findPosY(obj)
{
var curtop = 0;
if(obj.offsetParent)
	while(1)
	{
	  curtop += obj.offsetTop;
	  if(!obj.offsetParent)
		break;
	  obj = obj.offsetParent;
	}
else if(obj.y)
	curtop += obj.y;
return curtop;
}

function edOver(obj)
{
	if(loggedAdm)
	{
		var edtBox = z('edtBox');
		edtBox.style.display='block';
		edtBox.style.top=(findPosY(obj))+'px';
		edtBox.style.left=findPosX(obj)+'px';
		var btEdit = z('edEdit');
		btEdit.onclick=function(e){ edita(e,obj,'#'); };
		var btCancel = z('edCancel');
		btCancel.style.display='none';
		var btSave = z('edSave');
		btSave.style.display='none';

	}
}

function edOut(obj)
{
	if(loggedAdm)
	{
		var edtBox = z('edtBox');
		edtBox.style.display='none';
	}
}