Skip to content
Snippets Groups Projects
Commit 8f62bbdf authored by Piotr Gawron's avatar Piotr Gawron
Browse files

opening of edit genome window

parent ed3d5961
No related branches found
No related tags found
2 merge requests!345Resolve "Genes annotations don't show",!344Resolve "Genome browser in submaps not working"
......@@ -510,7 +510,8 @@ h1 {
.minerva-projects-tab .minerva-menu-row button,
.minerva-edit-project-dialog .minerva-menu-row button,
.minerva-users-tab .minerva-menu-row button {
.minerva-users-tab .minerva-menu-row button,
.minerva-genome-tab .minerva-menu-row button {
margin: 5px;
}
......
......@@ -44,6 +44,8 @@ GenomeAdminPanel.prototype._createGui = function () {
});
self.getElement().appendChild(genomeDiv);
genomeDiv.appendChild(self._createMenuRow());
var genomesTable = Functions.createElement({
type: "table",
name: "genomeTable",
......@@ -104,6 +106,44 @@ GenomeAdminPanel.prototype._createGui = function () {
return self.showEditDialog(parseInt($(button).attr("data"))).catch(GuiConnector.alert);
});
genomeDiv.appendChild(self._createMenuRow());
};
/**
*
* @returns {HTMLElement}
* @private
*/
GenomeAdminPanel.prototype._createMenuRow = function () {
var self = this;
var menuRow = Functions.createElement({
type: "div",
className: "minerva-menu-row",
style: "display:table-row; margin:10px"
});
var addProjectButton = Functions.createElement({
type: "button",
name: "addGenome",
content: '<span class="ui-icon ui-icon-circle-plus"></span>&nbsp;ADD GENOME',
onclick: function () {
return self.onAddClicked().catch(GuiConnector.alert);
},
xss: false
});
var refreshButton = Functions.createElement({
type: "button",
name: "refreshGenomes",
content: '<span class="ui-icon ui-icon-refresh"></span>&nbsp;REFRESH',
onclick: function () {
return self.onRefreshClicked().catch(GuiConnector.alert);
},
xss: false
});
menuRow.appendChild(addProjectButton);
menuRow.appendChild(refreshButton);
return menuRow;
};
/**
......@@ -116,15 +156,24 @@ GenomeAdminPanel.prototype.init = function () {
return self.getServerConnector().getLoggedUser();
}).then(function (user) {
if (user.hasPrivilege(self.getConfiguration().getPrivilegeType(PrivilegeType.MANAGE_GENOMES))) {
return self.getServerConnector().getReferenceGenomes().then(function (referenceGenomes) {
return self.setReferenceGenomes(referenceGenomes);
});
return self.onRefreshClicked();
} else {
self.disablePanel("You have no privilege to manage genomes");
}
});
};
/**
*
* @returns {Promise}
*/
GenomeAdminPanel.prototype.onRefreshClicked = function () {
var self = this;
return self.getServerConnector().getReferenceGenomes().then(function (referenceGenomes) {
return self.setReferenceGenomes(referenceGenomes);
});
};
/**
*
* @param {ReferenceGenome[]} referenceGenomes
......@@ -221,7 +270,7 @@ GenomeAdminPanel.prototype.getDialog = function (genome) {
serverConnector: self.getServerConnector()
});
self._dialogs[id] = dialog;
if (id === "null") {
if (id === undefined) {
dialog.addListener("onSave", function () {
return self.onRefreshClicked();
});
......@@ -256,5 +305,22 @@ GenomeAdminPanel.prototype.showEditDialog = function (id) {
});
};
/**
*
* @returns {Promise}
*/
GenomeAdminPanel.prototype.onAddClicked = function () {
var self = this;
GuiConnector.showProcessing();
var referenceGenome = new ReferenceGenome();
return self.getDialog(referenceGenome).then(function (dialog) {
dialog.open();
GuiConnector.hideProcessing();
}).catch(function (error) {
GuiConnector.hideProcessing();
return Promise.reject(error);
});
};
module.exports = GenomeAdminPanel;
......@@ -48,6 +48,25 @@ describe('GenomeAdminPanel', function () {
});
});
it('open add genome dialog', function () {
helper.loginAsAdmin();
var mapTab;
return ServerConnector.getConfiguration().then(function (configuration) {
mapTab = new GenomeAdminPanel({
element: testDiv,
configuration: configuration,
serverConnector: ServerConnector
});
return mapTab.init();
}).then(function () {
assert.equal(0, logger.getWarnings().length);
var element = $("[name='addGenome']")[0];
return element.onclick();
}).then(function () {
return mapTab.destroy();
});
});
it('remove genome', function () {
helper.loginAsAdmin();
var mapTab;
......
{"downloadProgress":100.0,"geneMapping":[],"idObject":1563,"localUrl":"../minerva-big//5280/hg38.2bit","organism":{"annotatorClassName":"","descriptionByType":"","descriptionByTypeRelation":"","id":927074,"link":"http://www.ncbi.nlm.nih.gov/Taxonomy/Browser/wwwtax.cgi?mode=Info&id=9606","resource":"9606","type":"TAXONOMY"},"sourceUrl":"ftp://hgdownload.cse.ucsc.edu/goldenPath/hg38/bigZips/hg38.2bit","type":"UCSC","version":"hg38"}
\ No newline at end of file
[{"version":"hg38"},{"version":"hg24may2000"},{"version":"hg19"},{"version":"hg18"},{"version":"hg17"},{"version":"hg16"},{"version":"hg15june2000"},{"version":"hg13"},{"version":"hg12"},{"version":"hg11"},{"version":"hg10"},{"version":"10april2003"},{"version":"hg8"},{"version":"hg7"},{"version":"hg6"},{"version":"hg5"},{"version":"hg4"}]
\ No newline at end of file
[{"type":"UCSC"}]
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment