2016-01-16 21:40:59 +00:00
< ul class = "nav nav-tabs nav-justified" >
2016-12-04 18:13:09 +00:00
< li ng-repeat = "(k,exercice) in themes[current_theme].exercices" ng-class = "{active: k == current_exercice, disabled: !my.exercices[k]}" > < a ng-show = "(!my.exercices[k])" > {{ exercice.title }}< / a > < a href = "/{{ current_theme }}/{{ k }}" ng-show = "(my.exercices[k])" > {{ exercice.title }} < span class = "glyphicon glyphicon-ok" aria-hidden = "true" ng-show = "(my.team_id && my.exercices[k].solved)" > < / span > < / a > < / li >
2016-01-16 21:40:59 +00:00
< / ul >
2016-01-21 00:38:43 +00:00
< div class = "alert alert-warning" style = "margin-top:15px;" ng-show = "!(my.exercices[current_exercice])" >
Vous n'avez pas encore accès à cet exercice.
< / div >
2016-01-23 11:29:19 +00:00
< div style = "margin-top: 15px" class = "well well-lg" ng-show = "(my.exercices[current_exercice])" >
< p ng-bind-html = "my.exercices[current_exercice].statement" > < / p >
< blockquote ng-show = "(my.exercices[current_exercice].hint)" ng-bind-html = "my.exercices[current_exercice].hint" > < / blockquote >
< hr ng-show = "!(my.exercices[current_exercice].hint)" >
2016-01-16 21:40:59 +00:00
< ul >
< li > < strong > Gain :< / strong > {{ themes[current_theme].exercices[current_exercice].gain }} points< / li >
2016-02-01 16:13:58 +00:00
< li > < strong > Résolu par :< / strong > {{ themes[current_theme].exercices[current_exercice].solved }} équipes< / li >
2016-01-16 21:40:59 +00:00
< / ul >
< / div >
2016-12-04 18:13:09 +00:00
< div class = "panel panel-default" ng-show = "(my.exercices[current_exercice] && my.exercices[current_exercice].files.length)" >
2016-01-16 21:40:59 +00:00
< div class = "panel-heading" >
2016-12-04 18:13:09 +00:00
< div class = "panel-title" > < span class = "glyphicon glyphicon-download-alt" aria-hidden = "true" > < / span > Téléchargements< / div >
2016-01-16 21:40:59 +00:00
< / div >
< table class = "table table-striped table-hover" >
< thead >
< tr >
< th > < / th >
< th > Nom< / th >
< th > Taille< / th >
< th > SHA-1< / th >
< / tr >
< / thead >
< tbody >
< tr ng-repeat = "file in my.exercices[current_exercice].files" >
< td > < a href = "{{ file.path }}" target = "_self" > < span class = "glyphicon glyphicon-download" aria-hidden = "true" > < / span > < / a > < / td >
< td > {{ file.name }}< / td >
< td > {{ file.size }}< / td >
< td > < code > {{ file.checksum }}< / code > < / td >
< / tr >
< / tbody >
< / table >
< / div >
2016-01-24 13:32:46 +00:00
< div class = "panel panel-danger" ng-show = "my.team_id && my.exercices[current_exercice] && !(my.exercices[current_exercice].solved)" >
2016-01-16 21:40:59 +00:00
< div class = "panel-heading" >
2016-12-04 18:13:09 +00:00
< div class = "panel-title" > < span class = "glyphicon glyphicon-flag" aria-hidden = "true" > < / span > Soumettre une solution< / div >
2016-01-16 21:40:59 +00:00
< / div >
2016-01-24 13:32:46 +00:00
< ul class = "list-group" ng-show = "(my.exercices[current_exercice].solved_number || my.exercices[current_exercice].submitted || sberr)" >
2016-02-01 16:12:35 +00:00
< li class = "list-group-item text-warning" ng-show = "my.exercices[current_exercice].solved_number" > {{ my.exercices[current_exercice].solved_number }} tentative(s) effectuée(s). Dernière solution envoyée à {{ my.exercices[current_exercice].solved_time | date:"fullDate" }}.< / li >
2016-01-24 13:32:46 +00:00
< li class = "list-group-item" ng-class = "messageClass" ng-show = "my.exercices[current_exercice].submitted || sberr" > < strong ng-show = "!sberr" > Votre solution a bien été envoyée !< / strong > < strong ng-show = "sberr" > {{ sberr }}< / strong > {{ message }}< / li >
< / ul >
< div class = "panel-body" ng-show = "!my.exercices[current_exercice].submitted || sberr" >
2016-01-23 11:29:19 +00:00
< form ng-controller = "SubmissionController" ng-submit = "ssubmit()" >
< div class = "form-group" ng-repeat = "key in flags" >
2016-01-24 13:32:46 +00:00
< label for = "sol_{{ key.id }}" > {{ key.name }} :< / label >
2016-01-23 11:29:19 +00:00
< input type = "text" class = "form-control" id = "sol_{{ key.id }}" name = "sol_{{ index }}" ng-model = "key.value" >
2016-01-16 21:40:59 +00:00
< / div >
2016-01-24 13:32:46 +00:00
< div class = "form-group text-right" >
2016-12-04 18:13:09 +00:00
< button type = "submit" class = "btn btn-danger" id = "sbmt" > Soumettre< / button >
2016-01-24 13:32:46 +00:00
< / div >
2016-01-16 21:40:59 +00:00
< / form >
< / div >
< / div >
2016-01-23 11:29:19 +00:00
< div class = "panel panel-success" ng-show = "(my.team_id && my.exercices[current_exercice].solved)" >
2016-01-16 21:40:59 +00:00
< div class = "panel-heading" >
2016-12-04 18:13:09 +00:00
< div class = "panel-title" > < span class = "glyphicon glyphicon-flag" aria-hidden = "true" > < / span > Challenge réussi !< / div >
2016-01-16 21:40:59 +00:00
< / div >
< div class = "panel-body" >
2016-02-01 16:12:35 +00:00
Vous êtes la {{ my.exercices[current_exercice].solved_number }}< sup > e< / sup > équipe à avoir résolu ce challenge à {{ my.exercices[current_exercice].solved_time | date:"fullDate" }}. Vous avez marqué {{ themes[current_theme].exercices[current_exercice].gain }} points !
2016-01-16 21:40:59 +00:00
< / div >
< / div >
2016-01-23 11:29:19 +00:00
2016-01-24 13:32:46 +00:00
< div class = "panel panel-success" ng-show = "(!my.team_id && my.exercices[current_exercice].keys)" >
2016-01-23 11:29:19 +00:00
< div class = "panel-heading" >
2016-12-04 18:13:09 +00:00
< div class = "panel-title" > < span class = "glyphicon glyphicon-flag" aria-hidden = "true" > < / span > Solution du challenge< / div >
2016-01-23 11:29:19 +00:00
< / div >
< div class = "panel-body" >
< p >
Vérifiez les clefs que vous trouvez en comparant leur SHA-512 :
< / p >
< dl class = "dl-horizontal" ng-repeat = "key in my.exercices[current_exercice].keys" >
2016-12-04 18:13:09 +00:00
< dt title = "{{ key.slice(128) }}" > {{ key.slice(128) }}< / dt >
< dd class = "samp" > < samp > {{ key.slice(0, 128) }}< / samp > < / dd >
2016-01-23 11:29:19 +00:00
< / dl >
2016-10-13 18:16:42 +00:00
< iframe type = "text/html" ng-show = "my.exercices[current_exercice].video_uri" ng-src = "{{ my.exercices[current_exercice].video_uri }}" frameborder = "0" style = "width: 100%; height: 35vw" >
Regardez la vidéo de résolution de cet exercice : < a ng-href = "{{ my.exercices[current_exercice].video_uri }}" > {{ my.exercices[current_exercice].video_uri }}< / a > .
< / iframe >
2016-01-23 11:29:19 +00:00
< / div >
< / div >