[ctxcomponents] RQLCtxComponent: refactor init_rendering/render_body to ease overriding
init_rendering now simply execute the query to get result set to be displayed,
and store it in .cw_rset attribute.
Links to be displayed by default are now computed in render_body.
So you may now simply customise what to be displayed by overriding render_body.
function showTooltip(x, y, contents) {
$('<div id="tooltip">' + contents + '</div>').css({
position: 'absolute',
display: 'none',
top: y + 5,
left: x + 5,
border: '1px solid #fdd',
padding: '2px',
'background-color': '#fee',
opacity: 0.80
}).appendTo("body").fadeIn(200);
}
var previousPoint = null;
function onPlotHover(event, pos, item) {
if (item) {
if (previousPoint != item.datapoint) {
previousPoint = item.datapoint;
$("#tooltip").remove();
var x = item.datapoint[0].toFixed(2),
y = item.datapoint[1].toFixed(2);
if (item.datapoint.length == 3) {
x = new Date(item.datapoint[2]);
x = x.toLocaleDateString() + ' ' + x.toLocaleTimeString();
} else if (item.datapoint.length == 4) {
x = new Date(item.datapoint[2]);
x = x.strftime(item.datapoint[3]);
}
showTooltip(item.pageX, item.pageY, item.series.label + ': (' + x + ' ; ' + y + ')');
}
} else {
$("#tooltip").remove();
previousPoint = null;
}
}