/*
Title: core.js
Funções de uso comum das interfaces dos editores
Licenca:
GPL2
i3Geo Interface Integrada de Ferramentas de Geoprocessamento para Internet
Direitos Autorais Reservados (c) 2006 Ministério do Meio Ambiente Brasil
Desenvolvedor: Edmar Moretti edmar.moretti@mma.gov.br
Este programa é software livre; você pode redistribuí-lo
e/ou modificá-lo sob os termos da Licença Pública Geral
GNU conforme publicada pela Free Software Foundation;
Este programa é distribuído na expectativa de que seja útil,
porém, SEM NENHUMA GARANTIA; nem mesmo a garantia implícita
de COMERCIABILIDADE OU ADEQUAÇÃO A UMA FINALIDADE ESPECÍFICA.
Consulte a Licença Pública Geral do GNU para mais detalhes.
Você deve ter recebido uma cópia da Licença Pública Geral do
GNU junto com este programa; se não, escreva para a
Free Software Foundation, Inc., no endereço
59 Temple Street, Suite 330, Boston, MA 02111-1307 USA.
Arquivo:
i3geo/admin/js/core.js
*/
/*
Function: $i
Pega um objeto do documento.
Exemplo: $i("box1")
Parâmetros:
id - id do objeto
Retorno:
object - objeto javaScript
*/
var $i = function(id)
{return document.getElementById(id);};
/*
Variable: $mapfiles
Armazena o objeto com a lista de mapfiles
*/
var $mapfiles = "";
/*
Variable: $tags
Armazena o objeto com a lista de tags
*/
var $tags = "";
/*
Variable: $perfis
Armazena o objeto com a lista de perfis
*/
var $perfis = "";
function cabecalhoGeral(id,excluir){
var i,n,temp,
ins = "
";
}
}
/*
Function: core_handleFailure
Processa o retorno da chamada em ajax quando tiver falhado.
Parameters:
o - string retornada pelo ajax
*/
function core_handleFailure(o,texto)
{
//div onde será mostrado o log
//alert(texto)
if(!$i('logajax'))
{return;}
log = $i('logajax');
//YAHOO.log("The failure handler was called. tId: " + o.tId + ".", "info", "example");
if(o.responseText !== undefined)
{
if(o.statusText != "OK"){
log.innerHTML = "
Transaction id: " + o.tId + "
";
log.innerHTML += "
HTTP status: " + o.status + "
";
log.innerHTML += "
Status code message: " + o.statusText + "
";
log.innerHTML += "
PHP message: " + texto + "
";
}
}
if (!YAHOO.example.container.wait)
{
YAHOO.example.container.wait = new YAHOO.widget.Panel("wait",{width: "240px",fixedcenter: true,close: true,draggable: false,zindex:4,modal: true,visible: false});
YAHOO.example.container.wait.setHeader("Aguarde...");
YAHOO.example.container.wait.render(document.body);
}
else
{YAHOO.example.container.wait.setBody(log.innerHTML);}
}
/*
Function: core_makeRequest
Executa uma chamada em ajax.
Parameters:
sUrl - url que será executada
callback - função que processará o retorno
tipo - GET ou POST
*/
function core_makeRequest(sUrl,callback,tipo)
{
var sUrl = escape(sUrl);
var re = new RegExp("%3F", "g");
var sUrl = sUrl.replace(re,'?');
var re = new RegExp("%3D", "g");
var sUrl = sUrl.replace(re,'=');
var re = new RegExp("%26", "g");
var sUrl = sUrl.replace(re,'&');
//alert(sUrl)
if(arguments.length == 2)
{var tipo = "GET";}
var request = YAHOO.util.Connect.asyncRequest(tipo, sUrl, callback);
//YAHOO.log("Initiating request; tId: " + request.tId + ".", "info", "example");
}
/*
Function: core_carregando
Mostra uma janela de aguarde
Parameters:
tipo - ativa|desativa|string com uma mensagem
*/
function core_carregando(tipo)
{
if (!YAHOO.example.container.wait)
{
YAHOO.example.container.wait = new YAHOO.widget.Panel("wait",{width: "240px",fixedcenter: true,close: true,draggable: false,zindex:4,modal: true,visible: false});
YAHOO.example.container.wait.setHeader("Aguarde...");
YAHOO.example.container.wait.setBody("");
YAHOO.example.container.wait.render(document.body);
}
else
{YAHOO.example.container.wait.show();}
YAHOO.example.container.wait.setBody("");
if(tipo == "ativa")
{YAHOO.example.container.wait.show();}
if(tipo == "desativa")
{YAHOO.example.container.wait.hide();}
if(tipo != "ativa" && tipo != "desativa")
{YAHOO.example.container.wait.setBody(" "+tipo);}
}
/*
Function: core_dialogoContinua
Mostra um diálogo do tipo sim não
Parameters:
handleYes - função para sim
handleNo - função para não
mensagem - mensagem do diálogo
largura - largura do diálogo em px
*/
function core_dialogoContinua(handleYes,handleNo,mensagem,largura,cabecalho)
{
if(!cabecalho || cabecalho === ""){
cabecalho = "Tem certeza?";
}
// Instantiate the Dialog
YAHOO.namespace("continua.container");
YAHOO.continua.container.simpledialog1 =
new YAHOO.widget.SimpleDialog("simpledialog1",
{ width: largura+"px",
fixedcenter: true,
visible: false,
draggable: false,
close: true,
text: mensagem,
icon: YAHOO.widget.SimpleDialog.ICON_HELP,
modal: true,
constraintoviewport: true,
buttons: [ { text:"Sim", handler:handleYes, isDefault:true },
{ text:"Não", handler:handleNo } ]
} );
YAHOO.continua.container.simpledialog1.setHeader(cabecalho);
YAHOO.continua.container.simpledialog1.render(document.body);
YAHOO.continua.container.simpledialog1.show();
}
/*
Function: core_dialogoPergunta
Mostra um diálogo do tipo sim não com uma pergunta
Parameters:
handleYes - função para sim
handleNo - função para não
mensagem - mensagem do diálogo
largura - largura do diálogo em px
*/
function core_dialogoPergunta(handleYes,handleNo,mensagem,largura)
{
// Instantiate the Dialog
YAHOO.namespace("continua.container");
YAHOO.continua.container.simpledialog1 =
new YAHOO.widget.SimpleDialog("simpledialog1",
{ width: largura+"px",
fixedcenter: true,
visible: false,
draggable: false,
close: true,
text: mensagem,
icon: "",
modal: true,
constraintoviewport: true,
buttons: [ { text:"Continua", handler:handleYes, isDefault:true },
{ text:"Cancela", handler:handleNo } ]
} );
//YAHOO.continua.container.simpledialog1.setHeader("Tem certeza?");
YAHOO.continua.container.simpledialog1.render(document.body);
YAHOO.continua.container.simpledialog1.show();
}
/*
Function: core_ativaPainelAjuda
Parameters:
id - id do elemento que receberá o painel
botao - id do elemento que deverá ser lcicado para abrir o painel
*/
function core_ativaPainelAjuda(id,botao)
{
$i(id).style.display = "block";
if(!YAHOO.example.container.panelAjuda)
{
YAHOO.example.container.panelAjuda = new YAHOO.widget.Panel(id, { width:"350px", height:"200px",overflow:"auto", visible:false,constraintoviewport:true } );
YAHOO.example.container.panelAjuda.render();
}
if(arguments.length == 2)
YAHOO.util.Event.addListener(botao, "click", YAHOO.example.container.panelAjuda.show, YAHOO.example.container.panelAjuda, true);
else
YAHOO.example.container.panelAjuda.show();
}
/*
Function: core_ativaPainelTexto
Parameters:
id - id do elemento que receberá o painel
*/
function core_ativaPainelTexto(id)
{
YAHOO.example.container.panelTexto = new YAHOO.widget.Panel(id, { width:"350px", height:"200px",overflow:"auto", visible:false,constraintoviewport:true } );
YAHOO.example.container.panelTexto.render();
YAHOO.example.container.panelTexto.show();
}
/*
function: core_pegaPerfis
Pega a lista de perfis
Parameters:
funcao - (opcional) string com o nome da funcao que será executada após a chamada ajax ter tido sucesso
Return
$perfis - variável global com o objeto perfis
$perfisArray - array com a lista de perfis
*/
function core_pegaPerfis(funcao)
{
if(arguments.length == 0)
{var funcao = "";}
//pega a lista de perfis
var sUrl = "../php/menutemas.php?funcao=pegaPerfis";
var callback =
{
success:function(o)
{
try
{
$perfis = YAHOO.lang.JSON.parse(o.responseText);
$perfisArray = new Array();
for (i=0;i<$perfis.length;i++)
{$perfisArray.push($perfis[i].perfil);}
if(funcao != "")
eval(funcao);
}
catch(e){core_handleFailure(o,o.responseText);}
},
failure:core_handleFailure,
argument: { foo:"foo", bar:"bar" }
};
core_makeRequest(sUrl,callback)
}
/*
function: core_pegaMapfiles
Pega a lista de mapfiles
Parameters:
funcao - (opcional) nome da funcao que será executada ao terminar a busca pelos dados
letra - (opcional) letra inicial utilizada para filtrar a lista
filtro - (opcional) string com o filtro, por exemplo, "'download_tema' = 'SIM'"
*/
function core_pegaMapfiles(funcaoM,letra,filtro)
{
if(arguments.length == 0){
var funcao = "";
var letra = "";
var filtro = "";
}
if(arguments.length == 1){
var letra = "";
var filtro = "";
}
if(arguments.length == 2){
var filtro = "";
}
var sUrl = "../php/menutemas.php?funcao=listaMapsTemas&letra="+letra+"&filtro="+filtro;
var callbackM =
{
success:function(o)
{
try
{
$mapfiles = YAHOO.lang.JSON.parse(o.responseText);
if(funcaoM != "")
eval(funcaoM);
}
catch(e){core_handleFailure(o,o.responseText);}
},
failure:core_handleFailure,
argument: { foo:"foo", bar:"bar" }
};
core_makeRequest(sUrl,callbackM)
}
/*
Function: core_comboMapfiles
Cria um combo para escolha do mapfile
Parameters:
onde - id do elemento que receberá o combo
id - id do combo que será criado
marcar - valor que será marcado como selecionado
funcao - string com o nome da função que será executada no evento onchange
recarrega {booblean} - força recarregar o combo de mapfiles
*/
function core_comboMapfiles(onde,id,marcar,funcao,recarrega)
{
if(arguments.length == 3)
{var funcao = "";}
if(!recarrega)
{recarrega = false;}
if($mapfiles == "" || recarrega === true)
{
core_pegaMapfiles("core_comboMapfiles('"+onde+"','"+id+"','"+marcar+"','"+funcao+"')")
}
else
{
if (funcao != "")
{var funcao = "onchange='"+funcao+"'";}
ins = ""
$i(onde).innerHTML = ins;
}
}
/*
Function: core_comboPerfis
Cria um combo para escolha de perfil
Parameters:
onde - id do elemento que receberá o combo
id - id do combo que será criado
marcar - valor que será marcado como selecionado
funcao - string com o nome da função que será executada no evento onchange
*/
function core_comboPerfis(onde,id,marcar,funcao)
{
if(arguments.length == 3)
{var funcao = "";}
if($perfis == "")
{
core_pegaPerfis("core_comboPerfis('"+onde+"','"+id+"','"+marcar+"','"+funcao+"')")
}
else
{
if (funcao != "")
{var funcao = "onchange='"+funcao+"'";}
ins = ""
$i(onde).innerHTML = ins;
}
}
/*
Function: core_comboPranchas
Cria um combo para escolha de pranchas de um atlas
Parameters:
onde - id do elemento que receberá o combo
id - id do combo que será criado
marcar - valor que será marcado como selecionado
funcao - string com o nome da função que será executada no evento onchange
*/
function core_comboPranchas(onde,id,marcar,funcao,id_atlas)
{
var sUrl = "../php/atlas.php?funcao=pegaPranchas&id_atlas="+id_atlas;
var callback =
{
success:function(o)
{
try
{
var valores = YAHOO.lang.JSON.parse(o.responseText);
if(arguments.length == 3)
{var funcao = "";}
if (funcao != "")
{var funcao = "onchange='"+funcao+"'";}
ins = ""
$i(onde).innerHTML = ins;
}
catch(e){core_handleFailure(e,o.responseText);}
},
failure:core_handleFailure,
argument: { foo:"foo", bar:"bar" }
};
core_makeRequest(sUrl,callback)
}
/*
Function: core_comboGrupos
Cria um combo para escolha de um grupo
Parameters:
onde - id do elemento que receberá o combo
id - id do combo que será criado
marcar - valor que será marcado como selecionado
funcao - string com o nome da função que será executada no evento onchange
*/
function core_comboGrupos(onde,id,marcar,funcao)
{
var sUrl = "../php/menutemas.php?funcao=pegaGrupos";
var callback =
{
success:function(o)
{
try
{
var valores = YAHOO.lang.JSON.parse(o.responseText);
if(arguments.length == 3)
{var funcao = "";}
if (funcao != "")
{var funcao = "onchange='"+funcao+"'";}
ins = ""
$i(onde).innerHTML = ins;
}
catch(e){core_handleFailure(e,o.responseText);}
},
failure:core_handleFailure,
argument: { foo:"foo", bar:"bar" }
};
core_makeRequest(sUrl,callback)
}
/*
Function: core_comboSubGrupos
Cria um combo para escolha de um sub-grupo
Parameters:
onde - id do elemento que receberá o combo
id - id do combo que será criado
marcar - valor que será marcado como selecionado
funcao - string com o nome da função que será executada no evento onchange
*/
function core_comboSubGrupos(onde,id,marcar,funcao)
{
var sUrl = "../php/menutemas.php?funcao=pegaSubGrupos";
var callback =
{
success:function(o)
{
try
{
var valores = YAHOO.lang.JSON.parse(o.responseText);
if(arguments.length == 3)
{var funcao = "";}
if (funcao != "")
{var funcao = "onchange='"+funcao+"'";}
ins = ""
$i(onde).innerHTML = ins;
}
catch(e){core_handleFailure(e,o.responseText);}
},
failure:core_handleFailure,
argument: { foo:"foo", bar:"bar" }
};
core_makeRequest(sUrl,callback)
}
/*
Function: core_comboTemas
Cria um combo para escolha de um tema
Parameters:
onde - id do elemento que receberá o combo
id - id do combo que será criado
marcar - valor que será marcado como selecionado
funcao - string com o nome da função que será executada no evento onchange
*/
function core_comboTemas(onde,id,marcar,funcao)
{
var sUrl = "../php/menutemas.php?funcao=pegaTemas2";
var callback =
{
success:function(o)
{
try
{
var valores = YAHOO.lang.JSON.parse(o.responseText);
if(arguments.length == 3)
{var funcao = "";}
if (funcao != "")
{var funcao = "onchange='"+funcao+"'";}
ins = ""
$i(onde).innerHTML = ins;
}
catch(e){core_handleFailure(e,o.responseText);}
},
failure:core_handleFailure,
argument: { foo:"foo", bar:"bar" }
};
core_makeRequest(sUrl,callback)
}
/*
function: core_pegaTags
Pega a lista de tags
Parameters:
funcao - (opcional) nome da funcao que será executada ao terminar a busca pelos dados
*/
function core_pegaTags(funcao)
{
if(arguments.length == 0)
{var funcao = "";}
var sUrl = "../php/menutemas.php?funcao=pegaTags";
var callback =
{
success:function(o)
{
try
{
$tags = YAHOO.lang.JSON.parse(o.responseText);
if($tags == ""){$tags = " ";}
if(funcao != "")
eval(funcao);
}
catch(e){core_handleFailure(e,o.responseText);}
},
failure:core_handleFailure,
argument: { foo:"foo", bar:"bar" }
};
core_makeRequest(sUrl,callback)
}
/*
Function: core_comboTags
Cria um combo para escolha de tags
Parameters:
onde - id do elemento que receberá o combo
id - id do combo que será criado
marcar - valor que será marcado como selecionado
change - nome da função do evento onchange
*/
function core_comboTags(onde,id,change)
{
if($tags == "")
{
core_pegaTags("core_comboTags('"+onde+"','"+id+"','"+change+"')")
}
else
{
ins = ""
$i(onde).innerHTML = ins;
}
}
/*
Function: gera uma janela flutuante com opções de escolha baseadas em checkbox
Parameters:
valores - array com os valores de cada checkbox
textos - array com os nomes de cada checkbox
selecionados - array com os valores marcados
target - objeto para receber o resultado
record - objeto record
key - chave (nome do item)
*/
function core_menuCheckBox(valores,textos,selecionados,target,record,key)
{
function on_menuCheckBoxChange(p_oEvent)
{
var ins = "";
if(p_oEvent.newValue.get("value") == "OK")
{
var cks = $i("core_menuCK_bd").getElementsByTagName("input");
var ins = new Array();
for (i=0;i"
record.setData(key,ins.toString());
}
YAHOO.example.container.panelCK.destroy();
YAHOO.example.container.panelCK = null;
};
if(!YAHOO.example.container.panelCK)
{
var novoel = document.createElement("div");
novoel.id = "core_menuCK";
var ndiv = document.createElement("div");
ndiv.className= "yui-dt-editor";
ndiv.style.height = "144px";
ndiv.style.overflow = "auto";
ndiv.innerHTML = "";
novoel.appendChild(ndiv);
document.body.appendChild(novoel);
var og_core = new YAHOO.widget.ButtonGroup({id:"okcancel_checkbox_id", name:"okcancel_checkbox_id", container:"core_menuCK_bd" });
og_core.addButtons([
{ label: "OK", value: "OK", checked: false},
{ label: "Cancel", value: "CANCEL", checked: false }
]);
og_core.on("checkedButtonChange", on_menuCheckBoxChange);
YAHOO.example.container.panelCK = new YAHOO.widget.Overlay("core_menuCK", { zindex:"100",close:false,underlay:false,width:"200px", height:"200px",overflow:"auto", visible:false,constraintoviewport:true } );
YAHOO.example.container.panelCK.render();
}
var onde = $i("core_menuCK_bd");
onde.innerHTML = "";
for (i=0;i"+textos[i]+" ";
novoCK.innerHTML = ins;
onde.appendChild(novoCK);
}
YAHOO.example.container.panelCK.moveTo(YAHOO.util.Dom.getX(target),YAHOO.util.Dom.getY(target));
YAHOO.example.container.panelCK.show();
}
/*
Function: core_combosimnao
Retorna os itens option de um combo sim nao
*/
function core_combosimnao(marcar)
{
var ins = "";
ins += "";
ins += "";
return(ins)
}
/*
Function: core_comboObjeto
Retorna os itens option de um combo baseado em um objeto json
*/
function core_comboObjeto(obj,valor,texto,marcar,texto2)
{
var ins = "";
for (var k=0;k"+t+"";
}
return(ins)
}
/*
Function: core_geraLinhas
Gera campos de formulário
Parameters:
dados - objeto no formato {"linhas":[{titulo:"Nome do tema:",size:"50",id:"Enome_tema",value:i.nome_tema,tipo:"text",div:""}]}
*/
function core_geraLinhas(dados)
{
var nparam = dados.linhas.length;
var contaParam = 0
var resultado = "";
core_geralinhasEscondeAjuda = function(id){
var a = $i(id+"_ajuda"),
i = $i(id+"_imgajuda");
if(a.style.display == "block"){
a.style.display = "none";
i. src = "../../imagens/desce.gif";
}
else{
a.style.display = "block";
i. src = "../../imagens/sobe.gif";
}
};
do
{
var p = dados.linhas[contaParam];
if(p.tipo == "text" || p.tipo == "cor")
{
if(!p.size){p.size = "50";}
if(p.ajuda)
{
if(p.id !== "")
{var idajuda = p.id + contaParam;}
else{
var idajuda = "a"+parseInt(255*(Math.random()),10);
}
//var temp = "$i('"+idajuda+"_ajuda').style.display='block' "
resultado += "
";
}
if(p.div)
{resultado += p.div;}
}
contaParam++
}
while(contaParam < nparam)
return(resultado)
}
/*
Function: core_ativaBotaoAdicionaLinha
Ativa o botão que adiciona uma linha em uma tabela no banco de dados e na interface HTML
Essa função utiliza o objeto datatable que deve estar armazenado na variável myDataTable
Parameters:
myDataTable - objeto dataTable do YUI
sUrl - url com o programa que será executado no servidor
idBotao - id do elemento com o botão
nomeFuncao - nome da função que será executada ao concluir a adição da linha
*/
function core_ativaBotaoAdicionaLinha(sUrl,idBotao,nomeFuncao)
{
if(arguments.length == 1)
{var idBotao = "adiciona";}
if(arguments.length < 3)
var nomeFuncao = "";
var adicionalinha = function()
{
core_carregando("ativa");
core_carregando(" adicionando um novo registro");
var callback =
{
success:function(o)
{
var texto = "";
try
{
core_carregando("desativa");
if(nomeFuncao != "")
{eval(nomeFuncao+"()");}
else{
texto = YAHOO.lang.JSON.parse(o.responseText)[0];
if(texto === "")
{texto = "Clique para editar";}
myDataTable.addRow(texto,0);
}
}
catch(e){core_handleFailure(e,o.responseText);}
},
failure:core_handleFailure,
argument: { foo:"foo", bar:"bar" }
};
core_makeRequest(sUrl,callback)
};
//cria o botão de adição de um novo menu
var adiciona = new YAHOO.widget.Button(idBotao,{ onclick: { fn: adicionalinha } });
}
/*
Function: core_pegaDados
Busca dados no servidor via Ajax e executa uma função de retorno com os daods
Parameters:
mensagem - mensagem que será mostrada na tela
sUrl - url do programa que será executado no servidor
funcaoRetorno - funcao que será executada ao terminar a busca pelos dados
*/
function core_pegaDados(mensagem,sUrl,funcaoRetorno)
{
if("mensagem" != "")
core_carregando(mensagem);
var callback =
{
success:function(o)
{
try
{
if(funcaoRetorno != "")
{eval(funcaoRetorno+"(YAHOO.lang.JSON.parse(o.responseText))");}
core_carregando("desativa");
}
catch(e)
{
if("mensagem" != "")
{core_carregando("desativa");}
core_handleFailure(o,o.responseText);
}
},
failure:core_handleFailure,
argument: { foo:"foo", bar:"bar" }
};
core_makeRequest(sUrl,callback)
}
/*
Function: core_gravaLinha
Grava um registro no banco de dados e atualiza o datatable atual
Essa função utiliza o objeto datatable que deve estar armazenado na variável myDataTable
Parameters:
mensagem - mensagem que será mostrada na tela
row - objeto row que foi clicado pelo usuário. Utilizado para se obter os daods do recordset
sUrl - url do programa que será executado
nomeFuncao - nome da funcao que sera executada após gravar os dados (opcional)
*/
function core_gravaLinha(mensagem,row,sUrl,nomeFuncao)
{
core_carregando("ativa");
core_carregando(mensagem);
if(arguments.length < 4)
var nomeFuncao = "";
var callback =
{
success:function(o)
{
core_carregando("desativa");
var rec = myDataTable.getRecordSet().getRecord(row);
var linha = myDataTable.getTrEl(rec);
if(nomeFuncao != "")
{
eval(nomeFuncao+"()")
try
{myDataTable.updateRow(rec,YAHOO.lang.JSON.parse(o.responseText)[0])}
catch(e){}
}
else
{
myDataTable.updateRow(rec,YAHOO.lang.JSON.parse(o.responseText)[0])
}
linha.style.color = "";
linha.style.textDecoration = "none";
},
failure:core_handleFailure,
argument: { foo:"foo", bar:"bar" }
};
core_makeRequest(sUrl,callback)
}
/*
Function: core_excluiLinha
Excluí um registro no banco de dados e atualiza o datatable.
Essa função utiliza o objeto datatable que deve estar armazenado na variável myDataTable
Parameters:
sUrl - url do programa que será executado
row - objeto row de um datatable
mensagem -
*/
function core_excluiLinha(sUrl,row,mensagem,cabecalho)
{
if(!cabecalho){
cabecalho = "";
}
//dialogo
// Define various event handlers for Dialog
var handleYes = function()
{
this.hide();
core_carregando("ativa");
core_carregando(mensagem);
var callback =
{
success:function(o)
{
try
{
if(YAHOO.lang.JSON.parse(o.responseText) == "erro")
{
core_carregando("Não foi possível excluir. Verifique se não existem outras tabelas com registros vinculados a este");
setTimeout("core_carregando('desativa')",3000)
}
else
{
myDataTable.deleteRow(row);
core_carregando("desativa");
}
}
catch(e){core_handleFailure(o,o.responseText);}
},
failure:core_handleFailure,
argument: { foo:"foo", bar:"bar" }
};
core_makeRequest(sUrl,callback)
};
var handleNo = function()
{
this.hide();
};
var mensagem = "Exclui o registro?";
var largura = "300"
core_dialogoContinua(handleYes,handleNo,mensagem,largura,cabecalho)
}
/*
Function: core_excluiNoTree
Excluí um registro no banco de dados e atualiza o treeview.
Essa função utiliza o objeto treeview que deve estar armazenado na variável tree
Parameters:
sUrl - url do programa que será executado
no - objeto no de um treeview
mensagem -
*/
function core_excluiNoTree(sUrl,no,mensagem,cabecalho)
{
if(!cabecalho){
cabecalho = "";
}
//dialogo
// Define various event handlers for Dialog
var handleYes = function()
{
this.hide();
core_carregando("ativa");
core_carregando(mensagem);
var callback =
{
success:function(o)
{
try
{
if(YAHOO.lang.JSON.parse(o.responseText) == "erro")
{
core_carregando("Não foi possível excluir. Verifique se não existem outras tabelas com registros vinculados a este");
setTimeout("core_carregando('desativa')",3000)
}
else
{
if(no){
tree.removeNode(no);
tree.draw();
}
core_carregando("desativa");
}
}
catch(e){core_handleFailure(o,o.responseText);}
},
failure:core_handleFailure,
argument: { foo:"foo", bar:"bar" }
};
core_makeRequest(sUrl,callback)
};
var handleNo = function()
{
this.hide();
};
var mensagem = "Exclui o registro?";
var largura = "300"
core_dialogoContinua(handleYes,handleNo,mensagem,largura,cabecalho)
}
/**
Function: core_montaEditor
Monta uma janela flutuante com um formulário.
O editor possui um div com id=editor_bd que deve ser usado para incluir o formulário.
Parameters:
funcaoOK - string com o nome da função que será executada quando o botão OK for pressionado.
funcaoClose - nome da funcao que será executada quando a janela for fechada
*/
function core_montaEditor(funcaoOK,w,h,funcaoClose)
{
if(arguments.length == 0)
{
var funcaoOK = "";
var w = "400px";
var h = w;
}
if(arguments.length < 2)
{
var w = "400px";
var h = w;
}
if(!$i("janela_editor"))
{
var novoel = document.createElement("div");
novoel.id = "janela_editor";
var ins = '
Editor
';
ins += "
";
ins += "";
ins += "";
novoel.innerHTML = ins;
document.body.appendChild(novoel);
if(funcaoOK != "")
{
var lb = $i("okcancel_checkbox");
lb.innerHTML = "";
new YAHOO.widget.Button(
"okcancel_checkboxOK",
{onclick:{fn: function(){
eval(funcaoOK);
}}}
);
new YAHOO.widget.Button(
"okcancel_checkboxCANCEL",
{onclick:{fn: function(){
YAHOO.example.container.panelEditor.destroy();
YAHOO.example.container.panelEditor = null;
}}}
);
}
YAHOO.example.container.panelEditor = new YAHOO.widget.Panel("janela_editor", { fixedcenter:true,close:true,width:w, overflow:"auto",modal: false,visible:false,constraintoviewport:true } );
YAHOO.example.container.panelEditor.render();
}
else
{
if($i("editor_bd"))
{$i("editor_bd").innerHTML == "";}
}
var fecha = function()
{
try{
YAHOO.example.container.panelEditor.destroy();
YAHOO.example.container.panelEditor = null;
}
catch(e){}
try{
eval(funcaoClose+"()");
}
catch(e){};
}
YAHOO.util.Event.addListener(YAHOO.example.container.panelEditor.close, "click", fecha);
YAHOO.example.container.panelEditor.show();
}
/*
Function idiomaSel
Retorna o idioma selecionado pesquisando no elemento select com id = "idioma"
*/
function idiomaSel(){
var idioma = "pt";
if($i("idioma"))
{idioma = $i("idioma").value;}
return idioma;
}
function core_abreCor(janela,elemento)
{
if(i3GEO.configura == undefined )
{i3GEO.configura = {locaplic: "../.."};}
i3GEO.util.abreCor("",elemento,"rgb");
$i("i3geo_janelaCori").style.width = "350px";
$i("i3geo_janelaCori").style.height = "290px";
//i3GEO.janela.cria("350px","250px","../../ferramentas/colorpicker/index.htm?doc=&elemento="+elemento+"&tipo=rgb","","","Cor","i3geo_janelaCor",true);
}
function core_desativaforms(lista){
var n = lista.length,
i;
for (i=0;i -1) && (index + "core.js".length == src.length)) {
scriptLocation = src.slice(0, -"core.js".length);
break;
}
}
}
//
//arquivos javascript que serão carregados
//
/*
*/
var jsfiles = new Array(
"../../pacotes/yui290/build/utilities/utilities.js",
"../../pacotes/yui290/build/yahoo-dom-event/yahoo-dom-event.js",
"../../pacotes/yui290/build/element/element-min.js",
"../../pacotes/yui290/build/datasource/datasource-min.js",
"../../pacotes/yui290/build/datatable/datatable-min.js",
"../../pacotes/yui290/build/button/button-min.js",
"../../pacotes/yui290/build/dragdrop/dragdrop-min.js",
"../../pacotes/yui290/build/container/container-min.js",
"../../pacotes/yui290/build/connection/connection-min.js",
"../../pacotes/yui290/build/treeview/treeview.js",
"../../pacotes/yui290/build/json/json-min.js",
"../../pacotes/yui290/build/menu/menu-min.js",
"../../pacotes/yui290/build/editor/editor-min.js"
);
//
//arquivos css
//
var cssfiles =new Array(
"../html/admin.css",
"../../pacotes/yui290/build/fonts/fonts-min.css",
"../../pacotes/yui290/build/datatable/assets/skins/sam/datatable.css",
"../../pacotes/yui290/build/button/assets/skins/sam/button.css",
"../../pacotes/yui290/build/container/assets/skins/sam/container.css",
"../../pacotes/yui290/build/treeview/assets/skins/sam/treeview.css",
"../../pacotes/yui290/build/editor/assets/skins/sam/editor.css"
);
//
//carrega os arquivos js
//
var allScriptTags = "";
for (i = 0; i < jsfiles.length; i++)
{
var currentScriptTag = "";
allScriptTags += currentScriptTag;
}
document.write(allScriptTags);
//
//carrega os arquivos css
//
var allCssTags = "";
for (i = 0; i < cssfiles.length; i++)
{
var currentCssTag = "";
allCssTags += currentCssTag;
}
document.write(allCssTags);