251 lines
7.7 KiB
JavaScript
251 lines
7.7 KiB
JavaScript
Ext.namespace("audit");
|
|
|
|
audit.application = {
|
|
init: function ()
|
|
{
|
|
var loadMaskAudit = new Ext.LoadMask(Ext.getBody(), {msg: _("ID_LOADING_GRID")});
|
|
|
|
auditLogAjax = function (option)
|
|
{
|
|
var p;
|
|
switch (option) {
|
|
case "EMPTY":
|
|
p = {
|
|
"option": option
|
|
};
|
|
break;
|
|
}
|
|
|
|
Ext.Ajax.request({
|
|
url: "auditLogAjax",
|
|
method: "POST",
|
|
params: p,
|
|
|
|
success: function (response, opts)
|
|
{
|
|
var dataResponse = eval("(" + response.responseText + ")"); //json
|
|
|
|
switch (option) {
|
|
case "EMPTY":
|
|
if (dataResponse.status && dataResponse.status == "OK") {
|
|
pagingAudit.moveFirst();
|
|
}
|
|
break;
|
|
}
|
|
}
|
|
});
|
|
}
|
|
|
|
logView = function ()
|
|
{
|
|
var record = grdpnlMain.getSelectionModel().getSelected();
|
|
|
|
if (typeof record != "undefined") {
|
|
var strData = "<b>" + _("ID_DATE_LABEL") + "</b><br />" + record.get("DATE") + "<br />";
|
|
strData = strData + "<b>" + _("ID_USER") + "</b><br />" + record.get("WORKSPACE") + "<br />";
|
|
strData = strData + "<b>" + _("ID_IP") + "</b><br />" + record.get("IP") + "<br />";
|
|
strData = strData + "<b>" + _("ID_ACTION") + "</b><br />" + record.get("ACTION") + "<br />";
|
|
strData = strData + "<b>" + _("ID_DESCRIPTION") + "</b><br />" + record.get("DESCRIPTION") + "<br />";
|
|
|
|
var formItems = Ext.getCmp("frmLogView").form.items;
|
|
formItems.items[0].setValue(strData);
|
|
}
|
|
}
|
|
|
|
var pageSize = parseInt(CONFIG.pageSize);
|
|
|
|
var storeAudit = new Ext.data.Store({
|
|
proxy: new Ext.data.HttpProxy({
|
|
url: "auditLogAjax",
|
|
method: "POST"
|
|
}),
|
|
|
|
reader: new Ext.data.JsonReader({
|
|
root: "resultRoot",
|
|
totalProperty: "resultTotal",
|
|
fields: [
|
|
{name: "DATE"},
|
|
{name: "USER"},
|
|
{name: "IP"},
|
|
{name: "ACTION"},
|
|
{name: "DESCRIPTION"}
|
|
]
|
|
}),
|
|
|
|
listeners: {
|
|
beforeload: function (store)
|
|
{
|
|
loadMaskAudit.show();
|
|
|
|
this.baseParams = {
|
|
"option": "LST",
|
|
"pageSize": pageSize,
|
|
"description": Ext.getCmp("fldDescription").getValue(),
|
|
"dateFrom": Ext.getCmp("dateFrom").getValue(),
|
|
"dateTo": Ext.getCmp("dateTo").getValue()
|
|
};
|
|
},
|
|
load: function (store, record, opt)
|
|
{
|
|
loadMaskAudit.hide();
|
|
}
|
|
}
|
|
});
|
|
|
|
var storePageSize = new Ext.data.SimpleStore({
|
|
fields: ["size"],
|
|
data: [["20"], ["30"], ["40"], ["50"], ["100"]],
|
|
autoLoad: true
|
|
});
|
|
|
|
var dateFrom = new Ext.form.DateField({
|
|
id: "dateFrom",
|
|
format: "Y-m-d",
|
|
editable: false,
|
|
width: 90,
|
|
value: ""
|
|
});
|
|
|
|
var dateTo = new Ext.form.DateField({
|
|
id: "dateTo",
|
|
format: "Y-m-d",
|
|
editable: false,
|
|
width: 90,
|
|
value: ""
|
|
});
|
|
|
|
var fldDescription = new Ext.form.TextField({
|
|
id: "fldDescription",
|
|
valueField: "id",
|
|
displayField: "value",
|
|
emptyText: _('ID_ENTER_SEARCH_TERM'),
|
|
value: "",
|
|
triggerAction: "all",
|
|
mode: "local",
|
|
editable: false,
|
|
width: 150
|
|
});
|
|
|
|
var cboPageSize = new Ext.form.ComboBox({
|
|
id: "cboPageSize",
|
|
|
|
mode: "local",
|
|
triggerAction: "all",
|
|
store: storePageSize,
|
|
valueField: "size",
|
|
displayField: "size",
|
|
width: 50,
|
|
editable: false,
|
|
listeners: {
|
|
select: function (combo, record, index)
|
|
{
|
|
pageSize = parseInt(record.data["size"]);
|
|
pagingAudit.pageSize = pageSize;
|
|
pagingAudit.moveFirst();
|
|
}
|
|
}
|
|
});
|
|
|
|
var pagingAudit = new Ext.PagingToolbar({
|
|
id: "pagingAudit",
|
|
pageSize: pageSize,
|
|
store: storeAudit,
|
|
displayInfo: true,
|
|
displayMsg: _("ID_CRON_GRID_PAGE_DISPLAYING_MESSAGE"),
|
|
emptyMsg: _("ID_NO_RECORDS_FOUND"),
|
|
items: ["-", _("ID_PAGE_SIZE") + " ", cboPageSize]
|
|
});
|
|
|
|
var cmodel = new Ext.grid.ColumnModel({
|
|
defaults: {
|
|
width: 50,
|
|
sortable: true
|
|
},
|
|
columns: [
|
|
{id: "ID", dataIndex: "DATE", hidden: true, hideable: false},
|
|
{header: _("ID_DATE_LABEL"), dataIndex: "DATE", width: 15},
|
|
{header: _("ID_USER"), dataIndex: "USER", width: 15},
|
|
{header: _("ID_IP"), dataIndex: "IP", width: 10},
|
|
{header: _("ID_ACTION"), dataIndex: "ACTION", width: 15},
|
|
{header: _("ID_DESCRIPTION"), dataIndex: "DESCRIPTION"}
|
|
]
|
|
});
|
|
|
|
var smodel = new Ext.grid.RowSelectionModel({
|
|
singleSelect: true,
|
|
listeners: {
|
|
rowselect: function (sm)
|
|
{
|
|
},
|
|
rowdeselect: function (sm)
|
|
{
|
|
}
|
|
}
|
|
});
|
|
|
|
var grdpnlMain = new Ext.grid.GridPanel({
|
|
id: "grdpnlMain",
|
|
|
|
store: storeAudit,
|
|
colModel: cmodel,
|
|
selModel: smodel,
|
|
|
|
columnLines: true,
|
|
viewConfig: {forceFit: true},
|
|
enableColumnResize: true,
|
|
enableHdMenu: false,
|
|
tbar: [
|
|
"->",
|
|
{xtype: "tbtext", text: _("ID_DESCRIPTION") + " "},
|
|
fldDescription,
|
|
"-",
|
|
{xtype: "tbtext", text: _("ID_FROM") + " "},
|
|
dateFrom,
|
|
{xtype: "tbtext", text: _("ID_TO") + " "},
|
|
dateTo,
|
|
{
|
|
xtype: "button",
|
|
text: _("ID_RESET_FILTERS"),
|
|
|
|
handler: function ()
|
|
{
|
|
Ext.getCmp("dateFrom").reset(),
|
|
Ext.getCmp("dateTo").reset(),
|
|
Ext.getCmp("fldDescription").reset()
|
|
}
|
|
},
|
|
"-",
|
|
{
|
|
xtype: "button",
|
|
text: _("ID_SEARCH"),
|
|
|
|
handler: function ()
|
|
{
|
|
pagingAudit.moveFirst();
|
|
}
|
|
}
|
|
],
|
|
bbar: pagingAudit,
|
|
border: false,
|
|
title: _("ID_AUDIT_LOG_ACTIONS"),
|
|
listeners: {
|
|
rowdblclick: function ()
|
|
{
|
|
logView();
|
|
}
|
|
}
|
|
});
|
|
|
|
storeAudit.load();
|
|
|
|
cboPageSize.setValue(pageSize);
|
|
|
|
var viewport = new Ext.Viewport({
|
|
layout: "fit",
|
|
autoScroll: false,
|
|
items: [grdpnlMain]
|
|
});
|
|
}
|
|
}
|
|
|
|
Ext.onReady(audit.application.init, audit.application); |