identifica.js
4.68 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
YAHOO.namespace("example.container");
function initMenu()
{
core_ativaBotaoAdicionaLinha("../php/identifica.php?funcao=alterarFuncoes")
core_carregando("ativa");
core_ativaPainelAjuda("ajuda","botaoAjuda");
pegaFuncoes();
}
function pegaFuncoes()
{
core_pegaDados("buscando funções...","../php/identifica.php?funcao=pegaFuncoes","montaTabela")
}
function montaTabela(dados)
{
YAHOO.example.InlineCellEditing = new function()
{
// Custom formatter for "address" column to preserve line breaks
var formatTexto = function(elCell, oRecord, oColumn, oData)
{
elCell.innerHTML = "<pre ><p>" + oData + "</pre>";
};
var formatSalva = function(elCell, oRecord, oColumn)
{
elCell.innerHTML = "<div class=aplicar style='text-align:center' onclick='gravaLinha(\""+oRecord._sId+"\")'></div>";
};
var formatExclui = function(elCell, oRecord, oColumn)
{
elCell.innerHTML = "<div class=excluir style='text-align:center' ></div>";//onclick='excluiLinha(\""+oRecord.getData("id_menu")+"\",\""+oRecord.getId()+"\")'></div>";
};
var myColumnDefs = [
{key:"excluir",label:"excluir",formatter:formatExclui},
{label:"salvar",formatter:formatSalva},
{label:"id",key:"id_i", formatter:formatTexto},
{label:"nome",resizeable:true,key:"nome_i", formatter:formatTexto, editor:"textbox"},
{label:"publicado?",key:"publicado_i",editor:"radio" ,editorOptions:{radioOptions:["SIM","NAO"],disableBtns:false}},
{label:"programa",resizeable:true,key:"abrir_i", formatter:formatTexto, editor:"textbox"},
{label:"abrir como?",key:"target_i", formatter:formatTexto,editor:"dropdown" ,editorOptions:{dropdownOptions:["self","target"],disableBtns:false}}
];
myDataSource = new YAHOO.util.DataSource(dados);
myDataSource.responseType = YAHOO.util.DataSource.TYPE_JSARRAY;
myDataSource.responseSchema =
{
fields: ["publicado_i","abrir_i","id_i","nome_i","target_i"]
};
myDataTable = new YAHOO.widget.DataTable("tabela", myColumnDefs, myDataSource);
// Set up editing flow
myDataTable.highlightEditableCell = function(oArgs)
{
var elCell = oArgs.target;
var column = myDataTable.getColumn(oArgs.target);
//if(column.editor != "null")
if(!YAHOO.lang.isNull(column.editor))
{
YAHOO.util.Dom.addClass(elCell,'yui-dt-highlighted');
}
};
myDataTable.unhighlightEditableCell = function(oArgs)
{
var elCell = oArgs.target;
if(elCell.style.cursor="pointer")
{
YAHOO.util.Dom.removeClass(elCell,'yui-dt-highlighted');
}
};
myDataTable.subscribe("cellMouseoverEvent", myDataTable.highlightEditableCell);
myDataTable.subscribe("cellMouseoutEvent", myDataTable.unhighlightEditableCell);
myDataTable.subscribe('cellClickEvent',function(ev)
{
var target = YAHOO.util.Event.getTarget(ev);
var column = this.getColumn(target);
if(YAHOO.example.container.panelCK)
{
YAHOO.example.container.panelCK.destroy();
YAHOO.example.container.panelCK = null;
}
if (column.key == 'excluir')
{
var record = this.getRecord(target);
excluiLinha(record.getData('id_i'),target);
}
else
{
this.onEventShowCellEditor(ev);
}
});
// Hook into custom event to customize save-flow of "radio" editor
myDataTable.subscribe("editorUpdateEvent", function(oArgs)
{
if(oArgs.editor.column.key === "active")
{
this.saveCellEditor();
}
});
myDataTable.subscribe("editorBlurEvent", function(oArgs)
{
this.cancelCellEditor();
});
};
core_carregando("desativa");
}
function gravaLinha(row)
{
var r = myDataTable.getRecordSet().getRecord(row);
var publicado_i = r.getData("publicado_i");
var abrir_i = r.getData("abrir_i")
var id_i = r.getData("id_i")
var nome_i = r.getData("nome_i")
var target_i = r.getData("target_i")
var mensagem = " gravando o registro do id= "+id_i
var sUrl = "../php/identifica.php?funcao=alterarFuncoes&publicado_i="+publicado_i+"&abrir_i="+abrir_i+"&nome_i="+nome_i+"&id_i="+id_i+"&target_i="+target_i;
core_gravaLinha(mensagem,row,sUrl)
}
function excluiLinha(id,row)
{
var mensagem = " excluindo o registro do id= "+id;
var sUrl = "../php/identifica.php?funcao=excluir&id="+id;
core_excluiLinha(sUrl,row,mensagem)
}
YAHOO.util.Event.addListener(window, "load", initMenu);