HOR-2852
This commit is contained in:
@@ -571,6 +571,14 @@ class Consolidated
|
||||
$required = (isset($field->required))? $field->required : null;
|
||||
$validate = (isset($field->validate))? strtolower($field->validate) : null;
|
||||
|
||||
if (isset($field->options) && !isset($field->storeData)) {
|
||||
$options = [];
|
||||
foreach ($field->options as $keyField => $valueField) {
|
||||
$options[] = [$keyField, $valueField];
|
||||
}
|
||||
$field->storeData = G::json_encode($options);
|
||||
}
|
||||
|
||||
$fieldReadOnly = ($readOnly . "" == "1" || $readOnly == 'view')? "readOnly: true," : null;
|
||||
$fieldRequired = ($required . "" == "1")? "allowBlank: false," : null;
|
||||
$fieldValidate = ($validate == "alpha" || $validate == "alphanum" || $validate == "email" || $validate == "int" || $validate == "real")? "vtype: \"$validate\"," : null;
|
||||
|
||||
@@ -1,24 +1,20 @@
|
||||
var grdNumRows = 0; //
|
||||
var grdRowLabel = []; //
|
||||
var grdNumRows = 0;
|
||||
var grdRowLabel = [];
|
||||
var fieldGridGral = '';
|
||||
var fieldGridGralVal = '';
|
||||
|
||||
|
||||
|
||||
|
||||
Ext.ns("Ext.ux.renderer", "Ext.ux.grid");
|
||||
|
||||
Ext.ux.grid.ComboColumn = Ext.extend(Ext.grid.Column, {
|
||||
//@cfg {String} gridId
|
||||
//The id of the grid this column is in. This is required to be able to refresh the view once the combo store has loaded
|
||||
|
||||
gridId: undefined,
|
||||
|
||||
constructor: function (cfg) {
|
||||
Ext.ux.grid.ComboColumn.superclass.constructor.call(this, cfg);
|
||||
|
||||
//Detect if there is an editor and if it at least extends a combobox, otherwise just treat it as a normal column and render the value itself
|
||||
this.renderer = (this.editor && this.editor.triggerAction)? Ext.ux.renderer.ComboBoxRenderer(this.editor, this.gridId) : function (value) { return value; };
|
||||
this.renderer = (this.editor && this.editor.triggerAction) ? Ext.ux.renderer.ComboBoxRenderer(this.editor, this.gridId) : function (value) {
|
||||
return value;
|
||||
};
|
||||
}
|
||||
});
|
||||
|
||||
@@ -27,19 +23,12 @@ Ext.grid.Column.types["combocolumn"] = Ext.ux.grid.ComboColumn;
|
||||
//A renderer that makes a editorgrid panel render the correct value
|
||||
Ext.ux.renderer.ComboBoxRenderer = function (combo, gridId) {
|
||||
//Get the displayfield from the store or return the value itself if the record cannot be found
|
||||
|
||||
//var str = combo.getId().substring(3); //
|
||||
//var i = str.lastIndexOf("_"); //
|
||||
//var fieldName = str.substring(0, i); //
|
||||
//var processUID = str.substring(i + 1); //
|
||||
var comboBoxField = combo.getId().substring(3); //
|
||||
var str = ""; //
|
||||
|
||||
var comboBoxField = combo.getId().substring(3);
|
||||
var str = "";
|
||||
var getValueComboBox = function (value) {
|
||||
var idx = combo.store.find(combo.valueField, value);
|
||||
var rec = combo.store.getAt(idx);
|
||||
if (rec) {
|
||||
//return rec.get(combo.displayField);
|
||||
if (grdNumRows > 1 || grdNumRows == 0) {
|
||||
return rec.get(combo.displayField);
|
||||
} else {
|
||||
@@ -64,8 +53,8 @@ Ext.ux.renderer.ComboBoxRenderer = function(combo, gridId) {
|
||||
}
|
||||
|
||||
return function (value) {
|
||||
//If we are trying to load the displayField from a store that is not loaded, add a single listener to the combo store's load event to refresh the grid view
|
||||
|
||||
//If we are trying to load the displayField from a store that is not loaded
|
||||
//add a single listener to the combo store's load event to refresh the grid view
|
||||
if (combo.store.getCount() == 0 && gridId) {
|
||||
combo.store.on(
|
||||
"load",
|
||||
@@ -80,7 +69,6 @@ Ext.ux.renderer.ComboBoxRenderer = function(combo, gridId) {
|
||||
}
|
||||
);
|
||||
|
||||
//return value;
|
||||
if (grdNumRows > 1 || grdNumRows == 0) {
|
||||
return value;
|
||||
} else {
|
||||
@@ -93,8 +81,7 @@ Ext.ux.renderer.ComboBoxRenderer = function(combo, gridId) {
|
||||
}
|
||||
}
|
||||
|
||||
//return getValueComboBox(value);
|
||||
str = getValueComboBox(value); //
|
||||
str = getValueComboBox(value);
|
||||
if (grdNumRows > 1 || grdNumRows == 0) {
|
||||
return str;
|
||||
} else {
|
||||
@@ -103,46 +90,10 @@ Ext.ux.renderer.ComboBoxRenderer = function(combo, gridId) {
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Ext.QuickTips.init();
|
||||
|
||||
Ext.namespace("Ext.ux");
|
||||
|
||||
/*
|
||||
Ext.ux.comboBoxRenderer = function(combo) {
|
||||
return function(value) {
|
||||
var idx = combo.store.find(combo.valueField, value);
|
||||
var rec = combo.store.getAt(idx);
|
||||
return rec.get(combo.displayField);
|
||||
};
|
||||
};
|
||||
*/
|
||||
|
||||
//
|
||||
//screen.width, screen.height
|
||||
var browserWidth = 0;
|
||||
var browserHeight = 0;
|
||||
|
||||
@@ -150,8 +101,7 @@ var browserHeight = 0;
|
||||
if (typeof window.innerWidth != "undefined") {
|
||||
browserWidth = window.innerWidth;
|
||||
browserHeight = window.innerHeight;
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
//IE6 in standards compliant mode (i.e. with a valid doctype as the first line in the document)
|
||||
if (typeof document.documentElement != "undefined" && typeof document.documentElement.clientWidth != "undefined" &&
|
||||
document.documentElement.clientWidth != 0) {
|
||||
@@ -169,16 +119,6 @@ else {
|
||||
}
|
||||
}
|
||||
}
|
||||
//
|
||||
|
||||
/*
|
||||
var gridHeight;
|
||||
if (window.innerHeight){
|
||||
gridHeight = window.innerHeight - 30;
|
||||
}else {
|
||||
gridHeight = 350;
|
||||
}
|
||||
*/
|
||||
|
||||
new Ext.KeyMap(document, {
|
||||
key: Ext.EventObject.F5,
|
||||
@@ -190,8 +130,6 @@ new Ext.KeyMap(document, {
|
||||
e.browserEvent.keyCode = 8;
|
||||
}
|
||||
e.stopEvent();
|
||||
//document.location = document.location;
|
||||
//Ext.getCmp('storeConsolidatedGrid').reload();
|
||||
storeConsolidated.reload();
|
||||
} else {
|
||||
Ext.Msg.alert(_("ID_REFRESH_LABEL"), _("ID_REFRESH_MESSAGE"));
|
||||
@@ -199,24 +137,12 @@ new Ext.KeyMap(document, {
|
||||
}
|
||||
});
|
||||
|
||||
//var comboStore = new Ext.data.JsonStore({
|
||||
// proxy: new Ext.data.HttpProxy({
|
||||
// url: "proxyDataCombobox"
|
||||
// }),
|
||||
// root: "records",
|
||||
// fields: [{name: "value"},
|
||||
// {name: "id"}
|
||||
// ]
|
||||
//});
|
||||
|
||||
//var gridId = Ext.id();
|
||||
var gridId = "editorGridPanelMain";
|
||||
var storeAux;
|
||||
|
||||
//Global variables
|
||||
var storeConsolidated;
|
||||
var toolbarconsolidated;
|
||||
//var tb;
|
||||
var consolidatedGrid;
|
||||
var grid;
|
||||
var textJump;
|
||||
@@ -224,10 +150,6 @@ var readerCasesList;
|
||||
var writerCasesList;
|
||||
var proxyCasesList;
|
||||
var htmlMessage;
|
||||
//var currentFieldEdited;
|
||||
|
||||
//var rowLabels = [];
|
||||
|
||||
var smodel;
|
||||
var newCaseNewTab;
|
||||
|
||||
@@ -345,14 +267,12 @@ function redirect(href){
|
||||
window.location.href = href;
|
||||
}
|
||||
|
||||
function strReplace(strs, strr, str)
|
||||
{
|
||||
function strReplace(strs, strr, str) {
|
||||
var expresion = eval("/" + strs + "/gi");
|
||||
return (str.replace(expresion, strr));
|
||||
}
|
||||
|
||||
function toolTipTab(str, show)
|
||||
{
|
||||
function toolTipTab(str, show) {
|
||||
document.getElementById("toolTipTab").innerHTML = str;
|
||||
document.getElementById("toolTipTab").style.left = "3px"; //x
|
||||
document.getElementById("toolTipTab").style.top = "27px"; //y
|
||||
@@ -381,29 +301,12 @@ Ext.onReady(function () {
|
||||
pnlMain = new Ext.Panel({
|
||||
title: '',
|
||||
renderTo: 'cases-grid',
|
||||
//autoHeight : true,
|
||||
//height : 300,
|
||||
layout: 'fit',
|
||||
layoutConfig: {
|
||||
align: 'stretch'
|
||||
}
|
||||
});
|
||||
|
||||
//pnlMain = new Ext.Panel({
|
||||
// id: "pnlMain",
|
||||
//
|
||||
// region: "center",
|
||||
// margins: {top:3, right:3, bottom:3, left:3},
|
||||
// //bodyStyle: "padding: 25px 25px 25px 25px;", //propiedades ...
|
||||
// border: false
|
||||
//});
|
||||
|
||||
//LOAD ALL PANELS
|
||||
//var viewport = new Ext.Viewport({
|
||||
// layout:"fit",
|
||||
// items:[pnlMain]
|
||||
//});
|
||||
|
||||
parent._action = action;
|
||||
|
||||
optionMenuOpen = new Ext.Action({
|
||||
@@ -416,7 +319,6 @@ Ext.onReady(function () {
|
||||
text: _("ID_PAUSE_CASE"),
|
||||
iconCls: 'ICON_CASES_PAUSED',
|
||||
menu: new Ext.menu.DateMenu({
|
||||
//vtype: 'daterange',
|
||||
handler: function (dp, date) {
|
||||
pauseCase(date);
|
||||
}
|
||||
@@ -426,7 +328,6 @@ Ext.onReady(function () {
|
||||
|
||||
var buttonProcess = new Ext.Action({
|
||||
text: _("ID_DERIVATED"),
|
||||
//iconCls: 'ICON_CASES_PAUSED',
|
||||
handler: function () {
|
||||
Ext.Msg.confirm(_("ID_CONFIRM_ROUTING"), _("ID_ROUTE_BATCH_ROUTING"),
|
||||
function (btn, text) {
|
||||
@@ -464,12 +365,8 @@ Ext.onReady(function () {
|
||||
autoWidth: true,
|
||||
enableTabScroll: true,
|
||||
activeTab: 0,
|
||||
//resizeTabs: true,
|
||||
style: {
|
||||
//height: "1.55em"
|
||||
height: "1.65em"
|
||||
//,
|
||||
//border: "5px solid blue"
|
||||
},
|
||||
defaults: {
|
||||
autoScroll: true
|
||||
@@ -610,16 +507,9 @@ Ext.onReady(function () {
|
||||
btnJump
|
||||
];
|
||||
|
||||
//tb = new Ext.Toolbar({
|
||||
// height: 33,
|
||||
// items: toolbarconsolidated
|
||||
//});
|
||||
|
||||
var viewport = new Ext.Viewport({
|
||||
layout: "fit",
|
||||
autoScroll: true,
|
||||
|
||||
//items:[tabs, {id:"myDiv", border:false}]
|
||||
items: [tabs]
|
||||
});
|
||||
|
||||
@@ -643,17 +533,18 @@ Ext.onReady(function () {
|
||||
if (treePanel1) {
|
||||
node = treePanel1.getNodeById(_nodeId);
|
||||
}
|
||||
if (node) {
|
||||
if (window.node) {
|
||||
node.select();
|
||||
}
|
||||
}
|
||||
|
||||
//parent.updateCasesView();
|
||||
if (parent.updateCasesTree) {
|
||||
parent.updateCasesTree();
|
||||
|
||||
}
|
||||
function inArray(arr, obj) {
|
||||
for (var i = 0; i < arr.length; i++) {
|
||||
if (arr[i] == obj) return true;
|
||||
if (arr[i] == obj)
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
@@ -671,8 +562,7 @@ Ext.onReady(function () {
|
||||
start.setMaxValue(date);
|
||||
start.validate();
|
||||
this.dateRangeMax = date;
|
||||
}
|
||||
else if (field.endDateField && (!this.dateRangeMin || (date.getTime() != this.dateRangeMin.getTime()))) {
|
||||
} else if (field.endDateField && (!this.dateRangeMin || (date.getTime() != this.dateRangeMin.getTime()))) {
|
||||
var end = Ext.getCmp(field.endDateField);
|
||||
end.setMinValue(date);
|
||||
end.validate();
|
||||
@@ -685,7 +575,6 @@ Ext.onReady(function () {
|
||||
}
|
||||
});
|
||||
//Add the additional 'advanced' VTypes -- [End]
|
||||
|
||||
});
|
||||
|
||||
function msgBox(title, msg, type) {
|
||||
@@ -713,13 +602,7 @@ function msgBox(title, msg, type){
|
||||
});
|
||||
}
|
||||
|
||||
//function formatDate(value){
|
||||
// return Ext.isDate(value) ? value.dateFormat('d/m/Y') : value;
|
||||
//return value ? value : '';
|
||||
//}
|
||||
function renderTitle(val, p, r)
|
||||
{ //appUid = "'" + r.data['APP_UID'] + "'";
|
||||
//return '<img src="/images/ext/default/s.gif" class="x-tree-node-icon ICON_CASES_NOTES" unselectable="off" id="extdd-17" onClick="openCaseNotesWindow('+appUid+',true)">';
|
||||
function renderTitle(val, p, r) {
|
||||
return ("<a href=\"javascript:;\" onclick=\"openCase(); return (false);\">" + val + "</a>");
|
||||
}
|
||||
|
||||
@@ -727,281 +610,14 @@ function renderSummary (val, p, r) {
|
||||
var summaryIcon = '<img src="/images/ext/default/s.gif" class="x-tree-node-icon ss_layout_header" unselectable="off" id="extdd-17" ';
|
||||
summaryIcon += 'onclick="openSummaryWindow(' + "'" + r.data['APP_UID'] + "'" + ', ' + r.data['DEL_INDEX'] + ')" title="' + _('ID_SUMMARY') + '" />';
|
||||
return summaryIcon;
|
||||
};
|
||||
|
||||
function generateGridClassic(proUid, tasUid, dynUid){
|
||||
|
||||
var pager = 20; //pageSize
|
||||
var pagei = 0; //start
|
||||
Ext.Ajax.request({
|
||||
url: '../pmConsolidatedCL/proxyGenerateGrid',
|
||||
success: function(response) {
|
||||
var dataResponse = Ext.util.JSON.decode(response.responseText);
|
||||
var viewConfigObject;
|
||||
var textArea = dataResponse.hasTextArea;
|
||||
|
||||
if (textArea == false) {
|
||||
viewConfigObject = { //forceFit: true
|
||||
};
|
||||
} else {
|
||||
viewConfigObject = {
|
||||
//forceFit:true,
|
||||
enableRowBody:true,
|
||||
showPreview:true,
|
||||
getRowClass : function(record, rowIndex, p, store){
|
||||
if (this.showPreview) {
|
||||
p.body = '<p><br /></p>';
|
||||
return 'x-grid3-row-expanded';
|
||||
}
|
||||
return 'x-grid3-row-collapsed';
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
storeConsolidated = new Ext.data.Store({
|
||||
id: "storeConsolidatedGrid",
|
||||
remoteSort: true,
|
||||
proxy: new Ext.data.HttpProxy({
|
||||
url: "../pmConsolidatedCL/proxyConsolidated",
|
||||
api: {
|
||||
read: "../pmConsolidatedCL/proxyConsolidated",
|
||||
//update: "../pmConsolidatedCL/proxySaveConsolidated"
|
||||
update: "../pmConsolidatedCL/consolidatedUpdateAjax"
|
||||
}
|
||||
}),
|
||||
|
||||
reader: new Ext.data.JsonReader({
|
||||
fields: dataResponse.readerFields,
|
||||
totalProperty: "totalCount",
|
||||
//successProperty: "success",
|
||||
idProperty: "APP_UID",
|
||||
root: "data",
|
||||
messageProperty: "message"
|
||||
}),
|
||||
|
||||
writer: new Ext.data.JsonWriter({
|
||||
encode: true,
|
||||
writeAllFields: false
|
||||
}), //<-- plug a DataWriter into the store just as you would a Reader
|
||||
autoSave: true, //<-- false would delay executing create, update, destroy requests until specifically told to do so with some [save] buton.
|
||||
|
||||
//sortInfo:{
|
||||
// field: 'APP_CACHE_VIEW.APP_NUMBER',
|
||||
// direction: "DESC"
|
||||
//}
|
||||
|
||||
//,
|
||||
listeners: { //
|
||||
beforeload:function (store, options) { //
|
||||
grdNumRows = 0; //
|
||||
}, //
|
||||
|
||||
load:function (store, records, options) { //
|
||||
grdNumRows = store.getCount(); //
|
||||
|
||||
consolidatedGrid.setDisabled(false);
|
||||
} //
|
||||
} //
|
||||
});
|
||||
|
||||
var xColumns = dataResponse.columnModel;
|
||||
xColumns.unshift(smodel);
|
||||
|
||||
|
||||
var cm = new Ext.grid.ColumnModel(xColumns);
|
||||
cm.config[2].renderer = renderTitle; //Case Number
|
||||
cm.config[3].renderer = renderTitle; //Case Title
|
||||
cm.config[4].renderer = renderSummary;//Case Summary
|
||||
|
||||
storeConsolidated.setBaseParam("limit", pager);
|
||||
storeConsolidated.setBaseParam("start", pagei);
|
||||
storeConsolidated.setBaseParam('tasUid', tasUid);
|
||||
storeConsolidated.setBaseParam('dynUid', dynUid);
|
||||
storeConsolidated.setBaseParam('proUid', proUid);
|
||||
storeConsolidated.setBaseParam('dropList', Ext.util.JSON.encode(dataResponse.dropList));
|
||||
storeConsolidated.load();
|
||||
|
||||
consolidatedGrid = new Ext.grid.EditorGridPanel({
|
||||
id: gridId,
|
||||
region: "center",
|
||||
|
||||
store: storeConsolidated,
|
||||
cm: cm,
|
||||
sm: smodel,
|
||||
//autoHeight: true,
|
||||
|
||||
//height: pnlMain.getSize().height - pnlMain.getFrameHeight(), //
|
||||
width: pnlMain.getSize().width, //
|
||||
height: browserHeight - 35, //
|
||||
|
||||
layout: 'fit',
|
||||
//plugins: filters,
|
||||
viewConfig: viewConfigObject,
|
||||
|
||||
listeners: {
|
||||
beforeedit: function (e) {
|
||||
var selRow = Ext.getCmp(gridId).getSelectionModel().getSelected();
|
||||
|
||||
var swDropdown = 0;
|
||||
for (var i = 0; i <= dataResponse.dropList.length - 1 && swDropdown == 0; i++) {
|
||||
if (dataResponse.dropList[i] == e.field) {
|
||||
swDropdown = 1;
|
||||
}
|
||||
}
|
||||
|
||||
var swYesNo = 0;
|
||||
for (var i = 0; i <= dataResponse.comboBoxYesNoList.length - 1 && swYesNo == 0; i++) {
|
||||
if (dataResponse.comboBoxYesNoList[i] == e.field) {
|
||||
swYesNo = 1;
|
||||
}
|
||||
}
|
||||
|
||||
if (swDropdown == 1 && swYesNo == 0) {
|
||||
storeAux = Ext.StoreMgr.get("store" + e.field + "_" + proUid);
|
||||
storeAux.setBaseParam("appUid", selRow.data["APP_UID"]);
|
||||
storeAux.setBaseParam("dynUid", dynUid);
|
||||
storeAux.setBaseParam("proUid", proUid);
|
||||
storeAux.setBaseParam("fieldName", e.field);
|
||||
//currentFieldEdited = e.field;
|
||||
storeAux.load();
|
||||
}
|
||||
},
|
||||
|
||||
afteredit: function (e) {
|
||||
//var store = consolidatedGrid.getStore();
|
||||
|
||||
if (Ext.getCmp("chk_allColumn").checked) {
|
||||
Ext.Msg.show({
|
||||
title: "",
|
||||
msg: "The modification will be applied to all rows in your selection.",
|
||||
buttons: Ext.Msg.YESNO,
|
||||
fn: function (btn) {
|
||||
if (btn == "yes") {
|
||||
//storeConsolidated.each(function (record) {
|
||||
// record.set(e.field, e.value);
|
||||
//});
|
||||
|
||||
consolidatedGrid.setDisabled(true);
|
||||
|
||||
var dataUpdate = "";
|
||||
var strValue = "";
|
||||
var sw = 0;
|
||||
|
||||
if (e.value instanceof Date) {
|
||||
var mAux = e.value.getMonth() + 1;
|
||||
var dAux = e.value.getDate();
|
||||
var hAux = e.value.getHours();
|
||||
var iAux = e.value.getMinutes();
|
||||
var sAux = e.value.getSeconds();
|
||||
|
||||
strValue = e.value.getFullYear() + "-" + ((mAux <= 9)? "0" : "") + mAux + "-" + ((dAux <= 9)? "0" : "") + dAux;
|
||||
strValue = strValue + " " + ((hAux <= 9)? "0" + ((hAux == 0)? "0" : hAux) : hAux) + ":" + ((iAux <= 9)? "0" + ((iAux == 0)? "0" : iAux) : iAux) + ":" + ((sAux <= 9)? "0" + ((sAux == 0)? "0" : sAux) : sAux);
|
||||
} else {
|
||||
strValue = strReplace("\"", "\\\"", e.value + "");
|
||||
}
|
||||
|
||||
storeConsolidated.each(function (record) {
|
||||
dataUpdate = dataUpdate + ((sw == 1)? "(sep1 /)": "") + record.data["APP_UID"] + "(sep2 /)" + e.field + "(sep2 /)" + strValue;
|
||||
sw = 1;
|
||||
});
|
||||
|
||||
///////
|
||||
Ext.Ajax.request({
|
||||
url: "consolidatedUpdateAjax",
|
||||
method: "POST",
|
||||
params: {
|
||||
"option": "ALL",
|
||||
"dynaformUid": dynUid,
|
||||
"dataUpdate": dataUpdate
|
||||
},
|
||||
|
||||
success: function (response, opts) {
|
||||
var dataResponse = eval("(" + response.responseText + ")"); //json
|
||||
|
||||
if (dataResponse.status && dataResponse.status == "OK") {
|
||||
if (typeof(storeConsolidated.lastOptions.params) != "undefined") {
|
||||
pagei = storeConsolidated.lastOptions.params.start;
|
||||
}
|
||||
|
||||
storeConsolidated.setBaseParam("start", pagei);
|
||||
storeConsolidated.load();
|
||||
} else {
|
||||
//
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
},
|
||||
//animEl: "elId",
|
||||
icon: Ext.MessageBox.QUESTION
|
||||
});
|
||||
}
|
||||
},
|
||||
|
||||
mouseover: function (e, cell) {
|
||||
var rowIndex = consolidatedGrid.getView().findRowIndex(cell);
|
||||
if (!(rowIndex === false)) {
|
||||
var record = consolidatedGrid.store.getAt(rowIndex);
|
||||
var msg = record.get('APP_TITLE');
|
||||
Ext.QuickTips.register({
|
||||
text: msg,
|
||||
target: e.target
|
||||
});
|
||||
} else {
|
||||
Ext.QuickTips.unregister(e.target);
|
||||
}
|
||||
},
|
||||
|
||||
mouseout: function (e, cell) {
|
||||
Ext.QuickTips.unregister(e.target);
|
||||
}
|
||||
},
|
||||
|
||||
//tbar: tb,
|
||||
|
||||
tbar: new Ext.Toolbar({
|
||||
height: 33,
|
||||
items: toolbarconsolidated
|
||||
}),
|
||||
|
||||
bbar: new Ext.PagingToolbar({
|
||||
pageSize: pager,
|
||||
store: storeConsolidated,
|
||||
displayInfo: true,
|
||||
displayMsg: _("ID_DISPLAY_ITEMS"),
|
||||
emptyMsg: _("ID_DISPLAY_EMPTY")
|
||||
})
|
||||
});
|
||||
|
||||
//Ext.ComponentMgr.get("myId").body.update("");
|
||||
//pnlMain.removeAll(false);
|
||||
pnlMain.removeAll();
|
||||
//adicion del grid definido con anterioridad
|
||||
pnlMain.add(consolidatedGrid);
|
||||
pnlMain.doLayout();
|
||||
},
|
||||
|
||||
failure: function(){
|
||||
alert("Failure...");
|
||||
},
|
||||
|
||||
params: {
|
||||
xaction: 'read',
|
||||
tasUid: tasUid,
|
||||
dynUid: dynUid,
|
||||
proUid: proUid
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function generateGrid(proUid, tasUid, dynUid)
|
||||
{
|
||||
function generateGrid(proUid, tasUid, dynUid) {
|
||||
var pager = 20; //pageSize
|
||||
var pagei = 0; //start
|
||||
|
||||
Ext.Ajax.request({
|
||||
url: urlProxy + 'generate/' + proUid + '/' + tasUid + '/' + dynUid,
|
||||
//url: '../pmConsolidatedCL/proxyGenerateGrid',
|
||||
headers: {
|
||||
'Content-Type': 'application/json',
|
||||
'Authorization': 'Bearer ' + credentials.access_token
|
||||
@@ -1012,11 +628,10 @@ function generateGrid(proUid, tasUid, dynUid)
|
||||
var textArea = dataResponse.hasTextArea;
|
||||
|
||||
if (textArea == false) {
|
||||
viewConfigObject = { //forceFit: true
|
||||
viewConfigObject = {
|
||||
};
|
||||
} else {
|
||||
viewConfigObject = {
|
||||
//forceFit:true,
|
||||
enableRowBody: true,
|
||||
showPreview: true,
|
||||
getRowClass: function (record, rowIndex, p, store) {
|
||||
@@ -1028,6 +643,7 @@ function generateGrid(proUid, tasUid, dynUid)
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
storeConsolidated = new Ext.data.Store({
|
||||
id: "storeConsolidatedGrid",
|
||||
remoteSort: true,
|
||||
@@ -1052,38 +668,32 @@ function generateGrid(proUid, tasUid, dynUid)
|
||||
reader: new Ext.data.JsonReader({
|
||||
fields: dataResponse.readerFields,
|
||||
totalProperty: "totalCount",
|
||||
//successProperty: "success",
|
||||
idProperty: "APP_UID",
|
||||
root: "data",
|
||||
messageProperty: "message"
|
||||
}),
|
||||
|
||||
writer: new Ext.data.JsonWriter({
|
||||
encode: false,
|
||||
writeAllFields: false
|
||||
}), //<-- plug a DataWriter into the store just as you would a Reader
|
||||
autoSave: true, //<-- false would delay executing create, update, destroy requests until specifically told to do so with some [save] buton.
|
||||
|
||||
listeners: { //
|
||||
beforeload:function (store, options) { //
|
||||
grdNumRows = 0; //
|
||||
}, //
|
||||
|
||||
load:function (store, records, options) { //
|
||||
grdNumRows = store.getCount(); //
|
||||
|
||||
listeners: {
|
||||
beforeload: function (store, options) {
|
||||
grdNumRows = 0;
|
||||
},
|
||||
load: function (store, records, options) {
|
||||
grdNumRows = store.getCount();
|
||||
consolidatedGrid.setDisabled(false);
|
||||
} //
|
||||
} //
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
//carga de datos del data store via un request en Ajax
|
||||
//Loading data data from a request in Ajax
|
||||
//storeConsolidated.load();
|
||||
//ejemplo de un load con parametros para un data store
|
||||
//Example of a load with parameters for a data store
|
||||
//storeConsolidated.load({params:{start: 0 , limit: pageSize, action: 'todo'}});
|
||||
//definicion del column model basados en la respuesta del servidor
|
||||
//Definition of the column model based on server response
|
||||
//shorthand alias
|
||||
//var fm = Ext.form;
|
||||
var xColumns = dataResponse.columnModel;
|
||||
xColumns.unshift(smodel);
|
||||
|
||||
@@ -1092,34 +702,19 @@ function generateGrid(proUid, tasUid, dynUid)
|
||||
cm.config[3].renderer = renderTitle; //Case Title
|
||||
cm.config[4].renderer = renderSummary; //Case Summary
|
||||
|
||||
//generacion del grid basados en los atributos definidos con anterioridad
|
||||
/*
|
||||
storeConsolidated.setBaseParam("limit", pager);
|
||||
storeConsolidated.setBaseParam("start", pagei);
|
||||
storeConsolidated.setBaseParam('tasUid', tasUid);
|
||||
storeConsolidated.setBaseParam('dynUid', dynUid);
|
||||
storeConsolidated.setBaseParam('proUid', proUid);
|
||||
storeConsolidated.setBaseParam('dropList', Ext.util.JSON.encode(dataResponse.dropList));
|
||||
*/
|
||||
//Grid generation based on previously defined attributes
|
||||
storeConsolidated.load();
|
||||
|
||||
consolidatedGrid = new Ext.grid.EditorGridPanel({
|
||||
id: gridId,
|
||||
region: "center",
|
||||
|
||||
store: storeConsolidated,
|
||||
cm: cm,
|
||||
sm: smodel,
|
||||
//autoHeight: true,
|
||||
|
||||
//height: pnlMain.getSize().height - pnlMain.getFrameHeight(), //
|
||||
width: pnlMain.getSize().width, //
|
||||
height: browserHeight - 35, //
|
||||
|
||||
width: pnlMain.getSize().width,
|
||||
height: browserHeight - 35,
|
||||
layout: 'fit',
|
||||
//plugins: filters,
|
||||
viewConfig: viewConfigObject,
|
||||
|
||||
listeners: {
|
||||
beforeedit: function (e) {
|
||||
var selRow = Ext.getCmp(gridId).getSelectionModel().getSelected();
|
||||
@@ -1137,45 +732,11 @@ function generateGrid(proUid, tasUid, dynUid)
|
||||
swYesNo = 1;
|
||||
}
|
||||
}
|
||||
|
||||
//Saving the row previous values in order to fix the change label bug
|
||||
//Este bug se reproduce: cuando se cambia un dropdown y luego de otro row por ej un text se cambia su valor, el text del dropdown se copiaba a la fila del text actual en su dropdown, y asi
|
||||
//if (typeof(rowLabels["APP_UID"]) == "undefined" || selRow.data["APP_UID"] != rowLabels["APP_UID"]){
|
||||
// for (var key in selRow.data) {
|
||||
// rowLabels[key] = selRow.data[key];
|
||||
// }
|
||||
//}
|
||||
|
||||
//if (typeof(rowLabels["APP_UID"]) == "undefined"){
|
||||
// for (var key in selRow.data) {
|
||||
// rowLabels[key] = selRow.data[key];
|
||||
// }
|
||||
//}
|
||||
//else {
|
||||
// if(selRow.data["APP_UID"] != rowLabels["APP_UID"]) {
|
||||
// for (var key in selRow.data) {
|
||||
// rowLabels[key] = selRow.data[key];
|
||||
// }
|
||||
// }
|
||||
// //else {
|
||||
// //
|
||||
// //}
|
||||
//}
|
||||
|
||||
if (swDropdown == 1 && swYesNo == 0) {
|
||||
//comboStore.setBaseParam('appUid', selRow.data['APP_UID']);
|
||||
//comboStore.setBaseParam('dynUid', dynUid);
|
||||
//comboStore.setBaseParam('proUid', proUid);
|
||||
//comboStore.setBaseParam('fieldName', e.field);
|
||||
//currentFieldEdited = e.field;
|
||||
//comboStore.load();
|
||||
|
||||
}
|
||||
},
|
||||
|
||||
afteredit: function (e) {
|
||||
//var store = consolidatedGrid.getStore();
|
||||
|
||||
if (Ext.getCmp("chk_allColumn").checked) {
|
||||
Ext.Msg.show({
|
||||
title: "",
|
||||
@@ -1183,12 +744,7 @@ function generateGrid(proUid, tasUid, dynUid)
|
||||
buttons: Ext.Msg.YESNO,
|
||||
fn: function (btn) {
|
||||
if (btn == "yes") {
|
||||
//storeConsolidated.each(function (record) {
|
||||
// record.set(e.field, e.value);
|
||||
//});
|
||||
|
||||
consolidatedGrid.setDisabled(true);
|
||||
|
||||
var dataUpdate = "";
|
||||
var strValue = "";
|
||||
var sw = 0;
|
||||
@@ -1211,7 +767,6 @@ function generateGrid(proUid, tasUid, dynUid)
|
||||
sw = 1;
|
||||
});
|
||||
|
||||
///////
|
||||
Ext.Ajax.request({
|
||||
url: "consolidatedUpdateAjax",
|
||||
method: 'PUT',
|
||||
@@ -1236,13 +791,12 @@ function generateGrid(proUid, tasUid, dynUid)
|
||||
storeConsolidated.setBaseParam("start", pagei);
|
||||
storeConsolidated.load();
|
||||
} else {
|
||||
//
|
||||
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
},
|
||||
//animEl: "elId",
|
||||
icon: Ext.MessageBox.QUESTION
|
||||
});
|
||||
}
|
||||
@@ -1266,9 +820,6 @@ function generateGrid(proUid, tasUid, dynUid)
|
||||
Ext.QuickTips.unregister(e.target);
|
||||
}
|
||||
},
|
||||
|
||||
//tbar: tb,
|
||||
|
||||
tbar: new Ext.Toolbar({
|
||||
height: 33,
|
||||
items: toolbarconsolidated
|
||||
@@ -1283,17 +834,13 @@ function generateGrid(proUid, tasUid, dynUid)
|
||||
})
|
||||
});
|
||||
|
||||
//remocion de todos los elementos del panel principal donde se carga el grid
|
||||
//Ext.ComponentMgr.get("myId").body.update("");
|
||||
//pnlMain.removeAll(false);
|
||||
//Removal of all elements of the main panel where the grid is loaded
|
||||
pnlMain.removeAll();
|
||||
//adicion del grid definido con anterioridad
|
||||
//Addition of previously defined grid
|
||||
pnlMain.add(consolidatedGrid);
|
||||
//recarga de los elementos del grid, para su visualizacion.
|
||||
//Recharge of the elements of the grid, for visualization.
|
||||
pnlMain.doLayout();
|
||||
},
|
||||
|
||||
//en caso de fallo ejecutar la siguiente funcion.
|
||||
failure: function () {
|
||||
alert("Failure...");
|
||||
}
|
||||
@@ -1359,8 +906,7 @@ function ajaxDerivationRequest(appUid, delIndex, maxLenght, appNumber, fieldGrid
|
||||
});
|
||||
}
|
||||
|
||||
function linkRenderer(value)
|
||||
{
|
||||
function linkRenderer(value) {
|
||||
return "<a href=\"" + value + "\" onclick=\"window.open('" + value + "', '_blank'); return false;\">" + value + "</a>";
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user