home.html 6.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272
  1. <!DOCTYPE html>
  2. <html lang="en" x-data="{zacalqiz: false}">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <link rel="stylesheet" href="{{ url_for('static', filename='css/style.css') }}">
  7. <title>Kvíz: Který učitel na GJS jsi ty?</title>
  8. <script src="https://cdn.tailwindcss.com"></script>
  9. <script defer src="https://cdn.jsdelivr.net/npm/alpinejs@3.x.x/dist/cdn.min.js"></script>
  10. <style>
  11. body { background-color: #f0f4f8; }
  12. .gjs-blue { background-color: #0055a4; }
  13. .card { border-radius: 15px; box-shadow: 0 4px 6px rgba(0,0,0,0.1); }
  14. </style>
  15. </head>
  16. <body>
  17. <script>
  18. function quizApp() {
  19. return {
  20. zacalqiz: false,
  21. otazky: [],
  22. async startQuiz() {
  23. this.zacalqiz = ! this.zacalqiz
  24. const res = await fetch('/api/questions?count=5');
  25. this.otazky = await res.json();
  26. }
  27. }
  28. }
  29. </script>
  30. <template x-if="!zacalqiz">
  31. <div>
  32. <div >
  33. <h1>silly_qiz</h1>
  34. <h3 class="rainbow">toto bude mega giga silly qiz, aby jste mohli zjistit který z učítelů gimjs jste :3</h3>
  35. <a href="{{ url_for('index') }}">Začít kvíz</a>
  36. </div>
  37. </div>
  38. </template>
  39. <template x-if="zacalqiz">
  40. <div class="flex flex-col items-center justify-center min-h-screen p-4" x-data="{
  41. zacalqiz: false,
  42. skoncilqiz: false,
  43. CurrentOtazka: 0,
  44. ZvoleneOtazky: [
  45. {
  46. id: 1,
  47. question: 'Jak nejraději strávíš svůj volný čas?',
  48. options: [
  49. 'Studium biologie',
  50. 'Diskuse o dějinách a filmech',
  51. 'Řešení matematických rovnic',
  52. 'Hokejový trénink'
  53. ],
  54. results: [
  55. 'Svobodová',
  56. 'Nájemník',
  57. 'Stejskal',
  58. 'Ambroz'
  59. ]
  60. },
  61. {
  62. id: 2,
  63. question: 'jakého eventu se zúčastníš?',
  64. options: [
  65. 'čtenářská čajovna',
  66. 'fotbalový zápas',
  67. 'chemická exkurze',
  68. 'turnaj v poítačových hrách'
  69. ],
  70. results: [
  71. 'Jílek',
  72. 'Orr',
  73. 'Ekrtová',
  74. 'Helgert'
  75. ]
  76. },
  77. {
  78. id: 3,
  79. question: 'Co uděláš když student nepochopí látku?',
  80. options: [
  81. 'trpělivě mu to několikrát vysvětlíš na příkladech',
  82. 'nechápeš co na tom nechápe',
  83. 'odběhneš od tématu a pak nestíháš',
  84. 'začneš diskuzi'
  85. ],
  86. results: [
  87. 'Ekrtová',
  88. 'Stejskal',
  89. 'Nájemník',
  90. 'Jílek'
  91. ]
  92. },
  93. {
  94. id: 4,
  95. question: 'Co uděláš když studenti hlučí?',
  96. options: [
  97. 'začneš šeptat',
  98. 'napomeneš je, s dotazem jestli je to nezajímá',
  99. 'je ti to jedno',
  100. 'poprosíš o klid'
  101. ],
  102. results: [
  103. 'Ambroz',
  104. 'Nájemník',
  105. 'Stejskal',
  106. 'Ekrtová'
  107. ]
  108. },
  109. {
  110. id: 5,
  111. question: 'jak často po tobě někdo něco potřebuje?',
  112. options: [
  113. 'Každou chvíli pomáháš s technikou',
  114. 'víš všechno a o všech, pořád se někdo ptá',
  115. 'Občas odpískáš fotbal, nebo organizuješ jazykové certifikáty',
  116. 'každou volnou chvíli někoho doučuješ'
  117. ],
  118. results: [
  119. 'Helgert',
  120. 'Svobodová',
  121. 'Orr',
  122. 'Ekrtová'
  123. ]
  124. },
  125. {
  126. id: 6,
  127. question: 'Jak často jsi ve škole?',
  128. options: [
  129. 'nikdy',
  130. 'každý den',
  131. 'téměř každý den',
  132. 'několikrát týdně'
  133. ],
  134. results: [
  135. 'Ambroz',
  136. 'Svobodová',
  137. 'Ekrtová',
  138. 'Stejskal'
  139. ]
  140. },
  141. {
  142. id: 7,
  143. question: 'Máš vlasy?',
  144. options: [
  145. 'Ne',
  146. 'Ano a hodně',
  147. 'Normální množství',
  148. 'nechávám si je narůst a pak na ježka'
  149. ],
  150. results: [
  151. 'Ambroz',
  152. 'Svobodová',
  153. 'Ekrtová',
  154. 'Jílek'
  155. ]
  156. },
  157. {
  158. id: 8,
  159. question: 'Jaký kroužek zorganizuješ?',
  160. options: [
  161. 'Basketbal',
  162. 'studium mikoživočichů',
  163. 'nezorganizuješ',
  164. 'turnaje v počítačových hrách'
  165. ],
  166. results: [
  167. 'Nájemník',
  168. 'Svobodová',
  169. 'Stejskal',
  170. 'Helgert'
  171. ]
  172. },
  173. {
  174. id: 9,
  175. question: 'Co je tvoje fav zvíře?',
  176. options: [
  177. 'Panda',
  178. 'Lochneska',
  179. 'asi nemáš',
  180. 'něco hrozně mikro a exotického'
  181. ],
  182. results: [
  183. 'Ekrtová',
  184. 'Orr',
  185. 'Stejskal',
  186. 'Svobodová'
  187. ]
  188. }
  189. ],
  190. SvobodaBody: 0,
  191. SvobodovaBody: 0,
  192. ReditelkBody: 0,
  193. PasterikovaBody: 0,
  194. HelgertBody: 0,
  195. DominecBody: 0,
  196. DudilieuxBody: 0,
  197. HlavacekBody: 0,
  198. HolasovaBody: 0,
  199. BesinBody: 0,
  200. JilekBody: 0,
  201. JungovaBody: 0,
  202. HorovaBody: 0,
  203. KarnoltovaBody: 0,
  204. ValdaBody: 0,
  205. KozubekBody: 0,
  206. HrabecBody: 0,
  207. KubiskovaBody: 0,
  208. MarekBody: 0,
  209. LímanováBody: 0,
  210. NajemnikBody: 0,
  211. OrrBody: 0,
  212. AparicioBody: 0,
  213. HornicekBody: 0,
  214. SibaBody: 0,
  215. ToulecBody: 0,
  216. UlrichovaBody: 0,
  217. ZabranskaBody: 0,
  218. ZalskaBody: 0,
  219. SmidBody: 0,
  220. LafreniereBody: 0,
  221. StejskalBody: 0,
  222. EkrtovaBody: 0,
  223. BurdenovaBody: 0,
  224. VavraBody: 0
  225. }">
  226. <div class="card bg-white w-full max-w-lg p-6 border-t-8 border-blue-700">
  227. <h1 class="text-2xl font-bold text-center text-gray-800 mb-8">
  228. Který učitel na GJS jsi ty?
  229. </h1>
  230. <div class="mb-8">
  231. <p class="text-lg font-semibold text-gray-700 mb-4 text-center" x-text="ZvoleneOtazky[CurrentOtazka]['question']"></p>
  232. <div class="space-y-3">
  233. <template x-for="(option, index) in ZvoleneOtazky[CurrentOtazka]['options']" :key="index">
  234. <label class="block p-3 border rounded-lg cursor-pointer hover:bg-blue-50 transition">
  235. <input
  236. type="radio"
  237. name="q1"
  238. class="mr-2"
  239. :value="option"
  240. >
  241. <span x-text="option"></span>
  242. </label>
  243. </template>
  244. </div>
  245. </div>
  246. <div class="flex justify-between mt-10">
  247. <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">
  248. Předchozí
  249. </button>
  250. <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">
  251. Další
  252. </button>
  253. </div>
  254. </div>
  255. </div>
  256. </template>
  257. <button @click="startQuiz()">Toggle Content</button>
  258. </body>
  259. </html>