#set ($orig_demand_select = $CommonFunctions.getEncodedTermFromResourceBundle($currentUserId, "Demand", "demand.duplicates.select.dialog"))
#set ($select_button = $CommonFunctions.getEncodedTermFromResourceBundle($currentUserId, "Demand", "demand.duplicates.select.button"))
var origDemand = {
requestType : null,
demandId : null,
parentDemandId: null,
init : function(){
origDemand.ds = new Ext.data.Store({
proxy: new Ext.data.HttpProxy({
url: 'ajax2/Gemini?action=demand.web.GetOrigDemandAction'
}),
reader: new Ext.data.JsonReader(
{
root: 'rows'
},
[
{name: 'demandId'},
{name: 'name', sortType:'asUCString'},
{name: 'description'},
{name: 'requestTime', sortType:'asUCString'},
{name: 'requestTimeDisplay', sortType:'asDate'},
{name: 'submittedTo', sortType:'asUCString'},
{name: 'submittedBy', sortType:'asUCString'}
]
)
});
var expander = new Ext.grid.RowExpander({
tpl : new Ext.Template(
'
$table_desc_text: {description}
'
)
});
origDemand.grid = new Ext.grid.GridPanel({
ds: origDemand.ds,
autoExpandColumn: 'name',
cm: new Ext.grid.ColumnModel([
expander,
{id:'name', header: '$table_demandname_text', width: 200, sortable: true, dataIndex: 'name'},
{header: '$table_submittedby_text', width: 120, sortable: true, dataIndex: 'submittedBy'},
{header: '$table_requesttime_text', width: 100, sortable: true, dataIndex: 'requestTimeDisplay'},
{header: '$table_submittedto_text', width: 140, sortable: true, dataIndex: 'submittedTo'}
]),
loadMask: {msg:'$table_load_msg'},
frame:false,
collapsible: false,
animCollapse: false,
layout:'fit',
renderTo: document.body,
enableHdMenu: false,
selModel : new Ext.grid.RowSelectionModel({
singleSelect : true
}),
plugins: expander
});
origDemand.formCtrl = new Ext.FormPanel({
labelWidth: 90,
border: false,
width: 500,
layout: 'form',
buttonAlign: 'right',
labelAlign: 'right',
renderTo: document.body,
items: [{
xtype:'textfield',
id: 'projectNameId',
fieldLabel: '$demand_table_item_name',
name: 'projectName',
width: 400,
allowBlank: false
}]
});
if(!origDemand.demandWindow){
origDemand.demandWindow = new Ext.Window({
layout: 'fit',
width: 550,
height: 250,
closeAction: 'hide',
plain: true,
modal: true,
resizable: false,
renterTo: document.body,
title: '$orig_demand_select',
closable: true,
items: origDemand.grid,
buttons: [{
id: 'origDemandSelectButton',
text: '$select_button',
handler: function(){
var selected = origDemand.grid.selModel.getSelected();
if(selected){
origDemand.demandWindow.hide();
demandTable.origDemandLinking(selected.data);
}
}
},
{
id: 'origDemandCancelButton',
text: '$cancel_button',
handler: function(){
origDemand.demandWindow.hide();
}
}]
});
}
},
showOrigDemand: function(type, demandId, parentId){
origDemand.requestType = type;
origDemand.demandId = demandId;
origDemand.parentDemandId = parentId;
origDemand.ds.load({
params : {requestType: origDemand.requestType,
demandId: origDemand.demandId},
callback: function(records, options, success){
var record;
for(var i = 0; i < records.length; i++){
if(records[i].data.demandId == origDemand.parentDemandId){
record = records[i];
}
}
var recordArray = new Array(record);
origDemand.grid.selModel.selectRecords(recordArray);
}
});
origDemand.demandWindow.show();
}
};