Can have a work without submission

This commit is contained in:
nemunaire 2022-09-05 10:16:25 +02:00
parent 8b0043dc8d
commit 0079901311
2 changed files with 76 additions and 57 deletions

View File

@ -9,16 +9,26 @@
export let work = null; export let work = null;
</script> </script>
{#if work.submission_url} {#if work.submission_url == '-'}
<!-- Display nothing -->
{:else if work.submission_url}
{#await getUserRendu(work.submission_url, $user)} {#await getUserRendu(work.submission_url, $user)}
<div class="spinner-border spinner-border-sm" role="status"></div> <div class="spinner-border spinner-border-sm" role="status"></div>
{:then rendu} {:then rendu}
{#if rendu === null} {#if rendu === null}
<i class="bi text-danger bi-exclamation-circle-fill" title="Rendu non réceptionné"></i> <i class="bi text-danger bi-exclamation-circle-fill" title="Rendu non réceptionné"></i>
{:else} {:else}
<i class="bi text-success bi-check" title={"Rendu effectué : " + JSON.stringify(rendu)}></i> <i class="bi text-success bi-check-circle-fill" title={"Rendu effectué : " + JSON.stringify(rendu)}></i>
{/if} {/if}
{:catch error} {:catch error}
<i class="bi text-warning bi-exclamation-triangle-fill" title={error}></i> <i class="bi text-warning bi-exclamation-triangle-fill" title={error}></i>
{/await} {/await}
{:else}
{#await work.getSubmission()}
<div class="spinner-border spinner-border-sm" role="status"></div>
{:then submission}
<i class="bi text-success bi-check-circle-fill" title={"Rendu effectué : " + JSON.stringify(submission)}></i>
{:catch error}
<i class="bi text-warning bi-exclamation-triangle-fill" title={error}></i>
{/await}
{/if} {/if}

View File

@ -104,6 +104,7 @@
<dd><DateFormat date={new Date(w.start_availability)} dateStyle="medium" timeStyle="medium" /></dd> <dd><DateFormat date={new Date(w.start_availability)} dateStyle="medium" timeStyle="medium" /></dd>
<dt>Date de fin</dt> <dt>Date de fin</dt>
<dd><DateFormat date={new Date(w.end_availability)} dateStyle="medium" timeStyle="medium" /></dd> <dd><DateFormat date={new Date(w.end_availability)} dateStyle="medium" timeStyle="medium" /></dd>
{#if w.submission_url != "-"}
<dt>Rendu&nbsp;?</dt> <dt>Rendu&nbsp;?</dt>
<dd> <dd>
{#if w.submission_url} {#if w.submission_url}
@ -126,6 +127,7 @@
{/await} {/await}
{/if} {/if}
</dd> </dd>
{/if}
</dl> </dl>
{#if w.description} {#if w.description}
<hr> <hr>
@ -136,7 +138,7 @@
<h3 class="mt-3">Rendu</h3> <h3 class="mt-3">Rendu</h3>
{#if !w.corrected} {#if !w.corrected && w.submission_url != "-"}
<p> <p>
Pour rendre votre travail, vous devez préalablement créer un dépôt Git sur la <a href="https://gitlab.cri.epita.fr/" target="_blank">forge de l'école</a>.<br>Ce dépôt DOIT&nbsp;: Pour rendre votre travail, vous devez préalablement créer un dépôt Git sur la <a href="https://gitlab.cri.epita.fr/" target="_blank">forge de l'école</a>.<br>Ce dépôt DOIT&nbsp;:
</p> </p>
@ -155,6 +157,7 @@
{/if} {/if}
{/if} {/if}
{#if w.submission_url != "-"}
<WorkRepository class="mb-3" readonly={w.corrected || new Date(w.end_availability) <= new Date()} work={w} on:update_submission={() => refresh_submission(w)} /> <WorkRepository class="mb-3" readonly={w.corrected || new Date(w.end_availability) <= new Date()} work={w} on:update_submission={() => refresh_submission(w)} />
<div class="card mb-3"> <div class="card mb-3">
<div class="card-body d-flex justify-content-between"> <div class="card-body d-flex justify-content-between">
@ -190,6 +193,8 @@
</div> </div>
</div> </div>
</div> </div>
{/if}
{#if w.corrected} {#if w.corrected}
{#await getScore(w)} {#await getScore(w)}
<div class="spinner-border spinner-border-sm" role="status"></div> <div class="spinner-border spinner-border-sm" role="status"></div>
@ -204,10 +209,14 @@
<strong>{error.message}</strong> <strong>{error.message}</strong>
</div> </div>
{/await} {/await}
{:else} {:else if w.submission_url != "-"}
<div class="alert alert-warning"> <div class="alert alert-warning">
Pour être reconnu, vous devez pousser un tag <strong><a href="keys">signé</a></strong> sur votre dépôt. {#if w.tag}Le tag attendu doit commencer par&nbsp;: <code>{w.tag}</code>. Par exemple <code>{w.tag}v1.0</code>, <code>{w.tag}v1.1</code>, &hellip;{/if} Seul le dernier tag <strong>alphabétique</strong> que vous envoyez avant la date du rendu sera pris en compte. Vous pouvez donc faire autant de tag que vous le souhaitez d'ici la date du rendu. Pour être reconnu, vous devez pousser un tag <strong><a href="keys">signé</a></strong> sur votre dépôt. {#if w.tag}Le tag attendu doit commencer par&nbsp;: <code>{w.tag}</code>. Par exemple <code>{w.tag}v1.0</code>, <code>{w.tag}v1.1</code>, &hellip;{/if} Seul le dernier tag <strong>alphabétique</strong> que vous envoyez avant la date du rendu sera pris en compte. Vous pouvez donc faire autant de tag que vous le souhaitez d'ici la date du rendu.
</div> </div>
{:else}
<div class="alert alert-primary">
Ce travail n'a pas de modalité de rendu.
</div>
{/if} {/if}
{/if} {/if}
{/await} {/await}