Skip to content

Commit

Permalink
Fix the supported file extensions list in UI
Browse files Browse the repository at this point in the history
  • Loading branch information
paulsmirnov committed Nov 20, 2017
1 parent 4b99e42 commit ea8bff3
Showing 1 changed file with 9 additions and 6 deletions.
15 changes: 9 additions & 6 deletions demo/scripts/ui/Menu.js
Original file line number Diff line number Diff line change
Expand Up @@ -1261,7 +1261,7 @@ Menu.prototype._presetsPanelActionsPdbInputsRefresh = function(self) {
.get(0));

var extractExtension = function(name) {
var parts = name.toUpperCase().split('/');
var parts = name.toLowerCase().split('/');
var lastPart = parts[parts.length - 1];
parts = lastPart.split('\\');
lastPart = parts[parts.length - 1];
Expand Down Expand Up @@ -1362,16 +1362,19 @@ Menu.prototype._presetsPanelActionsPdbInputsRefresh = function(self) {
mainExtension = extractExtension(self.presetsPanel.inputs.main);
}

if (mainExtension === 'TOP' || mainExtension === 'PRMTOP') {
const extensions = ['pdb', 'ent', 'cif', 'mmcif', 'mmtf', 'cml', 'json', 'ccp4'].sort();
const extRegExp = new RegExp('^(' + extensions.join('|') + ')$');
const extString = extensions.map(ext => `.${ext}`).join(', ');

if (mainExtension.match(/^(top|prmtop)$/)) {
self.presetsPanel.inputs.mainIsAMBER = true;
self.presetsPanel.inputs.mainIsCorrect = true;
} else if (self.presetsPanel.inputs.main instanceof File &&
mainExtension !== 'PDB' && mainExtension !== 'MMTF') {
} else if (self.presetsPanel.inputs.main instanceof File && !mainExtension.match(extRegExp)) {
self.presetsPanel.inputs.mainIsAMBER = false;
self.presetsPanel.inputs.mainIsCorrect = false;
self.presetsPanel.inputs.isCorrect = false;
self.presetsPanel.inputs.sub = null;
mainAlertText = 'Only .pdb, .top and .prmtop files are supported.';
mainAlertText = `Only the following filename extensions are supported: ${extString}`;
} else {
self.presetsPanel.inputs.mainIsAMBER = false;
self.presetsPanel.inputs.mainIsCorrect = true;
Expand All @@ -1396,7 +1399,7 @@ Menu.prototype._presetsPanelActionsPdbInputsRefresh = function(self) {
subExtension = extractExtension(self.presetsPanel.inputs.sub);
}

if (subExtension === 'NC') {
if (subExtension === 'nc') {
self.presetsPanel.inputs.subIsCorrect = true;
self.presetsPanel.inputs.isCorrect = true;
} else {
Expand Down

0 comments on commit ea8bff3

Please sign in to comment.