Fusion application quiz atomes dans master #1
Merged
scayac
merged 5 commits from quiz_atomes into master 4 years ago
25 changed files with 1340 additions and 8 deletions
|
After Width: | Height: | Size: 640 B |
@ -1,6 +1,5 @@ |
|||||||
from django.apps import AppConfig |
from django.apps import AppConfig |
||||||
|
|
||||||
|
|
||||||
class QuizConfig(AppConfig): |
class QuizConfig(AppConfig): |
||||||
default_auto_field = 'django.db.models.BigAutoField' |
default_auto_field = 'django.db.models.BigAutoField' |
||||||
name = 'quiz' |
name = 'quiz' |
||||||
|
|||||||
@ -0,0 +1,10 @@ |
|||||||
|
from django.contrib import admin |
||||||
|
|
||||||
|
# Register your models here. |
||||||
|
from .models import Atome, Score |
||||||
|
|
||||||
|
class AtomeAdmin(admin.ModelAdmin): |
||||||
|
list_display = ('pk','nom', 'symbole') |
||||||
|
|
||||||
|
admin.site.register(Atome, AtomeAdmin) |
||||||
|
admin.site.register(Score) |
||||||
@ -0,0 +1,5 @@ |
|||||||
|
from django.apps import AppConfig |
||||||
|
|
||||||
|
class QuizAtomesConfig(AppConfig): |
||||||
|
default_auto_field = 'django.db.models.BigAutoField' |
||||||
|
name = 'quiz_atomes' |
||||||
@ -0,0 +1,946 @@ |
|||||||
|
[ |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 1, |
||||||
|
"fields": { |
||||||
|
"nom": "Hydrogène", |
||||||
|
"symbole": "H" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 2, |
||||||
|
"fields": { |
||||||
|
"nom": "Hélium", |
||||||
|
"symbole": "He" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 3, |
||||||
|
"fields": { |
||||||
|
"nom": "Lithium", |
||||||
|
"symbole": "Li" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 4, |
||||||
|
"fields": { |
||||||
|
"nom": "Béryllium", |
||||||
|
"symbole": "Be" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 5, |
||||||
|
"fields": { |
||||||
|
"nom": "Bore", |
||||||
|
"symbole": "B" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 6, |
||||||
|
"fields": { |
||||||
|
"nom": "Carbone", |
||||||
|
"symbole": "C" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 7, |
||||||
|
"fields": { |
||||||
|
"nom": "Azote", |
||||||
|
"symbole": "N" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 8, |
||||||
|
"fields": { |
||||||
|
"nom": "Oxygène", |
||||||
|
"symbole": "O" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 9, |
||||||
|
"fields": { |
||||||
|
"nom": "Fluor", |
||||||
|
"symbole": "F" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 10, |
||||||
|
"fields": { |
||||||
|
"nom": "Néon", |
||||||
|
"symbole": "Ne" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 11, |
||||||
|
"fields": { |
||||||
|
"nom": "Sodium", |
||||||
|
"symbole": "Na" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 12, |
||||||
|
"fields": { |
||||||
|
"nom": "Magnésium", |
||||||
|
"symbole": "Mg" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 13, |
||||||
|
"fields": { |
||||||
|
"nom": "Aluminium", |
||||||
|
"symbole": "Al" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 14, |
||||||
|
"fields": { |
||||||
|
"nom": "Silicium", |
||||||
|
"symbole": "Si" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 15, |
||||||
|
"fields": { |
||||||
|
"nom": "Phosphore", |
||||||
|
"symbole": "P" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 16, |
||||||
|
"fields": { |
||||||
|
"nom": "Soufre", |
||||||
|
"symbole": "S" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 17, |
||||||
|
"fields": { |
||||||
|
"nom": "Chlore", |
||||||
|
"symbole": "Cl" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 18, |
||||||
|
"fields": { |
||||||
|
"nom": "Argon", |
||||||
|
"symbole": "Ar" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 19, |
||||||
|
"fields": { |
||||||
|
"nom": "Potassium", |
||||||
|
"symbole": "K" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 20, |
||||||
|
"fields": { |
||||||
|
"nom": "Calcium", |
||||||
|
"symbole": "Ca" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 21, |
||||||
|
"fields": { |
||||||
|
"nom": "Scandium", |
||||||
|
"symbole": "Sc" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 22, |
||||||
|
"fields": { |
||||||
|
"nom": "Titane", |
||||||
|
"symbole": "Ti" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 23, |
||||||
|
"fields": { |
||||||
|
"nom": "Vanadium", |
||||||
|
"symbole": "V" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 24, |
||||||
|
"fields": { |
||||||
|
"nom": "Chrome", |
||||||
|
"symbole": "Cr" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 25, |
||||||
|
"fields": { |
||||||
|
"nom": "Manganèse", |
||||||
|
"symbole": "Mn" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 26, |
||||||
|
"fields": { |
||||||
|
"nom": "Fer", |
||||||
|
"symbole": "Fe" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 27, |
||||||
|
"fields": { |
||||||
|
"nom": "Cobalt", |
||||||
|
"symbole": "Co" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 28, |
||||||
|
"fields": { |
||||||
|
"nom": "Nickel", |
||||||
|
"symbole": "Ni" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 29, |
||||||
|
"fields": { |
||||||
|
"nom": "Cuivre", |
||||||
|
"symbole": "Cu" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 30, |
||||||
|
"fields": { |
||||||
|
"nom": "Zinc", |
||||||
|
"symbole": "Zn" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 31, |
||||||
|
"fields": { |
||||||
|
"nom": "Gallium", |
||||||
|
"symbole": "Ga" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 32, |
||||||
|
"fields": { |
||||||
|
"nom": "Germanium", |
||||||
|
"symbole": "Ge" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 33, |
||||||
|
"fields": { |
||||||
|
"nom": "Arsenic", |
||||||
|
"symbole": "As" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 34, |
||||||
|
"fields": { |
||||||
|
"nom": "Sélénium", |
||||||
|
"symbole": "Se" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 35, |
||||||
|
"fields": { |
||||||
|
"nom": "Brome", |
||||||
|
"symbole": "Br" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 36, |
||||||
|
"fields": { |
||||||
|
"nom": "Krypton", |
||||||
|
"symbole": "Kr" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 37, |
||||||
|
"fields": { |
||||||
|
"nom": "Rubidium", |
||||||
|
"symbole": "Rb" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 38, |
||||||
|
"fields": { |
||||||
|
"nom": "Strontium", |
||||||
|
"symbole": "Sr" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 39, |
||||||
|
"fields": { |
||||||
|
"nom": "Yttrium", |
||||||
|
"symbole": "Y" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 40, |
||||||
|
"fields": { |
||||||
|
"nom": "Zirconium", |
||||||
|
"symbole": "Zr" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 41, |
||||||
|
"fields": { |
||||||
|
"nom": "Niobium", |
||||||
|
"symbole": "Nb" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 42, |
||||||
|
"fields": { |
||||||
|
"nom": "Molybdène", |
||||||
|
"symbole": "Mo" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 43, |
||||||
|
"fields": { |
||||||
|
"nom": "Technétium", |
||||||
|
"symbole": "Tc" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 44, |
||||||
|
"fields": { |
||||||
|
"nom": "Ruthénium", |
||||||
|
"symbole": "Ru" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 45, |
||||||
|
"fields": { |
||||||
|
"nom": "Rhodium", |
||||||
|
"symbole": "Rh" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 46, |
||||||
|
"fields": { |
||||||
|
"nom": "Palladium", |
||||||
|
"symbole": "Pd" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 47, |
||||||
|
"fields": { |
||||||
|
"nom": "Argent", |
||||||
|
"symbole": "Ag" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 48, |
||||||
|
"fields": { |
||||||
|
"nom": "Cadmium", |
||||||
|
"symbole": "Cd" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 49, |
||||||
|
"fields": { |
||||||
|
"nom": "Indium", |
||||||
|
"symbole": "In" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 50, |
||||||
|
"fields": { |
||||||
|
"nom": "Étain", |
||||||
|
"symbole": "Sn" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 51, |
||||||
|
"fields": { |
||||||
|
"nom": "Antimoine", |
||||||
|
"symbole": "Sn" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 52, |
||||||
|
"fields": { |
||||||
|
"nom": "Tellure", |
||||||
|
"symbole": "Te" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 53, |
||||||
|
"fields": { |
||||||
|
"nom": "Iode", |
||||||
|
"symbole": "I" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 54, |
||||||
|
"fields": { |
||||||
|
"nom": "Xénon", |
||||||
|
"symbole": "Xe" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 55, |
||||||
|
"fields": { |
||||||
|
"nom": "Césium", |
||||||
|
"symbole": "Cs" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 56, |
||||||
|
"fields": { |
||||||
|
"nom": "Baryum", |
||||||
|
"symbole": "Ba" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 57, |
||||||
|
"fields": { |
||||||
|
"nom": "Lanthane", |
||||||
|
"symbole": "La" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 58, |
||||||
|
"fields": { |
||||||
|
"nom": "Cérium", |
||||||
|
"symbole": "Ce" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 59, |
||||||
|
"fields": { |
||||||
|
"nom": "Praséodyme", |
||||||
|
"symbole": "Pr" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 60, |
||||||
|
"fields": { |
||||||
|
"nom": "Néodyme", |
||||||
|
"symbole": "Nd" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 61, |
||||||
|
"fields": { |
||||||
|
"nom": "Prométhium", |
||||||
|
"symbole": "Pm" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 62, |
||||||
|
"fields": { |
||||||
|
"nom": "Samarium", |
||||||
|
"symbole": "Sm" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 63, |
||||||
|
"fields": { |
||||||
|
"nom": "Europium", |
||||||
|
"symbole": "Eu" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 64, |
||||||
|
"fields": { |
||||||
|
"nom": "Gadolinium", |
||||||
|
"symbole": "Gd" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 65, |
||||||
|
"fields": { |
||||||
|
"nom": "Terbium", |
||||||
|
"symbole": "Tb" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 66, |
||||||
|
"fields": { |
||||||
|
"nom": "Dysprosium", |
||||||
|
"symbole": "Dy" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 67, |
||||||
|
"fields": { |
||||||
|
"nom": "Holmium", |
||||||
|
"symbole": "Ho" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 68, |
||||||
|
"fields": { |
||||||
|
"nom": "Erbium", |
||||||
|
"symbole": "Er" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 69, |
||||||
|
"fields": { |
||||||
|
"nom": "Thulium", |
||||||
|
"symbole": "Tm" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 70, |
||||||
|
"fields": { |
||||||
|
"nom": "Ytterbium", |
||||||
|
"symbole": "Yb" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 71, |
||||||
|
"fields": { |
||||||
|
"nom": "Lutécium", |
||||||
|
"symbole": "Lu" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 72, |
||||||
|
"fields": { |
||||||
|
"nom": "Hafnium", |
||||||
|
"symbole": "Hf" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 73, |
||||||
|
"fields": { |
||||||
|
"nom": "Tantale", |
||||||
|
"symbole": "Ta" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 74, |
||||||
|
"fields": { |
||||||
|
"nom": "Tungstène", |
||||||
|
"symbole": "W" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 75, |
||||||
|
"fields": { |
||||||
|
"nom": "Rhénium", |
||||||
|
"symbole": "Re" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 76, |
||||||
|
"fields": { |
||||||
|
"nom": "Osmium", |
||||||
|
"symbole": "Os" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 77, |
||||||
|
"fields": { |
||||||
|
"nom": "Iridium", |
||||||
|
"symbole": "Ir" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 78, |
||||||
|
"fields": { |
||||||
|
"nom": "Platine", |
||||||
|
"symbole": "Pt" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 79, |
||||||
|
"fields": { |
||||||
|
"nom": "Or", |
||||||
|
"symbole": "Au" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 80, |
||||||
|
"fields": { |
||||||
|
"nom": "Mercure", |
||||||
|
"symbole": "Hg" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 81, |
||||||
|
"fields": { |
||||||
|
"nom": "Thallium", |
||||||
|
"symbole": "Tl" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 82, |
||||||
|
"fields": { |
||||||
|
"nom": "Plomb", |
||||||
|
"symbole": "Pb" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 83, |
||||||
|
"fields": { |
||||||
|
"nom": "Bismuth", |
||||||
|
"symbole": "Bi" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 84, |
||||||
|
"fields": { |
||||||
|
"nom": "Polonium", |
||||||
|
"symbole": "Po" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 85, |
||||||
|
"fields": { |
||||||
|
"nom": "Astate", |
||||||
|
"symbole": "At" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 86, |
||||||
|
"fields": { |
||||||
|
"nom": "Radon", |
||||||
|
"symbole": "Rn" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 87, |
||||||
|
"fields": { |
||||||
|
"nom": "Francium", |
||||||
|
"symbole": "Fr" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 88, |
||||||
|
"fields": { |
||||||
|
"nom": "Radium", |
||||||
|
"symbole": "Ra" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 89, |
||||||
|
"fields": { |
||||||
|
"nom": "Actinium", |
||||||
|
"symbole": "Ac" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 90, |
||||||
|
"fields": { |
||||||
|
"nom": "Thorium", |
||||||
|
"symbole": "Th" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 91, |
||||||
|
"fields": { |
||||||
|
"nom": "Protactinium", |
||||||
|
"symbole": "Pa" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 92, |
||||||
|
"fields": { |
||||||
|
"nom": "Uranium", |
||||||
|
"symbole": "U" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 93, |
||||||
|
"fields": { |
||||||
|
"nom": "Neptunium", |
||||||
|
"symbole": "Np" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 94, |
||||||
|
"fields": { |
||||||
|
"nom": "Plutonium", |
||||||
|
"symbole": "Pu" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 95, |
||||||
|
"fields": { |
||||||
|
"nom": "Américium", |
||||||
|
"symbole": "Am" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 96, |
||||||
|
"fields": { |
||||||
|
"nom": "Curium", |
||||||
|
"symbole": "Cm" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 97, |
||||||
|
"fields": { |
||||||
|
"nom": "Berkélium", |
||||||
|
"symbole": "Bk" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 98, |
||||||
|
"fields": { |
||||||
|
"nom": "Californium", |
||||||
|
"symbole": "Cf" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 99, |
||||||
|
"fields": { |
||||||
|
"nom": "Einsteinium", |
||||||
|
"symbole": "Es" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 100, |
||||||
|
"fields": { |
||||||
|
"nom": "Fermium", |
||||||
|
"symbole": "Fm" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 101, |
||||||
|
"fields": { |
||||||
|
"nom": "Mendelévium", |
||||||
|
"symbole": "Md" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 102, |
||||||
|
"fields": { |
||||||
|
"nom": "Nobélium", |
||||||
|
"symbole": "No" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 103, |
||||||
|
"fields": { |
||||||
|
"nom": "Lawrencium", |
||||||
|
"symbole": "Lr" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 104, |
||||||
|
"fields": { |
||||||
|
"nom": "Rutherfordium", |
||||||
|
"symbole": "Rf" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 105, |
||||||
|
"fields": { |
||||||
|
"nom": "Dubnium", |
||||||
|
"symbole": "Db" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 106, |
||||||
|
"fields": { |
||||||
|
"nom": "Seaborgium", |
||||||
|
"symbole": "Sg" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 107, |
||||||
|
"fields": { |
||||||
|
"nom": "Bohrium", |
||||||
|
"symbole": "Bh" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 108, |
||||||
|
"fields": { |
||||||
|
"nom": "Hassium", |
||||||
|
"symbole": "Hs" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 109, |
||||||
|
"fields": { |
||||||
|
"nom": "Meitnérium", |
||||||
|
"symbole": "Mt" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 110, |
||||||
|
"fields": { |
||||||
|
"nom": "Darmstadtium", |
||||||
|
"symbole": "Ds" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 111, |
||||||
|
"fields": { |
||||||
|
"nom": "Roentgenium", |
||||||
|
"symbole": "Rg" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 112, |
||||||
|
"fields": { |
||||||
|
"nom": "Copernicium", |
||||||
|
"symbole": "Cn" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 113, |
||||||
|
"fields": { |
||||||
|
"nom": "Ununtrium", |
||||||
|
"symbole": "Uut" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 114, |
||||||
|
"fields": { |
||||||
|
"nom": "Flérovium", |
||||||
|
"symbole": "Fl" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 115, |
||||||
|
"fields": { |
||||||
|
"nom": "Ununpentium", |
||||||
|
"symbole": "Uup" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 116, |
||||||
|
"fields": { |
||||||
|
"nom": "Livermorium", |
||||||
|
"symbole": "Lv" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 117, |
||||||
|
"fields": { |
||||||
|
"nom": "Ununseptium", |
||||||
|
"symbole": "Uus" |
||||||
|
} |
||||||
|
}, |
||||||
|
{ |
||||||
|
"model": "quiz_atomes.atome", |
||||||
|
"pk": 118, |
||||||
|
"fields": { |
||||||
|
"nom": "Ununoctium", |
||||||
|
"symbole": "Uuo" |
||||||
|
} |
||||||
|
} |
||||||
|
] |
||||||
@ -0,0 +1,31 @@ |
|||||||
|
# Generated by Django 4.0.1 on 2022-03-28 13:37 |
||||||
|
|
||||||
|
from django.db import migrations, models |
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration): |
||||||
|
|
||||||
|
initial = True |
||||||
|
|
||||||
|
dependencies = [ |
||||||
|
] |
||||||
|
|
||||||
|
operations = [ |
||||||
|
migrations.CreateModel( |
||||||
|
name='Atome', |
||||||
|
fields=[ |
||||||
|
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), |
||||||
|
('nom', models.CharField(max_length=20)), |
||||||
|
('symbole', models.CharField(max_length=3)), |
||||||
|
], |
||||||
|
), |
||||||
|
migrations.CreateModel( |
||||||
|
name='Score', |
||||||
|
fields=[ |
||||||
|
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), |
||||||
|
('pseudo', models.CharField(max_length=20)), |
||||||
|
('score', models.IntegerField(default=0)), |
||||||
|
('score_date', models.DateTimeField(verbose_name='Date du score')), |
||||||
|
], |
||||||
|
), |
||||||
|
] |
||||||
@ -0,0 +1,14 @@ |
|||||||
|
from django.db import models |
||||||
|
|
||||||
|
class Atome(models.Model): |
||||||
|
nom = models.CharField(max_length=20) |
||||||
|
symbole = models.CharField(max_length=3) |
||||||
|
def __str__(self): |
||||||
|
return self.nom+" ("+self.symbole+")" |
||||||
|
|
||||||
|
class Score(models.Model): |
||||||
|
pseudo = models.CharField(max_length=20) |
||||||
|
score = models.IntegerField(default=0) |
||||||
|
score_date = models.DateTimeField('Date du score') |
||||||
|
def __str__(self): |
||||||
|
return self.pseudo+" - "+str(self.score)+" - "+self.score_date.strftime("%Y-%m-%d %H:%M") |
||||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -0,0 +1 @@ |
|||||||
|
body { padding-top: 70px; } |
||||||
|
After Width: | Height: | Size: 1.5 MiB |
@ -0,0 +1,24 @@ |
|||||||
|
{% extends 'basic_template.html' %}{% block 'body' %}{% load static %} |
||||||
|
<nav class="navbar navbar-light"> |
||||||
|
<div class="container"> |
||||||
|
<a class="navbar-brand text-primary" href="/"> |
||||||
|
<i class="fa fa-university"></i> |
||||||
|
<b>Edu.apps</b> |
||||||
|
</a> |
||||||
|
</div> |
||||||
|
</nav> |
||||||
|
<div id="scoring" class="d-flex justify-content-center align-items-center"> |
||||||
|
<div class="py-3 d-flex flex-column align-items-center"> |
||||||
|
<h1 class="display-4"><b>LE QUIZ DES ATOMES</b> <i class="fa fa-vial"></i></h1> |
||||||
|
<p class="py-3 w-50">Ta mission pour ce jeu ?<br/> |
||||||
|
Connaître les symboles chimiques des atomes qui constituent l'univers. Chaque bonne réponse te rapporte 20 points. Une mauvaise t'en enlève 10 et une absence de réponse t'en enlève 5. Attention au temps ! Chaque seconde passée sur la partie t'enlèvera un point au moment de calculer ton score.<br/>Pour t'entraîner, aide toi de <a href="{% static 'quiz_atomes/tableau_periodique-couleur.png' %}">ce tableau</a>. Bon courage !</p> |
||||||
|
<div class="d-inline"> |
||||||
|
<a href="{% url "quiz_atomes" %}"> |
||||||
|
<input type="button" value="JOUER" href=> |
||||||
|
</a> |
||||||
|
<a href="{% url "scores" %}"> |
||||||
|
<input type="button" value="Scores"> |
||||||
|
</a> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</div>{% endblock %} |
||||||
@ -0,0 +1,71 @@ |
|||||||
|
{% extends 'basic_template.html' %}{% block 'extra_css' %}{% load static %} |
||||||
|
<link href="{% static '/quiz_atomes/nav_padding.css' %}" rel="stylesheet" type="text/css"> |
||||||
|
{% endblock %}{% block 'body' %} |
||||||
|
<nav class="navbar navbar-light fixed-top bg-light"> |
||||||
|
<div class="container"> |
||||||
|
<a class="navbar-brand text-primary" href="{% url "home" %}"> |
||||||
|
<i class="fa fa-home"></i> |
||||||
|
</a> |
||||||
|
<div class="navbar-brand"> |
||||||
|
<time>00m 00s</time> |
||||||
|
</div> |
||||||
|
<a class="navbar-brand text-primary" href="{% url "settings" %}"> |
||||||
|
<i class="fa fa-gear"></i> |
||||||
|
</a> |
||||||
|
</div> |
||||||
|
</nav> |
||||||
|
<div class="d-flex justify-content-center align-items-center"> |
||||||
|
<form action="{% url "quiz_atomes" %}" method="POST" id="quiz" name="quiz"> |
||||||
|
{% csrf_token %} |
||||||
|
<table class="table table-striped w-auto table-responsive-lg"> |
||||||
|
<thead> |
||||||
|
<tr> |
||||||
|
<th scope="col">Atome</th> |
||||||
|
<th scope="col">Symbole</th> |
||||||
|
</tr> |
||||||
|
</thead> |
||||||
|
<tbody>{% if atome_list %}{% for atome in atome_list %} |
||||||
|
<tr> |
||||||
|
<td>{{atome.nom}}</td> |
||||||
|
<td><input name="input{{ forloop.counter }}" maxlength="3" value=""></td> |
||||||
|
</tr>{% endfor %}{% endif %} |
||||||
|
<tr> |
||||||
|
<td colspan="2"><input type="submit" name="ok" value="OK"></td> |
||||||
|
</tr> |
||||||
|
</tbody> |
||||||
|
</table> |
||||||
|
</form> |
||||||
|
</div>{% endblock %}{% block 'extra_scripts' %}{% load static %} |
||||||
|
<script> |
||||||
|
var chrono = document.getElementsByTagName('time')[0]; |
||||||
|
var sec = 0; |
||||||
|
var min = 0; |
||||||
|
var t; |
||||||
|
|
||||||
|
function tick(){ |
||||||
|
sec++; |
||||||
|
if (sec >= 60) { |
||||||
|
sec = 0; |
||||||
|
min++; |
||||||
|
if (min >= 60) { |
||||||
|
min = 0; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
function add() { |
||||||
|
tick(); |
||||||
|
chrono.textContent = (min > 9 ? min : "0" + min) |
||||||
|
+ "m " + (sec > 9 ? sec : "0" + sec) +"s"; |
||||||
|
timer(); |
||||||
|
} |
||||||
|
function timer() { |
||||||
|
t = setTimeout(add, 1000); |
||||||
|
} |
||||||
|
|
||||||
|
timer(); |
||||||
|
|
||||||
|
$(document).ready(function() { |
||||||
|
timer; |
||||||
|
}); |
||||||
|
</script> |
||||||
|
{% endblock %} |
||||||
@ -0,0 +1,26 @@ |
|||||||
|
{% extends 'basic_template.html' %}{% block 'body' %} |
||||||
|
<nav class="navbar navbar-light"> |
||||||
|
<div class="container"> |
||||||
|
<a class="navbar-brand text-primary" href="{% url "home" %}"> |
||||||
|
<i class="fa fa-home"></i> |
||||||
|
</a> |
||||||
|
</div> |
||||||
|
</nav> |
||||||
|
<div id="scoring" class="d-flex justify-content-center align-items-center"> |
||||||
|
<div class="py-2 d-flex flex-column align-items-center"> |
||||||
|
<h4 id="points"><b>POINTS : {{points}}</b></h4> |
||||||
|
<h4 id="dt"><b>TEMPS : {{dt}}</b></h4> |
||||||
|
<h1 id="score"><b>SCORE : {{score}}</b></h1>{% if best_score %} |
||||||
|
<h4><i class="fa-solid fa-star"></i><b> Nouveau <i class="fa-solid fa-star"></i><br/>meilleur score !</b> </h4>{% else %} |
||||||
|
<h4><b>Essaie encore !</b></h4> |
||||||
|
{% endif %} |
||||||
|
<div class="d-inline"> |
||||||
|
<a href="{% url "scores" %}"> |
||||||
|
<input type="button" value="Scores"> |
||||||
|
</a> |
||||||
|
<a href="{% url "quiz_atomes" %}"> |
||||||
|
<input type="button" value="Rejouer"> |
||||||
|
</a> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</div>{% endblock %} |
||||||
@ -0,0 +1,29 @@ |
|||||||
|
{% extends 'basic_template.html' %}{% block 'body' %} |
||||||
|
<nav class="navbar navbar-light"> |
||||||
|
<div class="container"> |
||||||
|
<a class="navbar-brand text-primary" href="{% url "home" %}"> |
||||||
|
<i class="fa fa-home"></i> |
||||||
|
</a> |
||||||
|
</div> |
||||||
|
</nav> |
||||||
|
<div class="d-flex flex-column justify-content-center align-items-center"> |
||||||
|
<h3><b>Tableau des meilleurs scores</b></h3> |
||||||
|
<table class="table table-striped w-auto table-responsive-lg"> |
||||||
|
<thead> |
||||||
|
<tr> |
||||||
|
<th scope="col">Rang</th> |
||||||
|
<th scope="col">Score</th> |
||||||
|
<th scope="col">Pseudo</th> |
||||||
|
<th scope="col">Date</th> |
||||||
|
</tr> |
||||||
|
</thead> |
||||||
|
<tbody>{% if score_list %}{% for score in score_list %} |
||||||
|
<tr> |
||||||
|
<td>{{ forloop.counter }}</td> |
||||||
|
<td>{{ score.score }}</td> |
||||||
|
<td>{{ score.pseudo }}</td> |
||||||
|
<td>{{ score.score_date }}</td> |
||||||
|
</tr>{% endfor %}{% endif %} |
||||||
|
</tbody> |
||||||
|
</table> |
||||||
|
</div>{% endblock %} |
||||||
@ -0,0 +1,46 @@ |
|||||||
|
{% extends 'basic_template.html' %}{% block 'body' %} |
||||||
|
<nav class="navbar navbar-light"> |
||||||
|
<div class="container"> <a class="navbar-brand text-primary" href="{% url "quiz_atomes" %}"> |
||||||
|
<i class="fa fa-arrow-left"></i> |
||||||
|
</a> |
||||||
|
</div> |
||||||
|
</nav> |
||||||
|
<div class="d-flex flex-column justify-content-center align-items-center"> |
||||||
|
<h3><b>Paramètres du quiz</b></h3> |
||||||
|
<form action="{% url "settings" %}" method="POST" name="settings">{% csrf_token %} |
||||||
|
<table class="table w-auto table-responsive-lg"> |
||||||
|
<tr> |
||||||
|
<td>NOM :</td> |
||||||
|
<td><input id="nom" name="nom" maxlength="20"></td> |
||||||
|
</tr> |
||||||
|
<tr> |
||||||
|
<td>Prénom :</td> |
||||||
|
<td><input id="prenom" name="prenom" maxlength="20"></td> |
||||||
|
</tr> |
||||||
|
<tr> |
||||||
|
<td>Nombre<br/>d'atomes :</td> |
||||||
|
<td class="align-middle"> |
||||||
|
<div class="form-check form-check-inline"> |
||||||
|
<input class="form-check-input" type="radio" name="nb" id="inlineRadio1" value="10" checked> |
||||||
|
<label class="form-check-label" for="inlineRadio1">10</label> |
||||||
|
</div> |
||||||
|
<div class="form-check form-check-inline"> |
||||||
|
<input class="form-check-input" type="radio" name="nb" id="inlineRadio1" value="20"> |
||||||
|
<label class="form-check-label" for="inlineRadio2">20</label> |
||||||
|
</div> |
||||||
|
<div class="form-check form-check-inline"> |
||||||
|
<input class="form-check-input" type="radio" name="nb" id="inlineRadio1" value="30"> |
||||||
|
<label class="form-check-label" for="inlineRadio1">30</label> |
||||||
|
</div> |
||||||
|
<div class="form-check form-check-inline"> |
||||||
|
<input class="form-check-input" type="radio" name="nb" id="inlineRadio1" value="40"> |
||||||
|
<label class="form-check-label" for="inlineRadio2">40</label> |
||||||
|
</div> |
||||||
|
</td> |
||||||
|
</tr> |
||||||
|
<tr> |
||||||
|
<td colspan="2"><input type="submit" value="OK"></td> |
||||||
|
</tr> |
||||||
|
</table> |
||||||
|
</form> |
||||||
|
</div>{% endblock %} |
||||||
@ -0,0 +1,3 @@ |
|||||||
|
from django.test import TestCase |
||||||
|
|
||||||
|
# Create your tests here. |
||||||
@ -0,0 +1,10 @@ |
|||||||
|
from django.urls import path |
||||||
|
|
||||||
|
from . import views |
||||||
|
|
||||||
|
urlpatterns = [ |
||||||
|
path('', views.home, name='home'), |
||||||
|
path('quiz_atomes/', views.quiz_atomes, name='quiz_atomes'), |
||||||
|
path('settings/', views.settings, name='settings'), |
||||||
|
path('scores/', views.scores, name='scores'), |
||||||
|
] |
||||||
@ -0,0 +1,98 @@ |
|||||||
|
from django.http import HttpResponse |
||||||
|
from django.template.response import TemplateResponse |
||||||
|
from django.template import loader |
||||||
|
from .models import Atome, Score |
||||||
|
from random import shuffle |
||||||
|
from datetime import datetime |
||||||
|
from django.shortcuts import redirect |
||||||
|
import time |
||||||
|
from django.views.decorators.cache import never_cache |
||||||
|
from django.db.models import Min |
||||||
|
|
||||||
|
def home(request): |
||||||
|
return TemplateResponse(request, 'quiz_atomes/home.html', {'favicon':'vial-solid.svg'}) |
||||||
|
|
||||||
|
def settings(request): |
||||||
|
if request.method =='POST': |
||||||
|
if not request.POST.get('prenom') or not request.POST.get('nom'): |
||||||
|
request.session['pseudo'] = "Anonyme" |
||||||
|
else: |
||||||
|
request.session['pseudo'] = request.POST.get('prenom')[0].upper()+". "+request.POST.get('nom').upper() |
||||||
|
request.session['difficulte'] = request.POST.get('nb') |
||||||
|
return redirect('quiz_atomes') |
||||||
|
else: |
||||||
|
return TemplateResponse(request, 'quiz_atomes/settings.html', {'favicon':'vial-solid.svg'}) |
||||||
|
|
||||||
|
@never_cache |
||||||
|
def quiz_atomes(request): |
||||||
|
|
||||||
|
if request.POST.get('ok'): |
||||||
|
return resultats(request) |
||||||
|
|
||||||
|
if 'pseudo' not in request.session or 'difficulte' not in request.session: |
||||||
|
return redirect('settings') |
||||||
|
|
||||||
|
atome_list = Atome.objects.all() |
||||||
|
random_list = list(atome_list) |
||||||
|
shuffle(random_list) |
||||||
|
random_list = random_list[:int(request.session['difficulte'])] |
||||||
|
|
||||||
|
symbole_list = [] |
||||||
|
for x in random_list: |
||||||
|
symbole_list.append(x.symbole) |
||||||
|
|
||||||
|
request.session['quiz'] = symbole_list |
||||||
|
request.session['time'] = time.time() |
||||||
|
|
||||||
|
template = loader.get_template('quiz_atomes/quiz_atomes.html') |
||||||
|
context = { |
||||||
|
'pseudo': request.session['pseudo'], |
||||||
|
'diff': request.session['difficulte'], |
||||||
|
'atome_list': random_list, |
||||||
|
'favicon':'vial-solid.svg' |
||||||
|
} |
||||||
|
return HttpResponse(template.render(context, request)) |
||||||
|
|
||||||
|
def resultats(request): |
||||||
|
|
||||||
|
points = 0 |
||||||
|
dt = round(time.time()-request.session['time']-1)*-1 |
||||||
|
|
||||||
|
for i in range(int(request.session['difficulte'])): |
||||||
|
if request.POST.get('input'+str(i+1)).casefold()==request.session['quiz'][i].casefold(): |
||||||
|
points+=20 |
||||||
|
elif request.POST.get('input'+str(i+1)).casefold()=="": |
||||||
|
points-=5 |
||||||
|
else: |
||||||
|
points-=10 |
||||||
|
|
||||||
|
score=points+dt |
||||||
|
|
||||||
|
best_score=0 |
||||||
|
if score>0: |
||||||
|
score_list = Score.objects.all().order_by('-score')[:10] |
||||||
|
min_selection_score = score_list.aggregate(Min("score")).get('score__min') |
||||||
|
if score>=min_selection_score: |
||||||
|
new_score = Score(pseudo=request.session['pseudo'], score=int(score), score_date=datetime.now()) |
||||||
|
new_score.save() |
||||||
|
best_score=1 |
||||||
|
|
||||||
|
template = loader.get_template('quiz_atomes/resultats.html') |
||||||
|
context = { |
||||||
|
'points': points, |
||||||
|
'dt': dt, |
||||||
|
'score': score, |
||||||
|
'best_score': best_score, |
||||||
|
'favicon':'vial-solid.svg' |
||||||
|
} |
||||||
|
return HttpResponse(template.render(context, request)) |
||||||
|
|
||||||
|
def scores(request): |
||||||
|
|
||||||
|
score_list = Score.objects.all().order_by('-score')[:10] |
||||||
|
template = loader.get_template('quiz_atomes/scores.html') |
||||||
|
context = { |
||||||
|
'score_list': score_list, |
||||||
|
'favicon':'vial-solid.svg' |
||||||
|
} |
||||||
|
return HttpResponse(template.render(context, request)) |
||||||
Loading…
Reference in new issue