ui: Display writeup in interface

This commit is contained in:
nemunaire 2022-05-24 17:53:44 +02:00
parent 45a9240834
commit a6adc1ac8c
3 changed files with 25 additions and 18 deletions

View File

@ -1,25 +1,14 @@
<script>
import {
Card,
CardBody,
CardHeader,
CardText,
Icon,
ListGroup,
ListGroupItem,
} from 'sveltestrap';
export let uri = "";
</script>
<Card class="border-success mb-2">
<CardHeader class="bg-success text-light">
<Icon name="laptop-fill" />
Solution du défi
</CardHeader>
<CardBody class="text-indent ratio ratio-16x9">
<iframe type="text/html" src="{uri.replace('$FILES$','/resolution')}" class="embed-responsive-item" title="Vidéo de résolution">
Regardez la vidéo de résolution de ce défi&nbsp;: <a href="{uri.replace('$FILES$','/resolution')}">{uri.replace('$FILES$','/resolution')}</a>.
</iframe>
</CardBody>
</Card>
<CardBody class="text-indent ratio ratio-16x9">
<iframe type="text/html" src="{uri.replace('$FILES$','/resolution')}" class="embed-responsive-item" title="Vidéo de résolution">
Regardez la vidéo de résolution de ce défi&nbsp;: <a href="{uri.replace('$FILES$','/resolution')}">{uri.replace('$FILES$','/resolution')}</a>.
</iframe>
</CardBody>

View File

@ -30,6 +30,9 @@
Alert,
Badge,
Card,
CardBody,
CardHeader,
CardText,
Col,
Icon,
Row,
@ -172,8 +175,21 @@
exercice={$my.exercices[exercice.id]}
/>
{/if}
{#if $my.exercices[exercice.id].video_uri}
<ExerciceVideo uri={$my.exercices[exercice.id].video_uri} />
{#if $my.exercices[exercice.id].resolution || $my.exercices[exercice.id].video_uri}
<Card class="border-success mb-2">
<CardHeader class="bg-success text-light">
<Icon name="laptop-fill" />
Solution du défi
</CardHeader>
{#if $my.exercices[exercice.id].resolution}
<CardBody>
{@html $my.exercices[exercice.id].resolution}
</CardBody>
{/if}
{#if $my.exercices[exercice.id].video_uri}
<ExerciceVideo uri={$my.exercices[exercice.id].video_uri} />
{/if}
</Card>
{/if}
</Col>
</Row>

View File

@ -76,6 +76,7 @@ type myTeamExercice struct {
Tries int64 `json:"tries,omitempty"`
TotalTries int64 `json:"total_tries,omitempty"`
VideoURI string `json:"video_uri,omitempty"`
Resolution string `json:"resolution,omitempty"`
Issue string `json:"issue,omitempty"`
IssueKind string `json:"issuekind,omitempty"`
}
@ -130,6 +131,7 @@ func MyJSONTeam(t *Team, started bool) (interface{}, error) {
exercice.Overview = strings.Replace(e.Overview, "$FILES$", FilesDir, -1)
exercice.Finished = strings.Replace(e.Finished, "$FILES$", FilesDir, -1)
exercice.VideoURI = e.VideoURI
exercice.Resolution = strings.Replace(e.Resolution, "$FILES$", FilesDir, -1)
exercice.TotalTries = e.TriedCount()
exercice.Gain = int(float64(e.Gain) * e.Coefficient * GlobalScoreCoefficient)
} else {