[rset] kill the rset._rqlst cache
Right now it "works" for the standard, internal uses.
However when we will fold ClientConnection and Connection, it will
hurt, because suddenly we get more cache hits, and the following
situation would become commonplace:
* there is an un-annotated _rqlst given by the querier
* some view (e.g. facets) requests the .syntax_tree, which takes a
copy of _rqlst
* the view actually expects the rql syntax tree to be annotated, but
it was not, hence we crash.
Related to #3837233.
/**
* :organization: Logilab
* :copyright: 2008-2010 LOGILAB S.A. (Paris, FRANCE), all rights reserved.
* :contact: http://www.logilab.fr/ -- mailto:contact@logilab.fr
*
*/
/**
* provide our own custom date parser since the default
* one only understands iso8601 and gregorian dates
*/
SimileAjax.NativeDateUnit.getParser = Timeline.NativeDateUnit.getParser = function(format) {
if (typeof format == "string") {
if (format.indexOf('%') != - 1) {
return function(datestring) {
if (datestring) {
return strptime(datestring, format);
}
return null;
};
}
format = format.toLowerCase();
}
if (format == "iso8601" || format == "iso 8601") {
return Timeline.DateTime.parseIso8601DateTime;
}
return Timeline.DateTime.parseGregorianDateTime;
};
/*** CUBICWEB EVENT PAINTER *****************************************************/
Timeline.CubicWebEventPainter = function(params) {
// Timeline.OriginalEventPainter.apply(this, arguments);
this._params = params;
this._onSelectListeners = [];
this._filterMatcher = null;
this._highlightMatcher = null;
this._frc = null;
this._eventIdToElmt = {};
};
Timeline.CubicWebEventPainter.prototype = new Timeline.OriginalEventPainter();
Timeline.CubicWebEventPainter.prototype._paintEventLabel = function(
evt, text, left, top, width, height, theme) {
var doc = this._timeline.getDocument();
var labelDiv = doc.createElement("div");
labelDiv.className = 'timeline-event-label';
labelDiv.style.left = left + "px";
labelDiv.style.width = width + "px";
labelDiv.style.top = top + "px";
if (evt._obj.onclick) {
labelDiv.appendChild(A({
'href': evt._obj.onclick
},
text));
} else if (evt._obj.image) {
labelDiv.appendChild(IMG({
src: evt._obj.image,
width: '30px',
height: '30px'
}));
} else {
labelDiv.innerHTML = text;
}
if (evt._title != null) labelDiv.title = evt._title;
var color = evt.getTextColor();
if (color == null) {
color = evt.getColor();
}
if (color != null) {
labelDiv.style.color = color;
}
var classname = evt.getClassName();
if (classname) labelDiv.className += ' ' + classname;
this._eventLayer.appendChild(labelDiv);
return {
left: left,
top: top,
width: width,
height: height,
elmt: labelDiv
};
};
Timeline.CubicWebEventPainter.prototype._showBubble = function(x, y, evt) {
var div = DIV({
id: 'xxx'
});
var width = this._params.theme.event.bubble.width;
if (!evt._obj.bubbleUrl) {
evt.fillInfoBubble(div, this._params.theme, this._band.getLabeller());
}
SimileAjax.WindowManager.cancelPopups();
SimileAjax.Graphics.createBubbleForContentAndPoint(div, x, y, width);
if (evt._obj.bubbleUrl) {
jQuery('#xxx').loadxhtml(evt._obj.bubbleUrl, null, 'post', 'replace');
}
};