nextmatch responses got cached for in meantime changed folder

This commit is contained in:
Ralf Becker 2014-09-08 15:55:00 +00:00
parent bae72d8734
commit 64f6aad5a2
2 changed files with 10 additions and 7 deletions

View File

@ -295,17 +295,17 @@ app.classes.mail = AppJS.extend(
{
// Only cache first chunk of rows, if no search filter
if((!query_context || !query_context.start) && query_context.count == 0 &&
query_context.self._filters.selectedFolder &&
!(!query_context.self._filters || query_context.self._filters.search)
query_context.filters && query_context.filters.selectedFolder &&
!(!query_context.filters || query_context.filters.search)
)
{
// Make sure keys match, even if some filters are not defined
// using JSON.stringfy() directly gave a crash in Safari 7.0.4
return this.egw.jsonEncode({
selectedFolder: query_context.self._filters.selectedFolder || '',
filter: query_context.self._filters.filter || '',
filter2: query_context.self._filters.filter2 || '',
sort: query_context.self._filters.sort
selectedFolder: query_context.filters.selectedFolder || '',
filter: query_context.filters.filter || '',
filter2: query_context.filters.filter2 || '',
sort: query_context.filters.sort
});
}
return false;

View File

@ -419,6 +419,9 @@ egw.extend("data", egw.MODULE_APP_LOCAL, function (_app, _wnd) {
}
}
}
// create a clone of filters, which can be used in parseServerResponse and cache callbacks
// independent of changes happening while waiting for the response
_context.filters = jQuery.extend({}, _filters);
var request = egw.json(
_app+".etemplate_widget_nextmatch.ajax_get_rows.etemplate",
[