},
{
"listeners": {
- "click": "function (_self, e)\n{\n var sels = _this.grid.selModel.getSelections()\n\n var pid = 0;\n var ids = [];\n Roo.each(sels, function(s) {\n ids.push(s.data.id);\n if (pid && s.data.project_id != pid) {\n pid = -1;\n return false;\n }\n pid = s.data.project_id ;\n \n });\n if (pid < 1) {\n Roo.MessageBox.alert(\"Error\", \"selected tickets must be of the same project\");\n return;\n }\n \n // permission based?\n \n Pman.Dialog.MTrackBulkChange.show({\n project_id : sels[0].data.project_id,\n project_id_name : sels[0].data.project_id_name,\n ids : ids.join(',')\n }, function(res) {\n Roo.log(res);\n var tks = {};\n \n Roo.each(res.data, function(d) {\n tks[d.id*1] = d;\n });\n \n Roo.each(sels, function(record) {\n record.modified = record.modified || {};\n \n for (var k in tks[record.data.id*1]) {\n // update the \n if (!k.match(/_id$/) && !k.match(/_id_/)) {\n continue;\n }\n record.data[k] = tks[record.data.id*1][k];\n record.modified[k] = tks[record.data.id*1][k];\n }\n record.store.afterEdit(record);\n });\n \n });\n\n \n \n}"
+ "click": "function (_self, e)\n{\n var sels = _this.grid.selModel.getSelections()\n\n var pid = 0;\n var ids = [];\n Roo.each(sels, function(s) {\n ids.push(s.data.id);\n if (pid && s.data.project_id != pid) {\n pid = -1;\n return false;\n }\n pid = s.data.project_id ;\n \n });\n if (pid < 1) {\n Roo.MessageBox.alert(\"Error\", \"selected tickets must be of the same project\");\n return;\n }\n \n // permission based?\n \n Pman.Dialog.MTrackBulkChange.show({\n project_id : sels[0].data.project_id,\n project_id_name : sels[0].data.project_id_name,\n ids : ids.join(',')\n }, function(res) {\n Roo.log(res);\n var tks = {};\n \n Roo.each(res.data, function(d) {\n tks[d.id*1] = d;\n });\n \n Roo.each(sels, function(sel) {\n var record = _this.grid.ds.getById(sel.data.id);\n record.modified = record.modified || {};\n \n for (var k in tks[record.data.id*1]) {\n // update the \n if (!k.match(/_id$/) && !k.match(/_id_/)) {\n continue;\n }\n record.data[k] = tks[record.data.id*1][k];\n record.modified[k] = tks[record.data.id*1][k];\n }\n record.store.afterEdit(record);\n });\n \n });\n\n \n \n}"
},
"text": "Bulk Change",
"xtype": "Button",
tks[d.id*1] = d;
});
- Roo.each(sels, function(record) {
+ Roo.each(sels, function(sel) {
+ var record = _this.grid.ds.getById(sel.data.id);
record.modified = record.modified || {};
for (var k in tks[record.data.id*1]) {