Commit 55345c100b2ea104f2a8d77b53934a3d799b3eca

Authored by Edmar Moretti
1 parent bd124f54

--no commit message

admin/imagens/06.png 0 → 100644

485 Bytes

admin/js/sistemas.js 0 → 100644
... ... @@ -0,0 +1,281 @@
  1 +YAHOO.namespace("example.container");
  2 +function initMenu()
  3 +{
  4 + ativaBotaoAdicionaRaiz("../php/sistemas.php?funcao=alterarSistemas","adiciona")
  5 + core_carregando("ativa");
  6 + core_ativaPainelAjuda("ajuda","botaoAjuda");
  7 + core_pegaPerfis("pegaSistemas()");
  8 +}
  9 +function ativaBotaoAdicionaRaiz(sUrl,idBotao)
  10 +{
  11 + var adiciona = function()
  12 + {
  13 + core_carregando("ativa");
  14 + core_carregando(" adicionando um novo registro");
  15 + var callback =
  16 + {
  17 + success:function(o)
  18 + {
  19 + try
  20 + {
  21 + adicionaNosRaiz(YAHOO.lang.JSON.parse(o.responseText),true);
  22 + core_carregando("desativa");
  23 + }
  24 + catch(e){core_handleFailure(e,o.responseText);}
  25 + },
  26 + failure:core_handleFailure,
  27 + argument: { foo:"foo", bar:"bar" }
  28 + };
  29 + core_makeRequest(sUrl,callback)
  30 + };
  31 + //cria o botão de adição de um novo menu
  32 + var adiciona = new YAHOO.widget.Button(idBotao,{ onclick: { fn: adiciona } });
  33 +}
  34 +function pegaSistemas()
  35 +{
  36 + core_pegaDados("buscando sistemas...","../php/sistemas.php?funcao=pegaSistemas","montaArvore")
  37 +}
  38 +function montaArvore(dados)
  39 +{
  40 + YAHOO.example.treeExample = new function()
  41 + {
  42 + var currentIconMode;
  43 + tree = "";
  44 + function changeIconMode()
  45 + {
  46 + var newVal = parseInt(this.value);
  47 + if (newVal != currentIconMode)
  48 + {currentIconMode = newVal;}
  49 + buildTree();
  50 + }
  51 + function loadNodeData(node, fnLoadComplete)
  52 + {
  53 + var sUrl = "../php/sistemas.php?funcao=pegaFuncoes&id_sistema="+node.data.id_sistema;
  54 + var callback =
  55 + {
  56 + success: function(oResponse)
  57 + {
  58 + var dados = YAHOO.lang.JSON.parse(oResponse.responseText)
  59 + adicionaNos(node,dados,false)
  60 + oResponse.argument.fnLoadComplete();
  61 + },
  62 + failure: function(oResponse)
  63 + {
  64 + oResponse.argument.fnLoadComplete();
  65 + },
  66 + argument:
  67 + {
  68 + "node": node,
  69 + "fnLoadComplete": fnLoadComplete
  70 + },
  71 + timeout: 7000
  72 + };
  73 + YAHOO.util.Connect.asyncRequest('GET', sUrl, callback);
  74 + }
  75 + function buildTree()
  76 + {
  77 + tree = new YAHOO.widget.TreeView("tabela");
  78 + tree.setDynamicLoad(loadNodeData, currentIconMode);
  79 + adicionaNosRaiz(dados)
  80 + var root = tree.getRoot();
  81 + var tempNode = new YAHOO.widget.TextNode('', root, false);
  82 + tempNode.isLeaf = true;
  83 + tree.draw();
  84 + core_carregando("desativa");
  85 + }
  86 + buildTree();
  87 + }();
  88 +}
  89 +function adicionaNos(no,dados,redesenha)
  90 +{
  91 + for (var i=0, j=dados.length; i<j; i++)
  92 + {
  93 + var conteudo = "&nbsp;<img style=\"position:relative;cursor:pointer;top:0px\" onclick=\"excluir('funcao','"+dados[i].id_funcao+"')\" title=excluir width='10px' heigth='10px' src=\"../imagens/01.png\" />&nbsp;"
  94 + conteudo += "&nbsp;<img style=\"position:relative;cursor:pointer;top:0px\" onclick=\"editar('funcao','"+dados[i].id_funcao+"')\" title=editar width='10px' heigth='10px' src=\"../imagens/06.png\" />&nbsp;<span>"+dados[i].nome_funcao+"</span>"
  95 + var d = {html:conteudo,id_funcao:dados[i].id_funcao,tipo:"funcao"}
  96 + var tempNode = new YAHOO.widget.HTMLNode(d, no, false,true);
  97 + tempNode.isLeaf = true;
  98 + }
  99 + if(redesenha){tree.draw();}
  100 +}
  101 +function adicionaNosRaiz(dados,redesenha)
  102 +{
  103 + var root = tree.getRoot();
  104 + for (var i=0, j=dados.length; i<j; i++)
  105 + {
  106 + var conteudo = "&nbsp;<img style=\"position:relative;cursor:pointer;top:2px\" onclick=\"excluir('sistema','"+dados[i].id_sistema+"')\" title=excluir src=\"../imagens/01.png\" />"
  107 + conteudo += "&nbsp;<img style=\"position:relative;cursor:pointer;top:2px\" onclick=\"adicionarFuncao('"+dados[i].id_sistema+"')\" title='adiciona função' src=\"../imagens/05.png\" />"
  108 + conteudo += "&nbsp;<img style=\"position:relative;cursor:pointer;top:2px\" onclick=\"editar('sistema','"+dados[i].id_sistema+"')\" title=editar src=\"../imagens/06.png\" /><b>&nbsp;"+dados[i].nome_sistema
  109 + var d = {html:conteudo,id_sistema:dados[i].id_sistema,tipo:"sistema"};
  110 + var tempNode = new YAHOO.widget.HTMLNode(d, root, false,true);
  111 + }
  112 + if(redesenha){tree.draw();}
  113 +}
  114 +function editar(tipo,id)
  115 +{
  116 + if(tipo == "funcao")
  117 + {
  118 + core_carregando("ativa");
  119 + core_carregando(" buscando dados");
  120 + var callback =
  121 + {
  122 + success:function(o)
  123 + {
  124 + try
  125 + {
  126 + montaEditorFuncoes(YAHOO.lang.JSON.parse(o.responseText)[0],id);
  127 + core_carregando("desativa");
  128 + }
  129 + catch(e){core_handleFailure(e,o.responseText);}
  130 + },
  131 + failure:core_handleFailure,
  132 + argument: { foo:"foo", bar:"bar" }
  133 + };
  134 + var sUrl = "../php/sistemas.php?funcao=pegaFuncao&id_funcao="+id;
  135 + core_makeRequest(sUrl,callback)
  136 + }
  137 +}
  138 +function montaEditorFuncoes(dados,id)
  139 +{
  140 + function on_editorCheckBoxChange(p_oEvent)
  141 + {
  142 + var ins = "";
  143 + if(p_oEvent.newValue.get("value") == "OK")
  144 + {
  145 + gravaDadosFuncao(id);
  146 + }
  147 + else
  148 + {
  149 + YAHOO.example.container.panelEditorFuncao.destroy();
  150 + YAHOO.example.container.panelEditorFuncao = null;
  151 + }
  152 + };
  153 + if(!YAHOO.example.container.panelEditorFuncao)
  154 + {
  155 + var novoel = document.createElement("div");
  156 + novoel.id = "janela_editor";
  157 + var ins = '<div class="hd">Editor</div>';
  158 + ins += "<div class='bd' style='height:354px;overflow:auto'>";
  159 + ins += "<div id='okcancel_checkbox'></div><div id='editor_bd'></div>";
  160 + novoel.innerHTML = ins;
  161 + document.body.appendChild(novoel);
  162 + var editorBotoes = new YAHOO.widget.ButtonGroup({id:"okcancel_checkbox_id", name: "okcancel_checkbox_id", container: "okcancel_checkbox" });
  163 + editorBotoes.addButtons([
  164 + { label: "Salva", value: "OK", checked: false},
  165 + { label: "Cancela", value: "CANCEL", checked: false }
  166 + ]);
  167 + editorBotoes.on("checkedButtonChange", on_editorCheckBoxChange);
  168 + YAHOO.example.container.panelEditorFuncao = new YAHOO.widget.Panel("janela_editor", { fixedcenter:true,close:false,width:"400px", height:"400px",overflow:"auto", visible:false,constraintoviewport:true } );
  169 + YAHOO.example.container.panelEditorFuncao.render();
  170 + }
  171 + YAHOO.example.container.panelEditorFuncao.show();
  172 + //carrega os dados na janela
  173 + $i("editor_bd").innerHTML = montaDivFuncoes(dados)
  174 + core_carregando("desativa");
  175 + //
  176 + //preenche a div com a lista de tags
  177 + //
  178 + //core_comboTags("comboTags","Etags_tema","registraTag");
  179 + //
  180 + //preenche a div com a lista de mapfiles
  181 + //
  182 + //core_comboMapfiles("comboMapfiles","Ecodigo_tema",dados[0].codigo_tema);
  183 +}
  184 +function registraTag(valor)
  185 +{
  186 + var inp = $i("Etags_tema")
  187 + var tags = inp.value
  188 + if(tags == "")
  189 + inp.value = valor
  190 + else
  191 + inp.value = tags+" "+valor
  192 +}
  193 +function montaDivFuncoes(i)
  194 +{
  195 + var param =
  196 + {
  197 + "linhas":[
  198 + {titulo:"Nome da função:",id:"Enome_funcao",size:"50",value:i.nome_funcao,tipo:"text",div:""},
  199 + {titulo:"Programa que será executado:",id:"Eabrir_funcao",size:"50",value:i.abrir_funcao,tipo:"text",div:""},
  200 + {titulo:"Largura da janela onde o programa será aberto:",id:"Ew_funcao",size:"5",value:i.w_funcao,tipo:"text",div:""},
  201 + {titulo:"Altura da janela:",id:"Eh_funcao",size:"5",value:i.h_funcao,tipo:"text",div:""},
  202 + {titulo:"Perfis:",id:"Eperfil_funcao",size:"50",value:i.perfil_funcao,tipo:"text",div:""}
  203 + ]
  204 + }
  205 + var ins = ""
  206 + ins += core_geraLinhas(param)
  207 + return(ins)
  208 +}
  209 +function excluir(tipo,id)
  210 +{
  211 + var mensagem = " excluindo o registro do id= "+id;
  212 + if(tipo == "sistema")
  213 + {
  214 + var no = tree.getNodeByProperty("id_sistema",id)
  215 + var sUrl = "../php/sistemas.php?funcao=excluirSistema&id="+id+"&tabela=sistemas";
  216 + }
  217 + if(tipo == "funcao")
  218 + {
  219 + var no = tree.getNodeByProperty("id_funcao",id)
  220 + var sUrl = "../php/sistemas.php?funcao=excluirFuncao&id="+id+"&tabela=funcoes";
  221 + }
  222 + core_excluiNoTree(sUrl,no,mensagem)
  223 +}
  224 +function adicionarFuncao(id)
  225 +{
  226 + var mensagem = " adicionando função...";
  227 + var no = tree.getNodeByProperty("id_sistema",id)
  228 + var sUrl = "../php/sistemas.php?funcao=alterarFuncoes&id_sistema="+id;
  229 + var callback =
  230 + {
  231 + success: function(oResponse)
  232 + {
  233 + var dados = YAHOO.lang.JSON.parse(oResponse.responseText)
  234 + adicionaNos(no,dados,true)
  235 + },
  236 + failure:core_handleFailure,
  237 + argument: { foo:"foo", bar:"bar" }
  238 + };
  239 +
  240 + core_makeRequest(sUrl,callback)
  241 +}
  242 +function gravaDadosFuncao(id)
  243 +{
  244 + var campos = new Array("perfil","w","h","abrir","nome")
  245 + var par = ""
  246 + for (i=0;i<campos.length;i++)
  247 + {par += "&"+campos[i]+"_funcao="+($i("E"+campos[i]+"_funcao").value)}
  248 + par += "&id_funcao="+id
  249 + core_carregando("ativa");
  250 + core_carregando(" gravando o registro do id= "+id);
  251 + var sUrl = "../php/sistemas.php?funcao=alterarFuncoes"+par;
  252 + var callback =
  253 + {
  254 + success:function(o)
  255 + {
  256 + try
  257 + {
  258 + if(YAHOO.lang.JSON.parse(o.responseText) == "erro")
  259 + {
  260 + core_carregando("<span style=color:red >Não foi possível excluir. Verifique se não existem menus vinculados a este tema</span>");
  261 + setTimeout("core_carregando('desativa')",3000)
  262 + }
  263 + else
  264 + {
  265 + //var rec = myDataTable.getRecordSet().getRecord(recordid);
  266 + //myDataTable.updateRow(rec,YAHOO.lang.JSON.parse(o.responseText)[0])
  267 + var no = tree.getNodeByProperty("id_funcao",id)
  268 + no.getContentEl().getElementsByTagName("span")[0].innerHTML = document.getElementById("Enome_funcao").value
  269 + core_carregando("desativa");
  270 + }
  271 + YAHOO.example.container.panelEditorFuncao.destroy();
  272 + YAHOO.example.container.panelEditorFuncao = null;
  273 + }
  274 + catch(e){core_handleFailure(e,o.responseText);}
  275 + },
  276 + failure:core_handleFailure,
  277 + argument: { foo:"foo", bar:"bar" }
  278 + };
  279 + core_makeRequest(sUrl,callback)
  280 +}
  281 +YAHOO.util.Event.addListener(window, "load", initMenu);
0 282 \ No newline at end of file
... ...
admin/js/webservices.js 0 → 100644
... ... @@ -0,0 +1,209 @@
  1 +YAHOO.namespace("example.container");
  2 +function initMenu()
  3 +{
  4 + core_ativaBotaoAdicionaLinha("../php/webservices.php?funcao=alterarWS","adiciona")
  5 + core_carregando("ativa");
  6 + core_ativaPainelAjuda("ajuda","botaoAjuda");
  7 + pegaWS();
  8 +}
  9 +function pegaWS()
  10 +{
  11 + core_pegaDados("buscando endereços...","../php/webservices.php?funcao=pegaWS","montaTabela")
  12 +}
  13 +function montaTabela(dados)
  14 +{
  15 + YAHOO.example.InlineCellEditing = new function()
  16 + {
  17 + // Custom formatter for "address" column to preserve line breaks
  18 + var formatTextoId = function(elCell, oRecord, oColumn, oData)
  19 + {
  20 + elCell.innerHTML = "<p>" + oData + "</p>";
  21 + };
  22 +
  23 + var formatMais = function(elCell, oRecord, oColumn)
  24 + {
  25 + elCell.innerHTML = "<div class=editar style='text-align:center' ></div>";
  26 + };
  27 + var formatExclui = function(elCell, oRecord, oColumn)
  28 + {
  29 + elCell.innerHTML = "<div class=excluir style='text-align:center' ></div>";
  30 + };
  31 + var myColumnDefs = [
  32 + {key:"excluir",label:"excluir",formatter:formatExclui},
  33 + {key:"mais",label:"editar",formatter:formatMais},
  34 + {label:"id",key:"id_ws", formatter:formatTextoId},
  35 + {label:"tipo",key:"tipo_ws", formatter:formatTextoId},
  36 + {label:"nome",key:"nome_ws", formatter:formatTextoId},
  37 + ];
  38 + myDataSource = new YAHOO.util.DataSource(dados);
  39 + myDataSource.responseType = YAHOO.util.DataSource.TYPE_JSARRAY;
  40 + myDataSource.responseSchema =
  41 + {
  42 + fields: ["id_ws","nome_ws","tipo_ws"]
  43 + };
  44 + myDataTable = new YAHOO.widget.DataTable("tabela", myColumnDefs, myDataSource);
  45 + // Set up editing flow
  46 + myDataTable.subscribe('cellClickEvent',function(ev)
  47 + {
  48 + var target = YAHOO.util.Event.getTarget(ev);
  49 + var column = this.getColumn(target);
  50 + if (column.key == 'excluir')
  51 + {
  52 + var record = this.getRecord(target);
  53 + excluiLinha(record.getData('id_ws'),target);
  54 + }
  55 + if (column.key == 'mais')
  56 + {
  57 + var record = this.getRecord(target);
  58 + core_carregando("ativa");
  59 + core_carregando("buscando dados...");
  60 + $clicouId = record.getData('id_ws');
  61 + $recordid = record.getId();
  62 + var sUrl = "../php/webservices.php?funcao=pegaDados&id_ws="+record.getData('id_ws');
  63 + var callback =
  64 + {
  65 + success:function(o)
  66 + {
  67 + try
  68 + {
  69 + montaEditor(YAHOO.lang.JSON.parse(o.responseText),$clicouId,$recordid);
  70 + }
  71 + catch(e){core_handleFailure(e,o.responseText);}
  72 + },
  73 + failure:core_handleFailure,
  74 + argument: { foo:"foo", bar:"bar" }
  75 + };
  76 + core_makeRequest(sUrl,callback)
  77 + }
  78 +
  79 + });
  80 + // Hook into custom event to customize save-flow of "radio" editor
  81 + myDataTable.subscribe("editorUpdateEvent", function(oArgs)
  82 + {
  83 + if(oArgs.editor.column.key === "active")
  84 + {
  85 + this.saveCellEditor();
  86 + }
  87 + });
  88 + myDataTable.subscribe("editorBlurEvent", function(oArgs)
  89 + {
  90 + this.cancelCellEditor();
  91 + });
  92 + };
  93 + core_carregando("desativa");
  94 +}
  95 +function montaEditor(dados,id,recordid)
  96 +{
  97 + function on_editorCheckBoxChange(p_oEvent)
  98 + {
  99 + var ins = "";
  100 + if(p_oEvent.newValue.get("value") == "OK")
  101 + {
  102 + gravaDados(id,recordid);
  103 + }
  104 + else
  105 + {
  106 + YAHOO.example.container.panelEditor.destroy();
  107 + YAHOO.example.container.panelEditor = null;
  108 + }
  109 + };
  110 + if(!YAHOO.example.container.panelEditor)
  111 + {
  112 + var novoel = document.createElement("div");
  113 + novoel.id = "janela_editor";
  114 + var ins = '<div class="hd">Editor</div>';
  115 + ins += "<div class='bd' style='height:354px;overflow:auto'>";
  116 + ins += "<div id='okcancel_checkbox'></div><div id='editor_bd'></div>";
  117 + novoel.innerHTML = ins;
  118 + document.body.appendChild(novoel);
  119 + var editorBotoes = new YAHOO.widget.ButtonGroup({id:"okcancel_checkbox_id", name: "okcancel_checkbox_id", container: "okcancel_checkbox" });
  120 + editorBotoes.addButtons([
  121 + { label: "Salva", value: "OK", checked: false},
  122 + { label: "Cancela", value: "CANCEL", checked: false }
  123 + ]);
  124 + editorBotoes.on("checkedButtonChange", on_editorCheckBoxChange);
  125 + YAHOO.example.container.panelEditor = new YAHOO.widget.Panel("janela_editor", { fixedcenter:true,close:false,width:"400px", height:"400px",overflow:"auto", visible:false,constraintoviewport:true } );
  126 + YAHOO.example.container.panelEditor.render();
  127 + }
  128 + YAHOO.example.container.panelEditor.show();
  129 + //carrega os dados na janela
  130 + $i("editor_bd").innerHTML = montaDiv(dados[0])
  131 + core_carregando("desativa");
  132 +}
  133 +function montaDiv(i)
  134 +{
  135 + var param = {
  136 + "linhas":[
  137 + {titulo:"Nome:",id:"Enome_ws",size:"50",value:i.nome_ws,tipo:"text",div:""},
  138 + {titulo:"Descrição:",id:"Edesc_ws",size:"50",value:i.desc_ws,tipo:"text",div:""},
  139 + {titulo:"Autor:",id:"Eautor_ws",size:"50",value:i.autor_ws,tipo:"text",div:""},
  140 + {titulo:"Endereço:",id:"Elink_ws",size:"50",value:i.link_ws,tipo:"text",div:""}
  141 + ]
  142 + }
  143 + var ins = ""
  144 + ins += core_geraLinhas(param)
  145 +
  146 + ins += "<p>Tipo:<br>"
  147 + ins += "<select id='Etipo_ws' />"
  148 + ins += "<option value='' "
  149 + if (i.tipo_ws == ""){ins += "selected";}
  150 + ins += ">---</option>"
  151 + ins += "<option value='WMS' "
  152 + if (i.tipo_ws == "WMS"){ins += "selected";}
  153 + ins += " >WMS<option>"
  154 + ins += "<option value='GEORSS' "
  155 + if (i.tipo_ws == "GEORSS"){ins += "selected";}
  156 + ins += " >GEORSS<option>"
  157 + ins += "<option value='WS' "
  158 + if (i.tipo_ws == "WS"){ins += "selected";}
  159 + ins += " >WS<option>"
  160 + ins += "<option value='DOWNLOAD' "
  161 + if (i.tipo_ws == "DOWNLOAD"){ins += "selected";}
  162 + ins += " >DOWNLOAD<option>"
  163 + ins += "</select></p>"
  164 + return(ins)
  165 +}
  166 +function excluiLinha(id,row)
  167 +{
  168 + var mensagem = " excluindo o registro do id= "+id;
  169 + var sUrl = "../php/webservices.php?funcao=excluir&id="+id;
  170 + core_excluiLinha(sUrl,row,mensagem)
  171 +}
  172 +function gravaDados(id,recordid)
  173 +{
  174 + var campos = new Array("desc","nome","link","tipo","autor")
  175 + var par = ""
  176 + for (i=0;i<campos.length;i++)
  177 + {par += "&"+campos[i]+"_ws="+($i("E"+campos[i]+"_ws").value)}
  178 + par += "&id_ws="+id
  179 + core_carregando("ativa");
  180 + core_carregando(" gravando o registro do id= "+id);
  181 + var sUrl = "../php/webservices.php?funcao=alterarWS"+par;
  182 + var callback =
  183 + {
  184 + success:function(o)
  185 + {
  186 + try
  187 + {
  188 + if(YAHOO.lang.JSON.parse(o.responseText) == "erro")
  189 + {
  190 + core_carregando("<span style=color:red >Não foi possível excluir. Verifique se não existem registros vinculados</span>");
  191 + setTimeout("core_carregando('desativa')",3000)
  192 + }
  193 + else
  194 + {
  195 + var rec = myDataTable.getRecordSet().getRecord(recordid);
  196 + myDataTable.updateRow(rec,YAHOO.lang.JSON.parse(o.responseText)[0])
  197 + core_carregando("desativa");
  198 + }
  199 + YAHOO.example.container.panelEditor.destroy();
  200 + YAHOO.example.container.panelEditor = null;
  201 + }
  202 + catch(e){core_handleFailure(e,o.responseText);}
  203 + },
  204 + failure:core_handleFailure,
  205 + argument: { foo:"foo", bar:"bar" }
  206 + };
  207 + core_makeRequest(sUrl,callback)
  208 +}
  209 +YAHOO.util.Event.addListener(window, "load", initMenu);
0 210 \ No newline at end of file
... ...