/********************************************************************
* Biblioteca de funções em javascript do SmartCRM                   *
********************************************************************/


/********************************************************************
* Vai para a próxima aba do wizard                                  *
********************************************************************/
function showSheet(sheet1, sheet2) {
	document.getElementById(sheet1).style.display = 'none';
	document.getElementById(sheet2).style.display = 'block';
	moveToBegin();
}
/********************************************************************
* Verifica se tem que mostrar a aba ou não	                        *
********************************************************************/
function exibeumaarea( sheet  ) {
	showSheetOne( sheet );}

function exibearea( sheet  ) {
	exibeSheetOne( sheet ); }

function escondearea( sheet  ) {
	escondeSheetOne( sheet ); }

function ocultaarea( sheet  ) {
	escondeSheetOne( sheet ); }

function showSheetOne(sheet1) {
	//alert(document.getElementById(sheet1).style.display);
	
	if (document.getElementById(sheet1).style.display == 'none'){
		document.getElementById(sheet1).style.display = 'block';
	} else {
	
		document.getElementById(sheet1).style.display = 'none';
	}		
}

function escondeSheetOne(sheet1) {
	//alert(document.getElementById(sheet1).style.display);
		document.getElementById(sheet1).style.display = 'none';
}

function exibeSheetOne(sheet1) {
	//alert(document.getElementById(sheet1).style.display);
		document.getElementById(sheet1).style.display = 'block';
}

/********************************************************************
* Mostra o conteudo que está escondido                              *
********************************************************************/
function showQuestions(sheet, myLink) {
	//alert(sheet);
	//alert(document.getElementById(myLink));
	bt = document.getElementById(myLink);
	
	if (document.getElementById(sheet).style.display == 'none') {
		
		bt.innerHTML = '[-]';
		document.getElementById(sheet).style.display = 'block';	
	} else {
		bt.innerHTML = '[+]';
		document.getElementById(sheet).style.display = 'none';
	}
}
/*********************************************************************
* Oculta o td passado por parâmetro. Se já estiver oculto ele mostra *
*********************************************************************/
function showHideRightColumn() {
	myColumn	= document.getElementById('tdRight');
	voidColumn	= document.getElementById('tdVoid');
	mainColumn1	= document.getElementById('tdMain');
	mainColumn2	= document.getElementById('tdMain2');
	if (mainColumn1.className != 'mainBig') {
		myColumn.style.display		= 'none';
		voidColumn.style.display	= 'block';
		mainColumn1.className		= 'mainBig';
		mainColumn2.className		= 'mainBig';
	} else {
		myColumn.style.display		= 'block';
		voidColumn.style.display	= 'none';
		mainColumn1.className		= 'mainSmall';
		mainColumn2.className		= 'mainSmall';
	}
}

/********************************************************************
* Oculta todos as tabelas de opcoes e mostra o da opção selecionada *
********************************************************************/
function showTable (table) {
	
	i=0;
	x = eval('document.forms[0].'+table.name);
	
	for (i=0; i < x.length ; i++)
		document.getElementById('table'+x[i].value).style.display = 'none';
	document.getElementById('table'+table.value).style.display = 'block';
}
/********************************************************************
* Funções para gerenciar options de um select                       *
********************************************************************/
var newOptionsCount = 0;
function addOption (myForm, myInput, myList) {
	if (document.getElementById(myInput).value == ''){		
		alert('Você não pode inserir uma opção em branco!');
		return false;
	}
	myInput = document.getElementById(myInput);
	myList	= document.getElementById(myList);
	
	if (myInput.value) {
		createOption(myList, myInput.value, myInput.value);
		myInput.value = '';
	}
	
	try	{
		img		= myForm.img.value;
		tdImg	= document.getElementById('imgList');
		tdHTML	= tdImg.innerHTML;
		if (tdHTML.length / img.length < 7)
			tdImg.innerHTML += img;
	} catch (img) {
		
	}
	myInput.focus();
}
// Deleta o option
function deleteOption (myForm, myInput, myList) {
	if (document.getElementById(myList).value == ''){
		alert('Você precisa selecionar pelo menos uma opção!');
		return false;
	}
	myList	= document.getElementById(myList);
	myList.options[myList.selectedIndex] = null;	
	
	
	try	{
		img		= myForm.img.value;
		tdImg	= document.getElementById('imgList');		
		if (myList.length < 7)
			tdImg.innerHTML	= tdImg.innerHTML.substr(img.length +2);
	} catch (img) {
	}
}
//Cria uma nova opção para um select
function createOption(obj, optValue, optText) {
	newOptionsCount++;
	var opt = document.createElement('option');
	opt.value = 'new'+newOptionsCount+'_'+optValue;
	opt.innerText = optText;
	obj.appendChild(opt);
	return opt;
}
//adiciona a palavra quando o enter é pressionado
function addOptionByEnter (myForm, myInput, myList) {
	myInput2 = document.getElementById(myInput);
	if (event.keyCode == 13) {
		addOption(myForm, myInput, myList);
	}
	btsub = document.getElementById('btsub');
	myForm.resposta.focus();
}

/********************************************************************
* Essa função oculta todos os iframes do smartcrm e mostra somente  *
* o iframe passado por parametro                                    *
********************************************************************/
function showModule (module, url) {
	myModules = new Array;
	myModules[0]	= 'survey';
	myModules[1]	= 'cadastrobase';
	for (i=0;i<myModules.length ;i++) {
		top.document.getElementById(myModules[i]).style.display = 'none';
	}
	atual = top.document.getElementById(module);
	atual.style.display = 'block';
	loadPage(url);
}
function loadPage (url) {
	if (top.frames[1].document.location.href == 'about:blank' || top.frames[1].document.location.href != url) {
		top.frames[1].document.location.href = url;
	}
}

/********************************************************************
* Vai para a próxima aba                                            *
********************************************************************/
function showHideSheet(sheet1, sheet2) {
	document.getElementById(sheet1).style.display = 'none';
	document.getElementById(sheet2).style.display = 'block';
}

/********************************************************************
* Deixa a primeira div da lista visible e o resto hide              *
********************************************************************/
function showHideSheetGeneric(sheetList, bTop) {
	myMenu = new Array;
	myMenu = sheetList.split(",");
	// Oculta todos
	for (i=0;i<myMenu.length ;i++) {
		if (bTop){
			top.document.getElementById(trim(myMenu[i])).style.display = 'none';
		} else {
			document.getElementById(trim(myMenu[i])).style.display = 'none';
		}
	}
	// Mostra o menu que foi passado por parametro
	if (bTop){
		showMenu = top.document.getElementById(myMenu[0]);
	} else {
		showMenu = document.getElementById(myMenu[0]);
	}
	showMenu.style.display = 'block';
}
/************************************************************************************************
*  Trim																							*
************************************************************************************************/
function trim (str) {
	return str.replace(/^\s+/g, '').replace(/\s+$/g, '');
}

/*********************************************************************
*	Autor: Carlos Eduardo Maciel
*	Descrição: formata uma data em formato ISO YYYY-MM-DD
*********************************************************************/
function toISODate(strDate) {
	var reBR =  /^(\d{2})\/(\d{2})\/(\d{4})(\s\d{2}\:\d{2})?$/;
	var reISO = /^\d{4}\-\d{2}\-\d{2}(\s\d{2}\:\d{2})?$/;
	if ( strDate.match(reBR) ) {
		return strDate.replace(reBR, '$3-$2-$1$4');
	} else if ( strDate.match(reISO) ) {
		return strDate;
	} else {
		return '';
	}
}

//----------------------------------------------------------
//    FUNÇÃO PARA TROCA DE ABAS
//----------------------------------------------------------
function changeSheet(sheetName, activeSheet) {
	var hasSheets= true;
	var i=0;
	while (hasSheets) {
		try {
			i++;
			document.getElementById(sheetName + 'sheet' +i).className = 'inactiveSheet';
			document.getElementById(sheetName + 'sheetLink' +i).className = 'inactiveLink';
		} catch (e) {
			hasSheets = false;
		}
	}
	document.getElementById(sheetName + 'sheet' +activeSheet).className = 'activeSheet';
	document.getElementById(sheetName + 'sheetLink' +activeSheet).className = 'activeLink';
}
