3
0

5 Коммиты 49f0d00886 ... 5610756170

Автор SHA1 Сообщение Дата
  Adam Dominec 5610756170 Merge branch 'hugo-vetev' 2 недель назад
  Adam Dominec 280ff66a05 Merge branch 'zobrazeni-otazky' 2 недель назад
  Hugo-hrabalujeprcak c49b2cb713 slouceno do jednoho souboru 1 месяц назад
  Adam Dominec e8528ff1b4 Merge branch 'master' of septima/silly_qiz into zobrazeni-otazky 1 месяц назад
  michal.korcak b7263a19cd zobrazeni otazek v quizz.html 1 месяц назад
5 измененных файлов с 204 добавлено и 69 удалено
  1. 0 35
      app/__init__.py
  2. 2 0
      app/app.py
  3. 0 7
      app/home.py
  4. 0 8
      app/questions.py
  5. 202 19
      app/templates/home.html

+ 0 - 35
app/__init__.py

@@ -1,35 +0,0 @@
-import os
-
-from flask import Flask
-
-
-def create_app(test_config=None):
-    # create and configure the app
-    app = Flask(__name__, instance_relative_config=True)
-    app.config.from_mapping(
-        SECRET_KEY="dev",
-        DATABASE=os.path.join(app.instance_path, "flaskr.sqlite"),
-    )
-
-    if test_config is None:
-        # load the instance config, if it exists, when not testing
-        app.config.from_pyfile("config.py", silent=True)
-    else:
-        # load the test config if passed in
-        app.config.from_mapping(test_config)
-
-    # ensure the instance folder exists
-    os.makedirs(app.instance_path, exist_ok=True)
-
-    # a simple page that says hello
-    @app.route("/health")
-    def health():
-        return "Health check passed!"
-
-    from . import home
-    app.register_blueprint(home.bp, url_prefix="/")
-
-    from . import questions
-    app.register_blueprint(questions.bp, url_prefix="/api/questions")
-
-    return app

+ 2 - 0
b end.py → app/app.py

@@ -13,3 +13,5 @@ def health():
 @app.route("/api/questions/")
 def questions_index():
     return "Hello, World!"
+
+app.run(port=5000)

+ 0 - 7
app/home.py

@@ -1,7 +0,0 @@
-from flask import Blueprint, render_template
-
-bp = Blueprint("home", __name__)
-
-@bp.route("/")
-def index():
-    return render_template("home.html")

+ 0 - 8
app/questions.py

@@ -1,8 +0,0 @@
-from flask import Blueprint
-
-bp = Blueprint("questions", __name__)
-
-
-@bp.route("/")
-def index():
-    return "Hello, World!"

+ 202 - 19
app/templates/home.html

@@ -20,12 +20,197 @@
     <div >
     <h1>silly_qiz</h1>
     <h3 class="rainbow">toto bude mega giga silly qiz, aby jste mohli zjistit který z učítelů gimjs jste :3</h3>
-        <a href="{{ url_for('questions.index') }}">Začít kvíz</a>
+        <a href="{{ url_for('index') }}">Začít kvíz</a>
     </div>
 </div>
 </template>
 <template x-if="zacalqiz">
-<div  class="flex flex-col items-center justify-center min-h-screen p-4">
+<div class="flex flex-col items-center justify-center min-h-screen p-4" x-data="{
+  zacalqiz: false,
+  skoncilqiz: false,
+  CurrentOtazka: 0,
+  ZvoleneOtazky: [
+    {
+      id: 1,
+      question: 'Jak nejraději strávíš svůj volný čas?',
+      options: [
+        'Studium biologie',
+        'Diskuse o dějinách a filmech',
+        'Řešení matematických rovnic',
+        'Hokejový trénink'
+      ],
+      results: [
+        'Svobodová',
+        'Nájemník',
+        'Stejskal',
+        'Ambroz'
+      ]
+    },
+    {
+      id: 2,
+      question: 'jakého eventu se zúčastníš?',
+      options: [
+        'čtenářská čajovna',
+        'fotbalový zápas',
+        'chemická exkurze',
+        'turnaj v poítačových hrách'
+      ],
+      results: [
+        'Jílek',
+        'Orr',
+        'Ekrtová',
+        'Helgert'
+      ]
+    },
+    {
+      id: 3,
+      question: 'Co uděláš když student nepochopí látku?',
+      options: [
+        'trpělivě mu to několikrát vysvětlíš na příkladech',
+        'nechápeš co na tom nechápe',
+        'odběhneš od tématu a pak nestíháš',
+        'začneš diskuzi'
+      ],
+      results: [
+        'Ekrtová',
+        'Stejskal',
+        'Nájemník',
+        'Jílek'
+      ]
+    },
+    {
+      id: 4,
+      question: 'Co uděláš když studenti hlučí?',
+      options: [
+        'začneš šeptat',
+        'napomeneš je, s dotazem jestli je to nezajímá',
+        'je ti to jedno',
+        'poprosíš o klid'
+      ],
+      results: [
+        'Ambroz',
+        'Nájemník',
+        'Stejskal',
+        'Ekrtová'
+      ]
+    },
+    {
+      id: 5,
+      question: 'jak často po tobě někdo něco potřebuje?',
+      options: [
+        'Každou chvíli pomáháš s technikou',
+        'víš všechno a o všech, pořád se někdo ptá',
+        'Občas odpískáš fotbal, nebo organizuješ jazykové certifikáty',
+        'každou volnou chvíli někoho doučuješ'
+      ],
+      results: [
+        'Helgert',
+        'Svobodová',
+        'Orr',
+        'Ekrtová'
+      ]
+    },
+    {
+      id: 6,
+      question: 'Jak často jsi ve škole?',
+      options: [
+        'nikdy',
+        'každý den',
+        'téměř každý den',
+        'několikrát týdně'
+      ],
+      results: [
+        'Ambroz',
+        'Svobodová',
+        'Ekrtová',
+        'Stejskal'
+      ]
+    },
+    {
+      id: 7,
+      question: 'Máš vlasy?',
+      options: [
+        'Ne',
+        'Ano a hodně',
+        'Normální množství',
+        'nechávám si je narůst a pak na ježka'
+      ],
+      results: [
+        'Ambroz',
+        'Svobodová',
+        'Ekrtová',
+        'Jílek'
+      ]
+    },
+    {
+      id: 8,
+      question: 'Jaký kroužek zorganizuješ?',
+      options: [
+        'Basketbal',
+        'studium mikoživočichů',
+        'nezorganizuješ',
+        'turnaje v počítačových hrách'
+      ],
+      results: [
+        'Nájemník',
+        'Svobodová',
+        'Stejskal',
+        'Helgert'
+      ]
+    },
+    {
+      id: 9,
+      question: 'Co je tvoje fav zvíře?',
+      options: [
+        'Panda',
+        'Lochneska',
+        'asi nemáš',
+        'něco hrozně mikro a exotického'
+      ],
+      results: [
+        'Ekrtová',
+        'Orr',
+        'Stejskal',
+        'Svobodová'
+      ]
+    }
+  ],
+  SvobodaBody: 0,
+  SvobodovaBody: 0,
+  ReditelkBody: 0,
+  PasterikovaBody: 0,
+  HelgertBody: 0,
+  DominecBody: 0,
+  DudilieuxBody: 0,
+  HlavacekBody: 0,
+  HolasovaBody: 0,
+  BesinBody: 0,
+  JilekBody: 0,
+  JungovaBody: 0,
+  HorovaBody: 0,
+  KarnoltovaBody: 0,
+  ValdaBody: 0,
+  KozubekBody: 0,
+  HrabecBody: 0,
+  KubiskovaBody: 0,
+  MarekBody: 0,
+  LímanováBody: 0,
+  NajemnikBody: 0,
+  OrrBody: 0,
+  AparicioBody: 0,
+  HornicekBody: 0,
+  SibaBody: 0,
+  ToulecBody: 0,
+  UlrichovaBody: 0,
+  ZabranskaBody: 0,
+  ZalskaBody: 0,
+  SmidBody: 0,
+  LafreniereBody: 0,
+  StejskalBody: 0,
+  EkrtovaBody: 0,
+  BurdenovaBody: 0,
+  VavraBody: 0
+}">
 
     <div class="card bg-white w-full max-w-lg p-6 border-t-8 border-blue-700">
         
@@ -34,36 +219,34 @@
         </h1>
 
         <div class="mb-8">
-            <p class="text-lg font-semibold text-gray-700 mb-4 text-center">
-                Lorem ipsum dolor sit amet, consectetur?
-            </p>
+            <p class="text-lg font-semibold text-gray-700 mb-4 text-center" x-text="ZvoleneOtazky[CurrentOtazka]['question']"></p>
 
             <div class="space-y-3">
-                <label class="block p-3 border rounded-lg cursor-pointer hover:bg-blue-50 transition">
-                    <input type="radio" name="q1" class="mr-2"> Lorem ipsum dolor
-                </label>
-                <label class="block p-3 border rounded-lg cursor-pointer hover:bg-blue-50 transition">
-                    <input type="radio" name="q1" class="mr-2"> Sit amet consectetur
-                </label>
-                <label class="block p-3 border rounded-lg cursor-pointer hover:bg-blue-50 transition">
-                    <input type="radio" name="q1" class="mr-2"> Adipiscing elit
-                </label>
-                <label class="block p-3 border rounded-lg cursor-pointer hover:bg-blue-50 transition">
-                    <input type="radio" name="q1" class="mr-2"> Sed do eiusmod
-                </label>
+                <template x-for="(option, index) in ZvoleneOtazky[CurrentOtazka]['options']" :key="index">
+                    <label class="block p-3 border rounded-lg cursor-pointer hover:bg-blue-50 transition">
+                        <input 
+                            type="radio"
+                            name="q1"
+                            class="mr-2"
+                            :value="option"
+                        >
+                        <span x-text="option"></span>
+                    </label>
+                </template>
             </div>
         </div>
 
         <div class="flex justify-between mt-10">
-            <button class="px-6 py-2 bg-gray-200 text-gray-700 rounded font-bold hover:bg-gray-300 transition">
+            <button class="px-6 py-2 bg-gray-200 text-gray-700 rounded font-bold hover:bg-gray-300 transition" x-on:click="CurrentOtazka = Math.max(CurrentOtazka - 1, 0)" x-bind:disabled="CurrentOtazka === 0">
                 Předchozí
             </button>
-            <button class="px-6 py-2 gjs-blue text-white rounded font-bold hover:opacity-90 transition">
+            <button class="px-6 py-2 gjs-blue text-white rounded font-bold hover:opacity-90 transition" x-on:click="CurrentOtazka = Math.min(CurrentOtazka + 1, ZvoleneOtazky.length - 1)" x-bind:disabled="CurrentOtazka >= ZvoleneOtazky.length - 1">
                 Další
             </button>
         </div>
 
     </div>
+
 </div>
 </template>
     <button @click="zacalqiz = ! zacalqiz">Toggle Content</button>