aboutsummaryrefslogtreecommitdiff
path: root/src/zenserver/frontend/html/pages/start.js
diff options
context:
space:
mode:
Diffstat (limited to 'src/zenserver/frontend/html/pages/start.js')
-rw-r--r--src/zenserver/frontend/html/pages/start.js10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/zenserver/frontend/html/pages/start.js b/src/zenserver/frontend/html/pages/start.js
index 14ec4bd4a..9a3eb6de3 100644
--- a/src/zenserver/frontend/html/pages/start.js
+++ b/src/zenserver/frontend/html/pages/start.js
@@ -62,7 +62,8 @@ export class Page extends ZenPage
];
this._project_table = section.add_widget(Table, columns);
- this._project_pager = new Pager(section, 25, () => this._render_projects_page());
+ this._project_pager = new Pager(section, 25, () => this._render_projects_page(),
+ Pager.make_search_fn(() => this._projects_data, p => p.Id));
const drop_link = document.createElement("span");
drop_link.className = "dropall zen_action";
drop_link.style.position = "static";
@@ -70,10 +71,12 @@ export class Page extends ZenPage
drop_link.addEventListener("click", () => this.drop_all("projects"));
this._project_pager.prepend(drop_link);
+ const prj_loading = Pager.loading(section);
this._projects_data = await new Fetcher().resource("/prj/list").json();
this._projects_data.sort((a, b) => a.Id.localeCompare(b.Id));
this._project_pager.set_total(this._projects_data.length);
this._render_projects_page();
+ prj_loading.remove();
}
// cache
@@ -92,7 +95,8 @@ export class Page extends ZenPage
];
this._cache_table = section.add_widget(Table, columns, Table.Flag_FitLeft|Table.Flag_PackRight);
- this._cache_pager = new Pager(section, 25, () => this._render_cache_page());
+ this._cache_pager = new Pager(section, 25, () => this._render_cache_page(),
+ Pager.make_search_fn(() => this._cache_data, item => item.namespace));
const cache_drop_link = document.createElement("span");
cache_drop_link.className = "dropall zen_action";
cache_drop_link.style.position = "static";
@@ -100,6 +104,7 @@ export class Page extends ZenPage
cache_drop_link.addEventListener("click", () => this.drop_all("z$"));
this._cache_pager.prepend(cache_drop_link);
+ const cache_loading = Pager.loading(section);
const zcache_info = await new Fetcher().resource("/z$/").json();
const namespaces = zcache_info["Namespaces"] || [];
const results = await Promise.allSettled(
@@ -111,6 +116,7 @@ export class Page extends ZenPage
.sort((a, b) => a.namespace.localeCompare(b.namespace));
this._cache_pager.set_total(this._cache_data.length);
this._render_cache_page();
+ cache_loading.remove();
}
// version