diff options
Diffstat (limited to 'web/getstats/rankings.js')
-rw-r--r-- | web/getstats/rankings.js | 116 |
1 files changed, 102 insertions, 14 deletions
diff --git a/web/getstats/rankings.js b/web/getstats/rankings.js index a66e1f0..ad33b1b 100644 --- a/web/getstats/rankings.js +++ b/web/getstats/rankings.js @@ -30,6 +30,83 @@ function selectRankingTable() { } } + +// Submits a note for a given time series. +function submitTimeSeriesNote( + textInput, tableSel, database, host, platform, branch, benchmark, metric) { + + updateStatus("updating note ...", true); + + // Synchronize other ranking tables: + // ### WORK IN PROGRESS: + // var types = ["qs", "lcssr", "lcssi", "lcss1r", "lcss1i"]; + // for (var i in types) { + // var tsel = "#rankingTable_" + types[i]; + // if (tsel == tableSel) + // continue; + // alert("i: " + i + ", tsel: " + tsel); + // var tr = $(tsel + " tr").find( + // "td:nth-child(6):contains(" + metric + ")").find( + // "td:nth-child(7):contains(" + benchmark + ")"); + // alert("tr.length: " + tr.length); + // } + + + // Update database: + query = "?db=" + database + + "&cmd=settimeseriesnote" + + "&host=" + encodeURIComponent(host) + + "&platform=" + encodeURIComponent(platform) + + "&branch=" + encodeURIComponent(branch) + + "&benchmark=" + encodeURIComponent(benchmark) + + "&metric=" + encodeURIComponent(metric) + + "¬e=" + encodeURIComponent(textInput.value.substring(0, 256)); + + url = "http://" + location.host + "/cgi-bin/getstatswrapper" + query; + //alert("url: >" + url + "<"); + + $.ajax({ + url: url, + type: "GET", + dataType: "json", + + success: function(data, textStatus, request) { + if (request.readyState == 4) { + if (request.status == 200) { + + if (data.error != null) { + updateStatus( + "updating note ... failed: " + + data.error, false); + return + } + + updateStatus("updating note ... done", false); + updateStatus("", false); + } + } + }, + + error: function(request, textStatus, errorThrown) { + descr = errorThrown; + if (errorThrown == null) { + descr = "undefined error - is the server down?"; + } + updateStatus("updating note ... error: " + descr, false); + } + + // complete: function(request, textStatus) { + // alert("complete; request.status: " + request.status) + // } + + }); +} + +// Submits a note for a given snapshot in a given time series. +function submitSnapshotNote(textInput) { + // 2 B DONE! +} + function populateRankingTable( tableSel, rankings, database, host, platform, branch, sha11, sha12, difftol, durtolmin, durtolmax, bmarkId2Name, metricId2Name) { @@ -49,8 +126,9 @@ function populateRankingTable( var pos = row[3]; var val = row[4]; var lcTimestamp = row[5]; - var hasPrevDelta = (row.length > 6); - var prevDelta = hasPrevDelta ? row[6] : null; + var note = row[6]; + var hasPrevDelta = (row.length > 7); + var prevDelta = hasPrevDelta ? row[7] : null; benchmark = bmarkId2Name[bmarkId]; metric = metricId2Name[metricId]; @@ -94,7 +172,18 @@ function populateRankingTable( } html += "<td class=\"metric\">" + metric + "</td>"; - html += "<td class=\"benchmark\">" + benchmark + "</td>"; + html += "<td class=\"benchmark\" style=\"width:50%\">" + + benchmark + "</td>"; + + html += "<td style=\"width:50%\">" + + "<input type=\"text\" style=\"width:100%\" " + + "value=\"" + note + "\" " + + "onchange=\"submitTimeSeriesNote(this, '" + + tableSel + "', '" + + database + "', '" + host + "', '" + + platform + "', '" + branch + "', '" + + benchmark + "', '" + metric + "')\" /></td>"; + html += "</tr>"; } @@ -146,6 +235,12 @@ function fetchRankings( var sha11 = data.snapshots[0][0]; var sha12 = data.snapshots[data.snapshots.length - 1][0]; + // ### The tolerance values should automatically be + // set to those hardcoded in finalizeresults.py! + // ... 2 B DONE! + difftol = 1.1; + durtolmin = 3; + durtolmax = 30; // Show context ... $("#main_context_database").text(data.database); @@ -154,20 +249,13 @@ function fetchRankings( $("#main_context_branch").text(data.branch); $("#main_context_sha11").text(sha11); $("#main_context_sha12").text(sha12); - $("#main_context_difftol").text("---"); - $("#main_context_durtolmin").text("---"); - $("#main_context_durtolmax").text("---"); + $("#main_context_difftol").text(difftol); + $("#main_context_durtolmin").text(durtolmin); + $("#main_context_durtolmax").text(durtolmax); setSnapshots(data.snapshots); - // ### The tolerance values should automatically be - // set to those hardcoded in finalizeresults.py! - // ... 2 B DONE! - difftol = 1.1; - durtolmin = 3; - durtolmax = 30; - var bmarkId2Name = []; for (var i = 0; i < data.benchmarks.length; ++i) { bmarkInfo = data.benchmarks[i]; @@ -180,7 +268,7 @@ function fetchRankings( metricId2Name[metricInfo[0]] = metricInfo[1]; } - rankings = { + var rankings = { "qs": data.rankings.qs, "lcssr": data.rankings.lcssr, "lcssi": data.rankings.lcssi, |