/*
* ALM Enumeration Mapping Dialog
*/
#set ($SAVE_TEXT= $CommonFunctions.displayTermFromResourceBundle($currentUserId, "ALMTerms", "almterms.common.save"))
#set ($OK_TEXT= $CommonFunctions.displayTermFromResourceBundle($currentUserId, "ALMTerms", "almterms.common.ok"))
#set ($CANCEL_TEXT= $CommonFunctions.displayTermFromResourceBundle($currentUserId, "ALMTerms", "almterms.common.cancel"))
#set ($LOADING_TEXT= $CommonFunctions.displayTermFromResourceBundle($currentUserId, "ALMTerms", "almterms.common.loading"))
#set ($SAVE_FAILED_MSG = $CommonFunctions.displayTermFromResourceBundle($currentUserId, "ALMTerms", "almterms.common.savefailedmsg"))
#set ($SAVE_ERROR_TITLE= $CommonFunctions.displayTermFromResourceBundle($currentUserId, "ALMTerms", "almterms.common.saveerrortitle"))
#set ($SAVE_CHANGES_TITLE= $CommonFunctions.displayTermFromResourceBundle($currentUserId, "ALMTerms", "almterms.common.savechanges"))
#set ($loadmsg = $CommonFunctions.displayTermFromResourceBundle($currentUserId, "ALMTerms", "almterms.almconnections.loading"))
#set ($CHOOSE = $CommonFunctions.displayTermFromResourceBundle($currentUserId, "ALMTerms", "almterms.almconnections.choosemsg"))
#set ($DRAGMSG = $CommonFunctions.displayTermFromResourceBundle($currentUserId, "ALMTerms", "almterms.almconnections.dragmsg"))
#set ($DEFAULTMSG = $CommonFunctions.displayTermFromResourceBundle($currentUserId, "ALMTerms", "almterms.almconnections.defaultmsg"))
#set ($CHOOSENATIVEMSG = $CommonFunctions.displayTermFromResourceBundle($currentUserId, "ALMTerms", "almterms.almconnections.choosenativemsg"))
#set ($SAVEMSGPART1 = $CommonFunctions.displayTermFromResourceBundle($currentUserId, "ALMTerms", "almterms.almconnections.saveemsgpart1"))
#set ($SAVEMSGPART2 = $CommonFunctions.displayTermFromResourceBundle($currentUserId, "ALMTerms", "almterms.almconnections.saveemsgpart2"))
#set ($UDA_LOAD_ERROR_MSG = $CommonFunctions.displayTermFromResourceBundle($currentUserId, "ALMTerms", "almterms.almenummappingdialog.udaloaderrormsg"))
#set ($ENUM_LOAD_ERROR_MSG = $CommonFunctions.displayTermFromResourceBundle($currentUserId, "ALMTerms", "almterms.almenummappingdialog.enumloaderrormsg"))
#set ($ENUM_MAPPING_LOAD_ERROR_MSG = $CommonFunctions.displayTermFromResourceBundle($currentUserId, "ALMTerms", "almterms.almenummappingdialog.enummappingsloaderrormsg"))
#set ($ENUMERATION_LABEL = $CommonFunctions.displayTermFromResourceBundle($currentUserId, "ALMTerms", "almterms.almenummappingdialog.enumerationlabel"))
#set ($MASTER_HEADER= $CommonFunctions.displayTermFromResourceBundle($currentUserId, "ALMTerms", "almterms.almenummappingdialog.masterheader"))
#set ($MAPPED_HEADER= $CommonFunctions.displayTermFromResourceBundle($currentUserId, "ALMTerms", "almterms.almenummappingdialog.mappedheader"))
#set ($NAME_HEADER= $CommonFunctions.displayTermFromResourceBundle($currentUserId, "ALMTerms", "almterms.almenummappingdialog.nameheader"))
#set ($ENUM_DIALOG_TITLE= $CommonFunctions.displayTermFromResourceBundle($currentUserId, "ALMTerms", "almterms.almenummappingdialog.title"))
#set ($ALT_DEFAULT_MSG= $CommonFunctions.displayTermFromResourceBundle($currentUserId, "ALMTerms", "almterms.almenummappingdialog.altdefaultmsg"))
#set ($DROP_HERE= $CommonFunctions.displayTermFromResourceBundle($currentUserId, "ALMTerms", "almterms.almenummappingdialog.drophere"))
#set ($DEFAULT_MENU_ITEM= $CommonFunctions.displayTermFromResourceBundle($currentUserId, "ALMTerms", "almterms.almenummappingdialog.defaultmenu"))
#set ($REMOVE_MENU_ITEM= $CommonFunctions.displayTermFromResourceBundle($currentUserId, "ALMTerms", "almterms.almenummappingdialog.removemenu"))
#set ($UDA_VALUE= $CommonFunctions.displayTermFromResourceBundle($currentUserId, "ALMTerms", "almterms.almenummappingdialog.udavalue"))
#set ($UDA_VALUE= $CommonFunctions.displayTermFromResourceBundle($currentUserId, "ALMTerms", "almterms.saveenumprogress"))
#set ($ATTR_LOAD_ERROR= $CommonFunctions.displayTermFromResourceBundle($currentUserId, "ALMTerms", "almterms.attrloaderror"))
#set ($SAVE_ENUM_PROGRESS= $CommonFunctions.displayTermFromResourceBundle($currentUserId, "ALMTerms", "almterms.almenummappingdialog.saveenumwait"))
var SEPARATOR = "$@_%_@$"; //something wierd
var LOADREUDA_ENUMVALUES = "LOADREUDA_ENUMVALUES"; //uda enum values
var LOADRE_ENUMUDAS = "LOADRE_ENUMUDAS"; //only enum UDAS
var LOAD_LINK_ENUMERATION_MAPPINGS = "LOAD_LINK_ENUMERATION_MAPPINGS";
var SAVE_LINK_ENUMERATION_MAPPINGS = "SAVE_LINK_ENUMERATION_MAPPINGS";
//task related
var LOADTASKUDA_ENUMVALUES = "LOADTASKUDA_ENUMVALUES"; //uda enum values
var LOADTASK_ENUMUDAS = "LOADTASK_ENUMUDAS"; //only enum UDAS
var LOAD_TASK_LINK_ENUMERATION_MAPPINGS = "LOAD_TASK_LINK_ENUMERATION_MAPPINGS";
var SAVE_TASK_LINK_ENUMERATION_MAPPINGS = "SAVE_TASK_LINK_ENUMERATION_MAPPINGS";
//test casee
var LOAD_TESTCASE_UDA_ENUMVALUES = "LOAD_TESTCASE_UDA_ENUMVALUES"; //uda enum values
var LOAD_TESTCASE_ENUMUDAS = "LOAD_TESTCASE_ENUMUDAS"; //only enum UDAS
var LOAD_TESTCASE_LINK_ENUMERATION_MAPPINGS = "LOAD_TESTCASE_LINK_ENUMERATION_MAPPINGS";
var SAVE_TESTCASE_LINK_ENUMERATION_MAPPINGS = "SAVE_TESTCASE_LINK_ENUMERATION_MAPPINGS";
//Change request
var LOAD_CHANGEREQUEST_UDA_ENUMVALUES = "LOAD_CHANGEREQUEST_UDA_ENUMVALUES"; //uda enum values
var LOAD_CHANGEREQUEST_ENUMUDAS = "LOAD_CHANGEREQUEST_ENUMUDAS"; //only enum UDAS
var LOAD_CHANGEREQUEST_LINK_ENUMERATION_MAPPINGS = "LOAD_CHANGEREQUEST_LINK_ENUMERATION_MAPPINGS";
var SAVE_CHANGEREQUEST_LINK_ENUMERATION_MAPPINGS = "SAVE_CHANGEREQUEST_LINK_ENUMERATION_MAPPINGS";
var almEnumMappingDialog = {
xLinkType: REQUIREMENT, // defaults to requirement, will have to be set before calling show
xLinkName:'',
enumCombo : null,
enumComboDS:null,
dlgCtrlFrm : null,
lhsGridPanel:null,
rhsGridPanel:null,
lhsDS:null,
rhsDS:null,
rhsRec:null,
projectId:null,
xlinkId:null,
ddTarget:null,
cmenu:null,
modified:false,
currentEnum:null,
callbackfn:null,
selecteditem:null,
progressWaitMsgBox:null,
init : function() {
/////////////////////////////////// ENUM COMBO //////////////////////////////////////////////////
almEnumMappingDialog.enumComboDS = new Ext.data.Store({
id : 0,
proxy: new Ext.data.HttpProxy({url:'ajax/AsyncHandler?projectId=$projectId&xlinkId=$xlinkId'}),
reader: new Ext.data.JsonReader({
id: 'udaId'
}, [
{name: 'udaId'},
{name: 'udaName'},
{name: 'udatt'},
{name:'warningMsg'},
{name:'errorcodes'},
{name: 'repositoryid'}
]),
sortInfo:{field: 'udaName', direction: "ASC"}
});
almEnumMappingDialog.enumComboDS.on('loadexception', function(proxy, data, arg, e) {
var options = {settings:{show:"true", title:'$UDA_LOAD_ERROR_MSG'}};
ErrorHandlerLib.showResponseError( arg, options );
});
almEnumMappingDialog.enumComboDS.on('load', function(store, records, options){
ErrorHandlerLib.OnStoreLoad(store, records, options,'$ENUM_LOAD_ERROR_MSG');
});
almEnumMappingDialog.enumCombo = new Ext.form.ComboBox({
fieldLabel: '$ENUMERATION_LABEL',
name: 'enumeration',
store: almEnumMappingDialog.enumComboDS,
displayField: 'udaName',
valueField: 'udaId',
selectOnFocus: true,
forceSelection : true,
listClass: 'x-combo-list-small',
mode: 'local',
emptyText :'$CHOOSE',
allowBlank: true,
triggerAction: 'all',
editable: false,
autoWidth: false,
anchor: '50%',
listeners : { select : almEnumMappingDialog.onEnumerationSelect,
beforeselect :almEnumMappingDialog.onEnumerationBeforeSelect }
});
/////////////////////////////////// LHS PANEL //////////////////////////////////////////////////
//json reader
almEnumMappingDialog.lhsDS = new Ext.data.Store({
proxy: new Ext.data.HttpProxy({url:'ajax/AsyncHandler'}),
reader: new Ext.data.JsonReader({},
[
{ name:'udaId' },
{ name:'udaNativeName' },
{ name:'masterId' },
{ name:'masterName' },
{ name:'nativeIds' },
{ name:'nativeNames' },
{ name:'masterDefault' },
{ name:'nativeDefault' },
{name:'warningMsg'},
{name:'errorcodes'},
{name: 'repositoryid'}
]),
listeners : {}
});
almEnumMappingDialog.lhsDS.on('load', function(store, records, options){
ErrorHandlerLib.OnStoreLoad(store, records, options,'$ENUM_MAPPING_LOAD_ERROR_MSG');
});
almEnumMappingDialog.lhsDS.on('loadexception', function(proxy, data, arg, e) {
var options = {settings:{show:"true", title:'$UDA_LOAD_ERROR_MSG'}};
ErrorHandlerLib.showResponseError( arg, options );
});
var image ='../common/system/images/Default.png';
almEnumMappingDialog.lhsGridPanel = new Ext.grid.GridPanel({
store: almEnumMappingDialog.lhsDS,
columns: [
{id:'master',header: '$MASTER_HEADER', width: 140, sortable: false, dataIndex: 'masterName',renderer:almEnumMappingDialog.renderName},
{id:'mapped',header: '$MAPPED_HEADER', width: 140, sortable: false, dataIndex: 'nativeNames',renderer:almEnumMappingDialog.renderMappedTo}
],
tbar : [ '' + '$DRAGMSG' + '
' ],
bbar : [almEnumMappingDialog.createToolTipButton('',image),'$DEFAULTMSG'],
clicksToEdit: 1,
stripeRows: false,
height:250,
width:300,
frame: true,
border: false,
bodyBorder: false,
layout: 'fit',
autoExpandColumn:'mapped' ,
enableDragDrop :true,
loadMask: {msg:'$loadmsg'},
renderTo : document.body
});
// set dragdrop
almEnumMappingDialog.lhsGridPanel.getDragDropText = function() {
var rec = this.selModel.getSelected();
return rec.get('nativeNames');
}
almEnumMappingDialog.lhsGridPanel.ddTarget = new Ext.dd.DropTarget(almEnumMappingDialog.lhsGridPanel.getEl(), {
ddGroup : 'UDAGroup',
copy:false,
containerScroll : true,
notifyDrop : almEnumMappingDialog.OnNotifyDrop
} );
// For row drag and drop scrolling .
Ext.dd.ScrollManager.register(almEnumMappingDialog.lhsGridPanel.view.scroller);
/////////////////////////////////// RHS PANEL //////////////////////////////////////////////////
//record
almEnumMappingDialog.rhsRec = Ext.data.Record.create([
{name: 'udaValueId'},
{name: 'udaValueName'},
{name:'warningMsg'},
{name:'errorcodes'},
{name: 'repositoryid'}
]);
//json reader
almEnumMappingDialog.rhsDS = new Ext.data.Store({
proxy: new Ext.data.HttpProxy({url:'ajax/AsyncHandler' }),
reader: new Ext.data.JsonReader({},almEnumMappingDialog.rhsRec),
sortInfo:{field: 'udaValueName', direction: "ASC"},
listeners : {}
});
almEnumMappingDialog.rhsDS.on('load', function(store, records, options){
ErrorHandlerLib.OnStoreLoad(store, records, options,"$ATTR_LOAD_ERROR");
});
almEnumMappingDialog.rhsDS.on('loadexception', function(proxy, data, arg, e) {
var options = {settings:{show:"true", title:'$ENUM_MAPPING_LOAD_ERROR_MSG'}};
ErrorHandlerLib.showResponseError( arg, options );
});
almEnumMappingDialog.rhsGridPanel = new Ext.grid.GridPanel({
store:almEnumMappingDialog.rhsDS,
columns: [
{id:'id',hidden:true, width: 10, sortable: true, dataIndex: 'udaValueId', renderer:almEnumMappingDialog.renderName},
{id:'name',header:'$NAME_HEADER',width: 160, sortable: true, dataIndex: 'udaValueName', renderer:almEnumMappingDialog.renderName}
],
tbar : ['' + '$CHOOSENATIVEMSG'+'' + almEnumMappingDialog.xLinkName + '' ],
// bbar:[' '],
clicksToEdit: 1,
stripeRows: false,
height:250,
width:200,
frame: true,
border: false,
bodyBorder: false,
layout: 'fit',
enableDragDrop :true,
autoExpandColumn:'name',
ddGroup : 'UDAGroup',
renderTo : document.body,
ddText:'$UDA_VALUE',
loadMask: {msg:'$loadmsg'}
});
almEnumMappingDialog.rhsGridPanel.getDragDropText = function() {
var count = this.selModel.getCount();
var selections = this.selModel.selections;
var result = '';
for(i = 0; i < count; i ++)
{
var rec = selections.get(i);
if(i>0) result += ", ";
result += rec.data.udaValueName;
}
return result;
}
/////////////////////////////////// FORM //////////////////////////////////////////////////
// form control
almEnumMappingDialog.dlgFormCtrl = new Ext.FormPanel({
buttonAlign: 'right',
labelAlign: 'right',
labelWidth: 70,
frame:true,
width: 600,
// reader: new Ext.data.JsonReader({}, almEnumMappingDialog.mappingRec),
items: [{
layout: 'form',
items: [
almEnumMappingDialog.enumCombo ,
{
items :[{
layout: 'column',
items: [ almEnumMappingDialog.lhsGridPanel,
new Ext.HTMLComponent({
html:'