Calendar: Only check group once per group

This commit is contained in:
nathan 2023-05-11 14:14:47 -06:00
parent 97a874342f
commit 2e833586f7

View File

@ -3751,6 +3751,8 @@ export class CalendarApp extends EgwApp
);
}
private _group_query_cache = {};
/**
* Pre-fetch the members of any group participants
*
@ -3791,14 +3793,22 @@ export class CalendarApp extends EgwApp
}
// Find missing groups
if(groups.length)
const cache_key = groups.join("_");
if(groups.length && typeof this._group_query_cache[cache_key] === "undefined")
{
return this.egw.request("calendar.calendar_owner_etemplate_widget.ajax_owner", [groups]).then((data) =>
this._group_query_cache[cache_key] = this.egw.request("calendar.calendar_owner_etemplate_widget.ajax_owner", [groups]).then((data) =>
{
options = options.concat(Object.values(data));
option_owner.select_options = options;
}).finally(() =>
{
delete this._group_query_cache[cache_key];
});
}
if(typeof this._group_query_cache[cache_key] !== "undefined")
{
return this._group_query_cache[cache_key];
}
else
{
return null;