in client/client/app/components/ngbTargetPanel/ngbTargetsTab/ngbTargetsForm/ngbTargetGenesTable/ngbTargetGenesTable.controller.js [293:429]
getTableColumns() {
const headerCells = require('./ngbTargetGenesTableCells/ngbTargetGenesTable_header.tpl.html');
const inputCell = require('./ngbTargetGenesTableCells/ngbTargetGenesTable_inputCell.tpl.html');
const selectCell = require('./ngbTargetGenesTableCells/ngbTargetGenesTable_selectCell.tpl.html');
const listCell = require('./ngbTargetGenesTableCells/ngbTargetGenesTable_listCell.tpl.html');
const removeCell = require('./ngbTargetGenesTableCells/ngbTargetGenesTable_removeCell.tpl.html');
const additionalCell = require('./ngbTargetGenesTableCells/ngbTargetGenesTable_additionalCell.tpl.html');
const tableCell = require('./ngbTargetGenesTableCells/ngbTargetGenesTable_tableCell.tpl.html')
const launchCell = require('./ngbTargetGenesTableCells/ngbTargetGenesTable_launchCell.tpl.html');
const result = [];
const columnsList = this.ngbTargetGenesTableService.currentColumnFields;
for (let i = 0; i < columnsList.length; i++) {
let columnSettings = null;
const column = columnsList[i];
const columnName = this.ngbTargetGenesTableService.getColumnName(column);
const isColumnSort = this.ngbTargetGenesTableService.getIsColumnSort(columnName);
const settings = {
name: column,
displayName: columnName,
enableHiding: false,
field: column,
headerTooltip: column,
headerCellTemplate: headerCells,
minWidth: 40,
width: '*'
}
const defaultSettings = {
...settings,
enableColumnMenu: false,
enableSorting: false,
enableFiltering: false,
};
const parasiteSettings = {
...settings,
enableColumnMenu: isColumnSort,
enableSorting: isColumnSort,
enableFiltering: this.displayFilters,
};
switch (column) {
case 'geneId':
case 'taxId':
case 'speciesName':
if (this.isParasite) {
columnSettings = {
...parasiteSettings,
cellTemplate: inputCell,
};
} else {
columnSettings = {
...defaultSettings,
cellTemplate: inputCell,
};
}
break;
case 'geneName':
if (this.isParasite) {
columnSettings = {
...parasiteSettings,
cellTemplate: listCell,
};
} else {
columnSettings = {
...defaultSettings,
cellTemplate: listCell,
};
}
break;
case 'priority':
case 'status':
if (this.isParasite) {
columnSettings = {
...parasiteSettings,
cellTemplate: selectCell,
};
} else {
columnSettings = {
...defaultSettings,
cellTemplate: selectCell,
};
}
break;
case 'additionalGenes':
case 'ttdTargets':
columnSettings = {
...parasiteSettings,
enableColumnMenu: false,
enableSorting: false,
enableFiltering: this.displayFilters,
cellTemplate: tableCell,
};
break;
case 'remove':
columnSettings = {
...defaultSettings,
minWidth: 38,
maxWidth: 38,
cellTemplate: removeCell,
enableColumnMenu: false,
enableSorting: false,
enableFiltering: false,
enableMove: false,
};
break;
case 'launch':
columnSettings = {
...defaultSettings,
minWidth: 38,
maxWidth: 38,
cellTemplate: launchCell,
enableColumnMenu: false,
enableSorting: false,
enableFiltering: false,
enableMove: false,
};
break;
default:
if (this.isParasite) {
columnSettings = {
...parasiteSettings,
cellTemplate: additionalCell,
};
} else {
columnSettings = {
...defaultSettings,
cellTemplate: additionalCell,
};
}
break;
}
if (columnSettings) {
result.push(columnSettings);
}
}
return result;
}