| const stats = (function () { | |
| return { | |
| updateStats: function () { | |
| var statsDiv = $('#stats'); | |
| if (statsDiv.children().length > 0) { | |
| statsDiv.empty(); | |
| statsDiv.tooltipster('destroy'); | |
| } | |
| var s = bib.nEntries + " publications"; | |
| if (bib.nEntries != Object.keys(bib.entries).length) { | |
| s = bib.nEntries + ' of ' + Object.keys(bib.entries).length + ' publications'; | |
| } else if (bib.nEntries == 0) { | |
| s = "no publications"; | |
| } else if (bib.nEntries == 1) { | |
| s = "1 publication"; | |
| } | |
| var similarities = []; | |
| for (var i = 0; i < selectors.nSelectors; i++) { | |
| similarities.push(0) | |
| } | |
| $.each(bib.filteredEntries, function (id) { | |
| $.each(bib.entrySelectorSimilarities[id], function (i, similarity) { | |
| similarities[i] += similarity; | |
| }); | |
| }); | |
| $.each(similarities, function (i, similarity) { | |
| if (similarity) { | |
| similarities[i] = similarity / bib.nEntries; | |
| } | |
| }); | |
| var sparklineDiv = $("<div>", { | |
| class: "vis sparkline" | |
| }).appendTo(statsDiv); | |
| selectors.vis(sparklineDiv, similarities); | |
| statsDiv.append($('<span>', { | |
| text: s | |
| })); | |
| var tooltipDiv = $('<div>'); | |
| $('<h3><span class="label">literature collection: </span>' + s + '</h3>').appendTo(tooltipDiv); | |
| var totalSimilarity = selectors.computeTotalSimilarity(similarities); | |
| if (selectors.getNActiveSelectors() > 0) { | |
| $('<div><span class="label">selector agreement: </span>' + totalSimilarity.toFixed(2) + '</div>').appendTo(tooltipDiv); | |
| if (totalSimilarity > 0) { | |
| var visDiv = $('<div>', { | |
| class: 'vis' | |
| }).appendTo(tooltipDiv); | |
| selectors.vis(visDiv, similarities); | |
| } | |
| } | |
| statsDiv.tooltipster({ | |
| content: tooltipDiv, | |
| theme: 'tooltipster-survis' | |
| }); | |
| } | |
| } | |
| })(); |