Download:
child 53:b4b32a8d2f4e
parent 51:7a01d0f93806
52:b5f74e147343
Anton Shestakov <av6@dwimlabs.net>, Sun, 07 Feb 2016 23:51:41 +0800
viewer: escape description in chart tooltip, show branch in dark blue

2 файлов изменено, 13 вставок(+), 8 удалений(-) [+]
templates/fancy.html file | annotate | diff | comparison | revisions
viewer.py file | annotate | diff | comparison | revisions
--- a/templates/fancy.html Sun Feb 07 22:57:31 2016 +0800
+++ b/templates/fancy.html Sun Feb 07 23:51:41 2016 +0800
@@ -51,7 +51,10 @@
var chart = c3.generate({
bindto: '#chart',
size: {height: 500},
- tooltip: {format: {title: function(x) { return data.titles[-x]; }}},
+ tooltip: {format: {title: function(x) {
+ var c = data.csetmap[-x];
+ return c.rev + ':' + c.shortnode + ' <span style="color: darkblue;">' + c.branch + '</span> ' + c.firstline;
+ }}},
axis: {x: {tick: {format: function(x) { return -x; }}}},
data: data
});
--- a/viewer.py Sun Feb 07 22:57:31 2016 +0800
+++ b/viewer.py Sun Feb 07 23:51:41 2016 +0800
@@ -9,6 +9,7 @@
from collections import OrderedDict
from urllib import quote_plus
+from tornado.escape import xhtml_escape
from tornado.ioloop import IOLoop
from tornado.options import define, options
from tornado.web import Application, RequestHandler, URLSpec
@@ -247,7 +248,7 @@
marks, moremarks = self.getmarks()
results, _ = self.getresults(changesets, marks=marks, colors=False)
json = []
- titles = {}
+ csetmap = {}
for cset in changesets:
item = {'rev': -cset['rev']}
for mark in marks:
@@ -258,17 +259,18 @@
extra = [cset['branch']] + cset['tags']
if len(cset['parents']) > 1:
extra.append('(merge)')
- titles[cset['rev']] = '{}:{}: {} {}'.format(
- cset['rev'],
- cset['node'][:12],
- ' '.join(extra),
- cset['desc'].partition('\n')[0])
+ csetmap[cset['rev']] = {
+ 'rev': cset['rev'],
+ 'branch': cset['branch'],
+ 'shortnode': cset['node'][:12],
+ 'firstline': xhtml_escape(cset['desc'].partition('\n')[0])
+ }
data = {
'names': marks,
'x': 'rev',
'json': json,
'keys': {'x': 'rev', 'value': marks.keys()},
- 'titles': titles
+ 'csetmap': csetmap
}
context = {
'changesets': changesets,