ui: Display a spinner during gradation launch

This commit is contained in:
nemunaire 2023-03-05 17:43:14 +01:00
parent 906501cc7b
commit a78de73671

View File

@ -32,17 +32,22 @@
repositoriesP[userid] = getRepositories(wid, userid); repositoriesP[userid] = getRepositories(wid, userid);
} }
let gradation_preflight = false;
async function runGradations() { async function runGradations() {
gradation_preflight = true;
for (const user of await usersP) { for (const user of await usersP) {
if (repositoriesP[user.id]) { if (repositoriesP[user.id]) {
try { try {
for (const repo of await repositoriesP[user.id]) { for (const repo of await repositoriesP[user.id]) {
repo.runGradation(); repo.runGradation();
} }
} catch {} } catch (err) {
ToastsStore.addToast({color: "danger", title: "Impossible de lancer la notation de " + user.login, msg: err})
} }
} }
} }
gradation_preflight = false;
}
let nb_rendus = 0; let nb_rendus = 0;
let nb_users = 0; let nb_users = 0;
@ -66,8 +71,13 @@
class="btn btn-sm btn-success mr-1" class="btn btn-sm btn-success mr-1"
title="Relancer les tests" title="Relancer les tests"
on:click={runGradations} on:click={runGradations}
disabled={gradation_preflight}
> >
{#if gradation_preflight}
<div class="spinner-border spinner-border-sm" role="status"></div>
{:else}
<i class="bi bi-play"></i> <i class="bi bi-play"></i>
{/if}
</button> </button>
</div> </div>
</div> </div>