85 lines
3.8 KiB
Svelte
85 lines
3.8 KiB
Svelte
<script lang="ts">
|
|
import { user } from '../stores/user';
|
|
import { getUser, getUserNeedingHelp } from '../lib/users';
|
|
import DateFormat from '../components/DateFormat.svelte';
|
|
import SurveyList from '../components/SurveyList.svelte';
|
|
import ValidateSubmissions from '../components/ValidateSubmissions.svelte';
|
|
|
|
let direct = null;
|
|
|
|
let users_needing_help = [];
|
|
$: if ($user && $user.is_admin) {
|
|
users_needing_help = getUserNeedingHelp();
|
|
}
|
|
|
|
async function mark_needhelp_treated(unh) {
|
|
unh.mark_treated();
|
|
|
|
unh.save().then(() => {
|
|
users_needing_help = getUserNeedingHelp();
|
|
});
|
|
}
|
|
</script>
|
|
|
|
<div class="card bg-light">
|
|
<div class="card-body">
|
|
{#if $user}
|
|
<h1 class="card-text">
|
|
Bienvenue {$user.firstname} !
|
|
</h1>
|
|
<hr class="my-4">
|
|
|
|
{#if $user.promo != $user.current_promo}
|
|
<div class="alert alert-primary" role="alert">
|
|
<strong>Es-tu un {$user.current_promo} ?</strong> Tu es actuellement enregistré comme un {$user.promo}, ce qui ne te permet pas d'accéder aux questionnaires de la promo {$user.current_promo}. <a href="mailto:nemunaire@nemunai.re?subject=Mauvaise promotion sur srs.nemunai.re&body=Bonjour, Je ne suis pas enregistré dans la bonne promotion sur le site srs.nemunai.re. Cordialement,">Contacte-moi</a> pour corriger cela.
|
|
</div>
|
|
{/if}
|
|
|
|
{#if direct}
|
|
<div class="alert alert-warning" role="alert">
|
|
<strong>Rejoins le cours maintenant !</strong> Il y a actuellement un questionnaire en direct : {direct.title}. <a href="surveys/{direct.id}/live">Clique ici pour le rejoindre</a>.
|
|
</div>
|
|
{/if}
|
|
|
|
{#if $user.is_admin}
|
|
<p class="lead">Demande d'aide :</p>
|
|
{#await users_needing_help}
|
|
<span class="spinner-border spinner-border" role="status" aria-hidden="true"></span>
|
|
{:then nhs}
|
|
<ul style="columns: 2">
|
|
{#each nhs as user (user.id)}
|
|
<li>
|
|
{#await getUser(user.id_user)}
|
|
<span class="spinner-border spinner-border-sm" role="status" aria-hidden="true"></span>
|
|
{:then u}
|
|
<a href="users/{u.id}">{u.login}</a>
|
|
{/await}
|
|
(<DateFormat date={user.date} dateStyle="medium" timeStyle="medium" />)
|
|
<button
|
|
type="button"
|
|
class="btn btn-sm btn-info"
|
|
on:click={e => {mark_needhelp_treated(user)}}
|
|
>
|
|
<i class="bi bi-check" title="Marquer la demande d'aide comme traîtée"></i>
|
|
</button>
|
|
</li>
|
|
{/each}
|
|
</ul>
|
|
{/await}
|
|
{/if}
|
|
|
|
<p class="lead">Voici la liste des travaux :</p>
|
|
{:else}
|
|
<p class="card-text lead">
|
|
Vous voici arrivés sur le site dédié aux cours d'<a href="https://adlin.nemunai.re/">Administration Linux avancée</a>, du <a href="https://srs.nemunai.re/fic/">FIC</a> et de <a href="https://virli.nemunai.re/">Virtualisation légère</a>.
|
|
</p>
|
|
<p class="card-text">
|
|
Vous devez <a href="auth/CRI" target="_self">vous identifier</a> pour accéder au contenu.
|
|
</p>
|
|
{/if}
|
|
<SurveyList allworks bind:direct={direct} />
|
|
</div>
|
|
</div>
|
|
|
|
<div class="mb-5"></div>
|