]> _ Git - fluidbook-toolbox-quiz.git/commitdiff
wip #6396 @0.5
authorVincent Vanwaelscappel <vincent@cubedesigners.com>
Thu, 12 Oct 2023 16:43:32 +0000 (18:43 +0200)
committerVincent Vanwaelscappel <vincent@cubedesigners.com>
Thu, 12 Oct 2023 16:43:32 +0000 (18:43 +0200)
js/quiz.js
js/quiz.screens.js
views/index.blade.php

index 5cfdcddd2d631d89bbdab604d04f9d765a02647d..abc41e8ed747eade178bfad54b3bc7862bcd956c 100644 (file)
@@ -112,6 +112,7 @@ Quiz.prototype = {
     restart: function () {
         this.score.reset();
         this.score.init();
+        this.screens.reset();
         this.screens.intro.show();
         this.progressbar.update();
     }
index 7453edefdf3a5fb6a6fd988cae48f016c2ea063d..59ee8ca99a7dfa63cf7edbef0308f42b4a1fa694 100644 (file)
@@ -1,5 +1,4 @@
 import gsap from "gsap";
-import SimpleBar from 'simplebar'
 import 'simplebar/dist/simplebar.css'
 
 import QuizScreenIntro from './quiz.screen.intro';
@@ -17,6 +16,9 @@ function QuizScreens(quiz) {
 
     this.intro = new QuizScreenIntro(this);
     this.outro = new QuizScreenOutro(this);
+
+    this.screensHTML = $('#screens').html();
+
     this.initEvents();
 }
 
@@ -237,7 +239,7 @@ QuizScreens.prototype = {
         }
     },
 
-    showExplaination: function() {
+    showExplaination: function () {
         const el = this.getActiveScreen().find(".explaination")
         let explaination = this.quiz.question.current().explaination
         el.toggleClass("active")
@@ -322,6 +324,9 @@ QuizScreens.prototype = {
     validateEmail: function (email) {
         let re = /^(([^<>()[\]\.,;:\s@\"]+(\.[^<>()[\]\.,;:\s@\"]+)*)|(\".+\"))@(([^<>()[\]\.,;:\s@\"]+\.)+[^<>()[\]\.,;:\s@\"]{2,})$/i;
         return re.test(email);
+    },
+    reset: function () {
+        $("#screens").html(this.screensHTML);
     }
 };
 
index 49f40f0024cafff3806202bd954af416147e5c66..54678a944dadc4484882a3e85c0a39140013c587 100644 (file)
 <div class="container">
     <div id="quiz">
         @include('components.background',['data'=>$data,'name'=>'background','fit'=>'cover'])
-        @include('screens.intro', ['data'=> $data])
-        @foreach($data->questions as $key => $question)
-            @php($info = $question['explaination'])
-            @include('screens.question_'.$question['type'], ['info' => $info,'theme' => $data->theme,'data'=> $data, 'question' => $question, 'max' => $totalQuestion, 'position' => $key, 'alphabet' => $alphabet, 'countdown' => isset($question['countdown_enable']) && $question["countdown_enable"]])
-        @endforeach
-        @include('screens.outro', ['data'=> $data])
+        <div id="screens">
+            @include('screens.intro', ['data'=> $data])
+            @foreach($data->questions as $key => $question)
+                @php($info = $question['explaination'])
+                @include('screens.question_'.$question['type'], ['info' => $info,'theme' => $data->theme,'data'=> $data, 'question' => $question, 'max' => $totalQuestion, 'position' => $key, 'alphabet' => $alphabet, 'countdown' => isset($question['countdown_enable']) && $question["countdown_enable"]])
+            @endforeach
+            @include('screens.outro', ['data'=> $data])
+        </div>
         <div id="instantReviewAnimation"></div>
         <div id="credits">{!! $data->credits !!}</div>
     </div>