From e52995268fef5e8f9f4f47d3b9c2bc5314d6c84f Mon Sep 17 00:00:00 2001 From: Edmar Moretti Date: Thu, 30 Jun 2016 00:36:25 -0300 Subject: [PATCH] Atualização admin1 --- admin1/dicionario/operacoes.js | 15 +++++---------- admin1/ferramentas/banco/index.php | 4 ++-- admin1/ferramentas/criabanco/exec.php | 8 ++++---- admin1/ferramentas/estatisticas/index.php | 3 ++- admin1/ferramentas/miniaturas/exec.php | 16 ++++++++-------- admin1/ferramentas/miniaturas/index.php | 2 +- admin1/head.js | 173 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ admin1/head.php | 148 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------------------------------------------------------------------ admin1/index.js | 173 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- admin1/index.php | 4 ++-- admin1/js/core.js | 130 ---------------------------------------------------------------------------------------------------------------------------------- admin1/usuarios/operacoes/exec.php | 159 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ admin1/usuarios/operacoes/index.js | 359 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ admin1/usuarios/operacoes/index.php | 111 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ferramentas/loginusuario/template_mst_bt.html | 12 +++++++----- 15 files changed, 915 insertions(+), 402 deletions(-) create mode 100755 admin1/head.js delete mode 100755 admin1/index.js create mode 100644 admin1/usuarios/operacoes/exec.php create mode 100644 admin1/usuarios/operacoes/index.js create mode 100755 admin1/usuarios/operacoes/index.php diff --git a/admin1/dicionario/operacoes.js b/admin1/dicionario/operacoes.js index bf92909..ac42959 100755 --- a/admin1/dicionario/operacoes.js +++ b/admin1/dicionario/operacoes.js @@ -2,7 +2,7 @@ i3GEOadmin.operacoes = {}; i3GEOadmin.operacoes.dicionario = { 'operacoes' : [ { - pt : "Administração do i3geo - Operações e papéis", + pt : "Operações e executores (papéis)", en : "", es : "" } ], @@ -12,12 +12,12 @@ i3GEOadmin.operacoes.dicionario = { es : "" } ], 'txtAjuda' : [ { - pt : "

Aqui são definidas quais funcionalidades serão controladas e quais papéis podem utilizá-las

Para que o controle funcione, o código do i3Geo deve ser modificado para que a validação seja realizada.

Usuários administradores podem acessar qualquer operação.", + pt : "Aqui são definidas quais funcionalidades serão controladas e quais papéis podem utilizá-las. Para que o controle funcione, o código do i3Geo deve ser modificado para que a validação seja realizada. Usuários administradores podem acessar qualquer operação.", en : "", es : "" } ], 'txtOperacoes' : [ { - pt : "

Papéis são pré-definidos no i3Geo e são atribuídos aos usuários individualmente. Para definir os papéis de cada usuário, utilize o editor de usuários.

", + pt : "Os tipos de papéis são pré-definidos e são atribuídos aos usuários individualmente. Para definir os papéis de cada usuário, utilize o editor de usuários.", en : "", es : "" } ], @@ -66,13 +66,8 @@ i3GEOadmin.operacoes.dicionario = { en : "", es : "" } ], - '' : [ { - pt : "", - en : "", - es : "" - } ], - '' : [ { - pt : "", + 'papeisv' : [ { + pt : "Papéis vinculados", en : "", es : "" } ], diff --git a/admin1/ferramentas/banco/index.php b/admin1/ferramentas/banco/index.php index 49862d4..bd28b6b 100755 --- a/admin1/ferramentas/banco/index.php +++ b/admin1/ferramentas/banco/index.php @@ -22,7 +22,7 @@ include "../../head.php";

Descrição da estrutura do banco de dados de administração

O arquivo menutemas/admin.db não existe. Utilize a opção existente no menu de administração para criar o banco de dados SQLITE."; + echo "
O arquivo menutemas/admin.db não existe. Utilize a opção existente no menu de administração para criar o banco de dados SQLITE.
"; exit; } $dbh = new PDO('sqlite:../../../admin/admin.db'); @@ -44,7 +44,7 @@ include "../../head.php"; } } echo "

SQL no padrão POSTGRES

"; - echo "

Após criar as tabelas no Postgres, vc deve definir as permissões para os usuários.

"; + echo "

Após criar as tabelas no Postgres, vc deve definir as permissões para os usuários.

"; echo "

Para usar outro banco de dados que não seja o default (SQLITE), você terá de alterar o programa i3geo/admin/php/conexao.php

"; foreach($resultado as $r){ if(mb_detect_encoding($r["sql"],'UTF-8, ISO-8859-1') == "UTF-8"){ diff --git a/admin1/ferramentas/criabanco/exec.php b/admin1/ferramentas/criabanco/exec.php index 2adf8a4..9a1c81e 100755 --- a/admin1/ferramentas/criabanco/exec.php +++ b/admin1/ferramentas/criabanco/exec.php @@ -20,7 +20,7 @@ include "index.php"; } else { $continua = verificaMaster ( $_POST ["usuario"], $_POST ["senha"], $i3geomaster ); if ($continua == false) { - echo "
Usuário não registrado em i3geo/ms_configura.php na variável i3geomaster
"; + echo "
Usuário não registrado em i3geo/ms_configura.php na variável i3geomaster
"; exit (); } } @@ -78,7 +78,7 @@ include "index.php"; if ($conexaoadmin == "") { if ($_POST ["mostraSoSQL"] != "on") { if (file_exists ( "../../../admin/admin.db" )) { - echo "
Arquivo admin/admin.db ja existe. Vc deve apagá-lo para poder criá-lo novamente caso precise
"; + echo "
Arquivo admin/admin.db ja existe. Vc deve apagá-lo para poder criá-lo novamente caso precise
"; } else { // TODO verificar ao fechar versao - caso tenha havido alteracoes no banco, gerar banco vazio copy ( "../../../admin/admin_vazio.db", "../../../admin/admin.db" ); @@ -97,7 +97,7 @@ include "index.php"; include ($conexaoadmin); } if (empty ( $dbhw )) { - echo "
Conexao com o banco não pode ser estabelecida
"; + echo "
Conexao com o banco não pode ser estabelecida
"; exit (); } $drivename = $dbhw->getAttribute ( PDO::ATTR_DRIVER_NAME ); @@ -242,7 +242,7 @@ include "index.php"; } ?>
-
Feito!
+
Feito!
diff --git a/admin1/ferramentas/estatisticas/index.php b/admin1/ferramentas/estatisticas/index.php index efd9e3d..5568a14 100755 --- a/admin1/ferramentas/estatisticas/index.php +++ b/admin1/ferramentas/estatisticas/index.php @@ -150,9 +150,10 @@ include "../../head.php"; echo "
  • "; } } - echo "
    ".date('l jS \of F Y h:i:s A')."
    "; + echo "
    ".date('l jS \of F Y h:i:s A')."
    "; ?> + - + + "; @@ -66,86 +67,101 @@ hr { #menuTpl a:focus, #menuTpl a:hover { } + #menuTpl ul { } + #menuTpl li { } -.navbar-collapse { max-height: 100% !important; } + +.navbar-collapse { + max-height: 100% !important; +} .btn.btn-fab.btn-fab-mini { - font-size: 12px; - height: 24px; - min-width: 24px; - padding-bottom: 5px; - padding-left: 5px; - padding-right: 5px; - padding-top: 5px; - width: 24px; + font-size: 12px; + height: 24px; + min-width: 24px; + padding-bottom: 5px; + padding-left: 5px; + padding-right: 5px; + padding-top: 5px; + width: 24px; } .btn.btn-fab.btn-fab-max { - font-size: 1.6em; - height: 40px; - min-width: 40px; - padding-bottom: 5px; - padding-left: 5px; - padding-right: 5px; - padding-top: 7px; - width: 40px; -} -body{ + font-size: 1.6em; + height: 40px; + min-width: 40px; + padding-bottom: 5px; + padding-left: 5px; + padding-right: 5px; + padding-top: 7px; + width: 40px; +} + +body { background-color: #fff; } + .marginBottom-0 { - margin-bottom:0; -} -.dropdown-submenu{ - position:relative; -} -.dropdown-submenu>.dropdown-menu{ - top:0; - left:100%; - margin-top:-6px; - margin-left:-1px; - -webkit-border-radius:0 6px 6px 6px; - -moz-border-radius:0 6px 6px 6px; - border-radius:0 6px 6px 6px; -} -.dropdown-submenu>a:after{ - display:block; - content:" "; - float:right; - width:0; - height:0; - border-color:transparent; - border-style:solid; - border-width:5px 0 5px 5px; - border-left-color:#cccccc; - margin-top:5px; - margin-right:-10px; -} -.dropdown-submenu:hover>a:after{ - border-left-color:#555; -} -.dropdown-submenu.pull-left{ - float:none; -} -.dropdown-submenu.pull-left>.dropdown-menu{ - left:-100%; - margin-left:10px; - -webkit-border-radius:6px 0 6px 6px; - -moz-border-radius:6px 0 6px 6px; - border-radius:6px 0 6px 6px; + margin-bottom: 0; +} + +.dropdown-submenu { + position: relative; +} + +.dropdown-submenu>.dropdown-menu { + top: 0; + left: 100%; + margin-top: -6px; + margin-left: -1px; + -webkit-border-radius: 0 6px 6px 6px; + -moz-border-radius: 0 6px 6px 6px; + border-radius: 0 6px 6px 6px; } + +.dropdown-submenu>a:after { + display: block; + content: " "; + float: right; + width: 0; + height: 0; + border-color: transparent; + border-style: solid; + border-width: 5px 0 5px 5px; + border-left-color: #cccccc; + margin-top: 5px; + margin-right: -10px; +} + +.dropdown-submenu:hover>a:after { + border-left-color: #555; +} + +.dropdown-submenu.pull-left { + float: none; +} + +.dropdown-submenu.pull-left>.dropdown-menu { + left: -100%; + margin-left: 10px; + -webkit-border-radius: 6px 0 6px 6px; + -moz-border-radius: 6px 0 6px 6px; + border-radius: 6px 0 6px 6px; +} + .dropdown-menu li { - overflow-x: hidden; - overflow-y: hidden; - position: unset; + overflow-x: hidden; + overflow-y: hidden; + position: unset; } -.navbar .dropdown-menu li > a, .navbar.navbar-default .dropdown-menu li > a { - font-size: 1em; + +.navbar .dropdown-menu li>a, .navbar.navbar-default .dropdown-menu li>a { + font-size: 1em; } @@ -164,7 +180,7 @@ body{ -
    {{atencao}}
    -
    {{{leiaMe}}}
    +
    {{atencao}}
    +
    {{{leiaMe}}}
    diff --git a/admin1/js/core.js b/admin1/js/core.js index 0183198..59418fb 100755 --- a/admin1/js/core.js +++ b/admin1/js/core.js @@ -416,28 +416,6 @@ tipo - ativa|desativa|string com uma mensagem */ function core_carregando(tipo) { - var img = "../../imagens/aguarde.gif"; - if(i3GEO && i3GEO.configura.locaplic){ - img = i3GEO.configura.locaplic+"/imagens/aguarde.gif"; - } - YAHOO.namespace("carregando.container"); - if (!YAHOO.carregando.container.wait) - { - YAHOO.carregando.container.wait = new YAHOO.widget.Panel("wait",{width: "240px",fixedcenter: true,close: true,draggable: false,zindex:4,modal: true,visible: false}); - YAHOO.carregando.container.wait.setHeader("Aguarde..."); - - YAHOO.carregando.container.wait.setBody(""); - YAHOO.carregando.container.wait.render(document.body); - } - else - {YAHOO.carregando.container.wait.show();} - YAHOO.carregando.container.wait.setBody(""); - if(tipo == "ativa") - {YAHOO.carregando.container.wait.show();} - if(tipo == "desativa") - {YAHOO.carregando.container.wait.hide();} - if(tipo != "ativa" && tipo != "desativa") - {YAHOO.carregando.container.wait.setBody(" "+tipo);} } /* Function: core_dialogoContinua @@ -1740,111 +1718,3 @@ function core_parseMustacheBody (hashMustache){ m = m.replace(re, '&'); document.body.innerHTML = m; } -// -//carregador de javascript -// -//define o local correto dos programas -// -(function(){ - var scriptLocation = ""; - var scripts = document.getElementsByTagName('script'); - for (var i = 0; i < scripts.length; i++) { - var src = scripts[i].getAttribute('src'); - if (src) { - var index = src.lastIndexOf("core.js"); - // is it found, at the end of the URL? - if ((index > -1) && (index + "core.js".length == src.length)) { - scriptLocation = src.slice(0, -"core.js".length); - break; - } - } - } - // - //arquivos javascript que serão carregados - // - /* - - - */ - var jsfiles = []; - var cssfiles = []; - if(typeof(i3GEO) !== 'undefined' && i3GEO.configura.locaplic){ - scriptLocation = ""; - jsfiles = []; - // - //arquivos css - // - cssfiles =new Array( - i3GEO.configura.locaplic+"/css/input.css", - i3GEO.configura.locaplic+"/admin/html/admin.css" - ); - } - else{ - 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", - "../../pacotes/yui290/build/resize/resize-min.js", - "../../pacotes/cpaint/cpaint2.inc.compressed.js", - "../../classesjs/compactados/mustache.js", - "../../classesjs/compactados/classe_i3geo_compacto.js", - "../../classesjs/compactados/classe_util_compacto.js", - "../../classesjs/compactados/classe_login_compacto.js", - "../../classesjs/compactados/classe_janela_compacto.js", - "../../classesjs/compactados/classe_php_compacto.js", - "../../classesjs/compactados/dicionario_compacto.js", - "../../classesjs/compactados/classe_idioma_compacto.js", - "../../classesjs/compactados/classe_guias_compacto.js", - "../../classesjs/compactados/classe_arvoredetemas_compacto.js" - ); - // - //arquivos css - // - cssfiles =new Array( - "../../pacotes/yui290/build/tabview/assets/skins/sam/tabview.css", - "../../pacotes/yui290/build/button/assets/skins/sam/button.css", - "../../pacotes/yui290/build/fonts/fonts-min.css", - "../../pacotes/yui290/build/datatable/assets/skins/sam/datatable.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", - "../../pacotes/yui290/build/resize/assets/skins/sam/resize.css", - "../../css/input.css", - "../../css/janelaflutuante.css", - "../html/admin.css" - ); - } - // - //carrega os arquivos js - // - var allScriptTags = ""; - for (var i = 0; i < jsfiles.length; i++) - { - var currentScriptTag = ""; - allScriptTags += currentScriptTag; - } - document.write(allScriptTags); - // - //carrega os arquivos css - // - var allCssTags = ""; - for (var i = 0; i < cssfiles.length; i++) - { - var currentCssTag = ""; - allCssTags += currentCssTag; - } - document.write(allCssTags); -})(); - - - diff --git a/admin1/usuarios/operacoes/exec.php b/admin1/usuarios/operacoes/exec.php new file mode 100644 index 0000000..7447780 --- /dev/null +++ b/admin1/usuarios/operacoes/exec.php @@ -0,0 +1,159 @@ +$o,"papeis"=>$papeis)); + break; + case "PEGAOPERACOES": + retornaJSON(pegaDados("SELECT id_operacao,codigo,descricao from ".$esquemaadmin."i3geousr_operacoes order by codigo")); + exit; + break; + case "PEGAPAPEISOPERACAO": + $dados = pegaDados("SELECT P.id_papel, P.nome, P.descricao, OP.id_operacao FROM ".$esquemaadmin."i3geousr_operacoes AS O JOIN ".$esquemaadmin."i3geousr_operacoespapeis AS OP ON O.id_operacao = OP.id_operacao JOIN ".$esquemaadmin."i3geousr_papeis AS P ON OP.id_papel = P.id_papel WHERE O.id_operacao = $id_operacao"); + $dados[] = array("id_papel"=>1,"nome"=>"admin","descricao"=>"admin"); + retornaJSON($dados); + exit; + break; + case "PEGADADOSOPERACAO": + retornaJSON(pegaDados("SELECT * from ".$esquemaadmin."i3geousr_operacoes WHERE id_operacao = $id_operacao")); + exit; + break; + case "ADICIONAPAPELOPERACOES": + adicionaPapelOperacoes(); + $dados = pegaDados("SELECT P.id_papel, P.nome, P.descricao, OP.id_operacao FROM ".$esquemaadmin."i3geousr_operacoes AS O JOIN ".$esquemaadmin."i3geousr_operacoespapeis AS OP ON O.id_operacao = OP.id_operacao JOIN ".$esquemaadmin."i3geousr_papeis AS P ON OP.id_papel = P.id_papel WHERE O.id_operacao = $id_operacao AND P.id_papel = $id_papel"); + retornaJSON($dados); + exit; + break; + case "EXCLUIRPAPELOPERACAO": + excluirPapelOperacao(); + retornaJSON("ok"); + exit; + break; + case "LISTAPAPEIS": + retornaJSON(pegaDados("SELECT * from ".$esquemaadmin."i3geousr_papeis order by nome")); + exit; + break; +} +cpjson($retorno); +function alterarOperacoes(){ + global $id_operacao,$codigo,$descricao; + try{ + include(dirname(__FILE__)."/conexao.php"); + if($convUTF){ + $descricao = utf8_encode($descricao); + } + if($id_operacao != ""){ + $dataCol = array( + "codigo" => $codigo, + "descricao" => $descricao + ); + i3GeoAdminUpdate($dbhw,"i3geousr_operacoes",$dataCol,"WHERE id_operacao = $id_operacao"); + $retorna = $id_operacao; + } + else{ + $dataCol = array( + "descricao" => '' + ); + $retorna = i3GeoAdminInsertUnico($dbhw,"i3geousr_operacoes",$dataCol,"descricao","id_operacao"); + } + $dbhw = null; + $dbh = null; + return $retorna; + } + catch (PDOException $e){ + return "Error!: " . $e->getMessage(); + } +} +function adicionaPapelOperacoes(){ + global $id_operacao,$id_papel; + try{ + include(dirname(__FILE__)."/conexao.php"); + $dataCol = array( + "id_operacao" => $id_operacao, + "id_papel" => $id_papel + ); + i3GeoAdminInsert($dbhw,"i3geousr_operacoespapeis",$dataCol); + $dbhw = null; + $dbh = null; + return "ok"; + } + catch (PDOException $e){ + return "Error!: " . $e->getMessage(); + } +} +function excluirPapelOperacao(){ + global $id_operacao,$id_papel; + try{ + include(dirname(__FILE__)."/conexao.php"); + $sql = "DELETE from ".$esquemaadmin."i3geousr_operacoespapeis WHERE id_operacao = $id_operacao AND id_papel = $id_papel"; + $dbhw->query($sql); + i3GeoAdminInsertLog($dbhw,$sql); + $dbhw = null; + $dbh = null; + return "ok"; + } + catch (PDOException $e){ + return "Error!: " . $e->getMessage(); + } +} +?> diff --git a/admin1/usuarios/operacoes/index.js b/admin1/usuarios/operacoes/index.js new file mode 100644 index 0000000..66c6df7 --- /dev/null +++ b/admin1/usuarios/operacoes/index.js @@ -0,0 +1,359 @@ +/* +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@gmail.com + +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. + + */ +/* +Function: initMenu + +Inicializa o editor + */ +function init(){ + pegaOperacoes(); +} +function ativaBotaoAdicionaOperacao(sUrl,idBotao){ + var botao, adiciona = function() + { + core_carregando("ativa"); + core_carregando($trad("msgNovoRegistro",i3GEOadmin.core.dicionario)); + var callback = + { + success:function(o) + { + try + { + var j = YAHOO.lang.JSON.parse(o.responseText); + adicionaNosOperacoes(j,true); + editar("operacoes",j[j.length-1].id_operacao); + core_carregando("desativa"); + } + 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 + botao = new YAHOO.widget.Button(idBotao,{ onclick: { fn: adiciona } }); + botao.addClass("rodar"); +} +/* +Function: pegaOperacoes + +Obtém a lista de atlas + + + */ +function pegaOperacoes(){ + //core_pegaDados($trad("msgBuscaOperacoes",i3GEOadmin.operacoes.dicionario),"../php/operacoes.php?funcao=pegaOperacoes","montaArvore"); + $.post( + "exec.php?funcao=pegaOperacoesEpapeis", + {}, + function(data, status){ + var json = jQuery.parseJSON(data); + var templatePapeis = $("#templateInputPapeis").html(); + var templateOperacoes = $("#templateOperacoes").html(); + var html = Mustache.to_html( + "{{#data}}" + templateOperacoes + "{{/data}}", + { + "data":json["operacoes"], + "labelCodigo": $trad("codigo",i3GEOadmin.operacoes.dicionario), + "labelDescricao": $trad("descricao",i3GEOadmin.operacoes.dicionario), + "operacao": $trad("operacao",i3GEOadmin.operacoes.dicionario), + "papeisv": $trad("papeisv",i3GEOadmin.operacoes.dicionario), + "inputPapeis": function(){ + //marca os checkbox + var p = this.papeis; + $(json["papeis"]).each( + function(i,el){ + if(p[el.id_papel] || el.id_papel == 1){ + json["papeis"][i]["checked"] = "checked"; + } + else{ + json["papeis"][i]["checked"] = ""; + } + } + ); + return Mustache.to_html( + "{{#data}}" + templatePapeis + "{{/data}}", + { + "data":json["papeis"] + } + ); + } + } + ); + $("#corpo").html(html); + $.material.init(); + } + ); +} +/* +Function: montaArvore + +Monta a árvore de edição + + + */ +function montaArvore(dados){ + YAHOO.example.treeExample = new function() + { + tree = ""; + function changeIconMode() + { + buildTree(); + } + function loadNodeData(node, fnLoadComplete){ + var sUrl = "../php/operacoes.php?funcao=pegaPapeisOperacao&id_operacao="+node.data.id_operacao; + var callback = { + success: function(oResponse){ + var dados = YAHOO.lang.JSON.parse(oResponse.responseText); + adicionaNosPapeis(node,dados,false); + oResponse.argument.fnLoadComplete(); + }, + failure: function(oResponse){ + oResponse.argument.fnLoadComplete(); + }, + argument:{ + "node": node, + "fnLoadComplete": fnLoadComplete + }, + timeout: 25000 + }; + YAHOO.util.Connect.asyncRequest('GET', sUrl, callback); + } + function buildTree(){ + tree = new YAHOO.widget.TreeView("tabela"); + tree.setDynamicLoad(loadNodeData, 1); + var root = tree.getRoot(); + var tempNode = new YAHOO.widget.TextNode('', root, false); + tempNode.isLeaf = true; + tempNode.enableHighlight = false; + core_carregando("desativa"); + } + buildTree(); + }(); + adicionaNosOperacoes(dados); + tree.draw(); +} +/* +Function: adicionaNosPapeis + +Mostra os nos de uma operacao + + + */ +function adicionaNosPapeis(no,dados,redesenha) +{ + function temaIconMode() + { + var newVal = parseInt(this.value); + if (newVal != currentIconMode) + {currentIconMode = newVal;} + } + if(!redesenha) + { + var conteudo = ""+ $trad("adicionaPapel",i3GEOadmin.operacoes.dicionario) +""; + var d = {html:conteudo}; + var tempNode = new YAHOO.widget.HTMLNode(d, no, false,true); + tempNode.isLeaf = true; + tempNode.enableHighlight = false; + } + for (var i=0, j=dados.length; i"; + if(dados[i].nome != "") + {conteudo += " "+dados[i].nome+" - "+dados[i].descricao+"";} + else + {conteudo += " Edite para definir o papel!!!";} + var d = {html:conteudo,id_nopapel:dados[i].id_operacao+"_"+dados[i].id_papel,tipo:"papel"}; + var tempNode = new YAHOO.widget.HTMLNode(d, no, false,true); + tempNode.isLeaf = true; + tempNode.enableHighlight = false; + } + if(redesenha){tree.draw();} +} +function adicionaNosOperacoes(dados,redesenha){ + var root = tree.getRoot(); + for (var i=0, j=dados.length; i"; + if(dados[i].codigo != "") + {conteudo += " "+dados[i].codigo+" - "+dados[i].descricao+"";} + else + {conteudo += " "+ $trad("editaOperacao",i3GEOadmin.operacoes.dicionario) +"";} + var d = {html:conteudo,id_operacao:dados[i].id_operacao,tipo:"operacao"}; + var tempNode = new YAHOO.widget.HTMLNode(d, root, false,true); + tempNode.enableHighlight = false; + } + if(redesenha){tree.draw();} +} +/* +Function: editar + +Abre o editor de um no + */ +function editar(tipo,id) +{ + core_carregando("ativa"); + core_carregando($trad("msgBuscaDados",i3GEOadmin.core.dicionario)); + var sUrl = null; + var callback = + { + success:function(o) + { + try + { + if(tipo == "operacao") + { + var dados = YAHOO.lang.JSON.parse(o.responseText)[0]; + core_montaEditor("gravaDados('operacao','"+id+"')","","","",$trad("operacao",i3GEOadmin.operacoes.dicionario),true,true,false); + $i("editor_bd").innerHTML = montaDivOperacao(dados); + core_carregando("desativa"); + } + if(tipo == "papel") + { + var dados = YAHOO.lang.JSON.parse(o.responseText); + core_montaEditor("gravaDados('papel','"+id+"')","250px","100px","","Papel",true,true,false); + $i("editor_bd").innerHTML = montaDivPapel(dados); + document.getElementById("Eid_papel").style.width = "200px"; + core_carregando("desativa"); + } + core_carregando("desativa"); + } + catch(e){core_handleFailure(e,o.responseText);} + }, + failure:core_handleFailure, + argument: { foo:"foo", bar:"bar" } + }; + if(tipo == "operacao") + {sUrl = "../php/operacoes.php?funcao=pegaDadosOperacao&id_operacao="+id;} + if(tipo == "papel") + {sUrl = "../php/operacoes.php?funcao=listaPapeis";} + if(sUrl) + {core_makeRequest(sUrl,callback);} +} +function montaDivOperacao(i){ + var param = { + "linhas":[ + {titulo:$trad("codigo",i3GEOadmin.operacoes.dicionario),id:"Ecodigo",size:"50",value:i.codigo,tipo:"text",div:""}, + {titulo:$trad("descricao",i3GEOadmin.operacoes.dicionario),id:"Edescricao",size:"50",value:i.descricao,tipo:"text",div:""} + ] + }; + var ins = ""; + ins += core_geraLinhas(param); + return(ins); +} +function montaDivPapel(dados){ + var ins = "
    "; + return(ins); +} +/* +Function: excluir + +Exclui um elemento do atlas + + + + + + + */ +function excluir(tipo,id_operacao,id_papel) +{ + var mensagem = $trad("msgExclui",i3GEOadmin.core.dicionario)+id_operacao+" - "+id_papel; + var no = null; + var sUrl = null; + if(tipo == "papel") + { + no = tree.getNodeByProperty("id_nopapel",id_operacao+"_"+id_papel); + sUrl = "../php/operacoes.php?funcao=excluirPapelOperacao&id_papel="+id_papel+"&id_operacao="+id_operacao; + } + if(sUrl) + {core_excluiNoTree(sUrl,no,mensagem);} +} +/* +Function: gravaDados + +Altera dados de um elemento do Atlas + + + + + + + */ +function gravaDados(tipo,id) +{ + var campos = null; + var par = null; + var prog = null; + if(tipo == "operacao"){ + campos = new Array("codigo","descricao"); + par = "&id_operacao="+id; + prog = "../php/operacoes.php?funcao=alterarOperacoes"; + } + if(tipo == "papel"){ + campos = new Array("id_papel"); + par = "&id_operacao="+id; + prog = "../php/operacoes.php?funcao=adicionaPapelOperacoes"; + } + for (var i=0;i"+ $trad("msgErroExclui",i3GEOadmin.operacoes.dicionario) +""); + setTimeout("core_carregando('desativa')",3000); + } + else{ + if(tipo == "operacao"){ + var no = tree.getNodeByProperty("id_operacao",id); + no.getContentEl().getElementsByTagName("span")[0].innerHTML = document.getElementById("Ecodigo").value; + no.getContentEl().getElementsByTagName("span")[0].style.color = ""; + no.html = no.getContentEl().innerHTML; + } + if(tipo == "papel"){ + var no = tree.getNodeByProperty("id_operacao",id); + adicionaNosPapeis(no,YAHOO.lang.JSON.parse(o.responseText),true); + } + core_carregando("desativa"); + } + YAHOO.admin.container.panelEditor.destroy(); + YAHOO.admin.container.panelEditor = null; + } + catch(e){core_handleFailure(e,o.responseText);} + }, + failure:core_handleFailure, + argument: { foo:"foo", bar:"bar" } + }; + if(prog && par){ + core_carregando("ativa"); + core_carregando($trad("gravaId",i3GEOadmin.core.dicionario)+id); + var sUrl = prog+par; + core_makeRequest(sUrl,callback,'POST'); + } +} diff --git a/admin1/usuarios/operacoes/index.php b/admin1/usuarios/operacoes/index.php new file mode 100755 index 0000000..efb5d9c --- /dev/null +++ b/admin1/usuarios/operacoes/index.php @@ -0,0 +1,111 @@ + +
    +
    + +
    +
    +
    +
    +
    + + +
    +
    +
    + + + + + + + diff --git a/ferramentas/loginusuario/template_mst_bt.html b/ferramentas/loginusuario/template_mst_bt.html index 66e5326..8a3a2f7 100755 --- a/ferramentas/loginusuario/template_mst_bt.html +++ b/ferramentas/loginusuario/template_mst_bt.html @@ -1,15 +1,17 @@
  • -