Skip to content

Commit

Permalink
#726 Deconstructed evidenceview data & minor changes to geneview header
Browse files Browse the repository at this point in the history
  • Loading branch information
lawal-olaotan committed Mar 10, 2023
1 parent bdfe097 commit 18f708c
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 31 deletions.
42 changes: 15 additions & 27 deletions client-base/src/main/webapp/html/javascript/evidence-table.js
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,6 @@ function createEvidenceTable(text, keyword, rows, change) {
table = table + '<table id="tablesorterEvidence" class="tablesorter">';
table = table + '<thead>';
table = table + '<tr>';
var header = evidenceTable[0].split("\t");

table = table + '<th width="75">Omit/Add</th>';
table = table + '<th width="50">Type</th>';
Expand Down Expand Up @@ -63,24 +62,25 @@ function createEvidenceTable(text, keyword, rows, change) {

for (var ev_i = 1; ev_i < eviTableLimit; ev_i++) {
values = evidenceTable[ev_i].split("\t");
[type, nodeLabel,,pvalue,genes, geneList,,conceptId,genesCount, ...nonUsedValues] = values
table = table + '<tr>';

table = table + '<td><p id="evidence_exclude_' + ev_i + '" style="padding-right:10px;" class="excludeKeyword evidenceTableExcludeKeyword" title="Exclude term"></p>' +
'<p id="evidence_add_' + ev_i + '" class="addKeyword evidenceTableAddKeyword" title="Add term"></p></td>';

//link publications with pubmed
pubmedurl = 'http://www.ncbi.nlm.nih.gov/pubmed/?term=';
if (values[0] == 'Publication')
evidenceValue = '<a href="' + pubmedurl + values[1].substring(5) + '" target="_blank">' + values[1] + '</a>';
if (type == 'Publication')
evidenceValue = '<a href="' + pubmedurl + nodeLabel.substring(5) + '" target="_blank">' + nodeLabel + '</a>';
else
evidenceValue = values[1];
evidenceValue = nodeLabel;

table = table + '<td type-sort-value="' + values[0] + '"><div class="evidence_item evidence_item_' + values[0] + '" title="' + values[0] + '"></div></td>';
table = table + '<td type-sort-value="' + type + '"><div class="evidence_item evidence_item_' + type + '" title="' + type + '"></div></td>';
table = table + '<td>' + evidenceValue + '</td>';
//table = table + '<td>' + values[2] + '</td>'; // TODO: remove? What was it?!

// p-values
var pvalue = values[3];

pvalue = renderEvidencePvalue(pvalue);
// to tell table-sorter that it's a number
var sortedPval = pvalue == isNaN(pvalue) ? 1 : pvalue
Expand All @@ -89,30 +89,15 @@ function createEvidenceTable(text, keyword, rows, change) {
// /end:p-values

// Count of all matching genes
table = table + `<td ><span style="margin-right:.5rem;">${values[4]}</span> <span data-type="${values[0]}" data-description="${values[1]}" class="accession-download" onclick="openGeneListPopup(${values[7]},this)"><i class="fas fa-file-download"></i></span> <div id="concept${values[7]}"></div> </td>`;
table = table + `<td ><span style="margin-right:.5rem;">${genes}</span> <span data-type="${type}" data-description="${nodeLabel}" class="accession-download" onclick="openGeneListPopup(${conceptId},this)"><i class="fas fa-file-download"></i></span> <div id="concept${conceptId}"></div> </td>`;

// Matching User Genes
var userGenes = values[5]; // The array of user genes, if any, else []

if (userGenes) {
userGenes = userGenes.trim();
// The old code that returned "N/A" was fixed, now the API yields always an empty string if
// it has no genes. So, this split works fine for 1-gene case too
userGenes = userGenes.split(",");
}
else
userGenes = [];

if (userGenes.length == 0 || userGenes.length >= 500)
// If they're too many, just yield the count
table += '<td>' + userGenes.length + '</td>'; // user genes
else

// launch evidence network with them, if they're not too many.
table += '<td><a href="javascript:;" class="userGenes_evidenceNetwork" title="Display in KnetMaps" id="userGenes_evidenceNetwork_' + ev_i + '">' + userGenes.length + '</a></td>';
table += '<td><a href="javascript:;" class="userGenes_evidenceNetwork" title="Display in KnetMaps" id="userGenes_evidenceNetwork_' + ev_i + '">' + genesCount + '</a></td>';

// /end:user genes

var select_evidence = '<input id="checkboxEvidence_' + ev_i + '" type="checkbox" name= "evidences" value="' + values[7] + ':' + values[5] + '">';
var select_evidence = '<input id="checkboxEvidence_' + ev_i + '" type="checkbox" name= "evidences" value="' + conceptId + ':' + geneList + '">';
table = table + '<td>' + select_evidence + '</td>'; // eviView select checkbox

} // for ev_i in evidenceTable
Expand Down Expand Up @@ -198,7 +183,7 @@ function createEvidenceTable(text, keyword, rows, change) {
// for user genes column in evidence view
var evidenceNum = $(e.target).attr("id").replace("userGenes_evidenceNetwork_", "");
var values = e.data.x[evidenceNum].split("\t");
var evi_userGenes = values[5].trim(); // user gene(s) provided
var evi_userGenes = geneList.trim(); // user gene(s) provided
evidencePath(values[7], evi_userGenes.split(","));
});

Expand Down Expand Up @@ -288,7 +273,7 @@ function generateMultiEvidenceNetwork() {
evidences_ondexid_list = evidences_ondexid_list + ' ConceptID:' + evidence_ondexids_and_genes[0]; // ondex IDs of all selected evidences via checkboxes
var geneids_row = evidence_ondexids_and_genes[1].split(',');
for (var j = 0; j < geneids_row.length; j++) {
// for each evidence ondexID (values[7]), find its values[5] geneIDs and add to a new unique list
// for each evidence ondexID (values[7]), find its geneList geneIDs and add to a new unique list
if (geneids.indexOf(geneids_row[j]) === -1) {
geneids.push(geneids_row[j]); // insert unique geneID
}
Expand Down Expand Up @@ -528,3 +513,6 @@ function triggerAccessionToolTips(conceptId) {
}


// function countString


5 changes: 1 addition & 4 deletions client-base/src/main/webapp/html/javascript/gene-table.js
Original file line number Diff line number Diff line change
Expand Up @@ -25,11 +25,8 @@ function createGenesTable(text, keyword, rows){
table += '<tr>';

var headers = candidateGenes[0].split("\t");
var hAcc = headers[1];
var hName = headers[2];

table += '<th width="100"> Accession </th>';
table += '<th width="100" title="Show ' + hName + ', if not same as ' + hAcc + '"> Gene</th>'; // added Gene Name to Gene View table
table += '<th width="100" title="Show Symbol, if not same as Accession"> Symbol</th>'; // added Gene Name to Gene View table



Expand Down

0 comments on commit 18f708c

Please sign in to comment.