diff --git a/seminar/testutils.py b/seminar/testutils.py index b2d06c4b..8a1581a0 100644 --- a/seminar/testutils.py +++ b/seminar/testutils.py @@ -17,73 +17,89 @@ zlinska = None # tohle bude speciální škola, které později dodáme kontaktn def gen_osoby(rnd, size): jmena_m = ['Aleš', 'Tomáš', 'Martin', 'Jakub', 'Petr', 'Lukáš', 'Cyril', 'Pavel Karel'] - jmena_f = ['Eva', 'Karolína', 'Zuzana', 'Sylvie', 'Iva', 'Jana', 'Marie', + jmena_f = ['Eva', 'Karolína', 'Zuzana', 'Sylvie', 'Iva', 'Jana', 'Marie', 'Marta Iva', 'Shu Shan'] - prijmeni_m = ['Novotný', 'Svoboda', 'Pecha', 'Kořen', 'Holan', 'Uhlíř', 'Chytráček', + prijmeni_m = ['Novotný', 'Svoboda', 'Pecha', 'Kořen', 'Holan', 'Uhlíř', 'Chytráček', 'Pokora', 'Koch', 'Szegedy', 'Rudý', "von Neumann", "d'Este"] - prijmeni_f = ['Novotná', 'Svobodová', 'Machová', 'Zelená', 'Yu-Xin', 'Mlsná', 'Dubná', - 'Mrkvová', 'Suchá', 'Lovelace', 'Holcová', 'Rui'] - prezdivky = ['Kaki', 'Hurdur', 'Maracuja', 'Bobbo', "", "", "", "", "", + prijmeni_f = ['Novotná', 'Svobodová', 'Machová', 'Zelená', 'Yu-Xin', 'Mlsná', 'Dubná', + 'Mrkvová', 'Suchá', 'Lovelace', 'Holcová', 'Rui', "Nováčková Tydlitátová"] + prezdivky = ['Kaki', 'Hurdur', 'Maracuja', 'Bobbo', "", "", "", "", "", "", "", 'Riki', 'Sapa', "", '', '---', 'Koko'] - domain = ['example.com', 'dolujeme.eu', 'mff.cuni.cz', 'strcprstskrzkrk.cz', + domain = ['example.com', 'dolujeme.eu', 'mff.cuni.cz', 'strcprstskrzkrk.cz', 'british.co.uk', 'splachni.to', 'haha.org'] - seznam_ulic = ['Krátká', 'Vlhká', 'Jungmanova', '17. listopadu', '4. října', 'Roztocká', - 'Forstova', 'Generála Františka Janouška', 'Náměstí Války', + seznam_ulic = ['Krátká', 'Vlhká', 'Jungmanova', '17. listopadu', '4. října', 'Roztocká', + 'Forstova', 'Generála Františka Janouška', 'Náměstí Války', 'Svratecké náměstí', 'Zelená lhota', 'Z Plynu', 'K Jezeru', 'U Kocourkova', 'Uštěpačná', 'Ostrorepská', 'Zubří'] - seznam_mest = ['Praha', 'Brno', 'Ostrava', 'Horní Jelení', 'Dolní Zábrdovice', 'Prdelkov', - 'Stará myslivna', 'Kocourkov', 'Šalingrad', 'Medvědí hora', 'Basilej', + seznam_mest = ['Praha', 'Brno', 'Ostrava', 'Horní Jelení', 'Dolní Zábrdovice', 'Prdelkov', + 'Stará myslivna', 'Kocourkov', 'Šalingrad', 'Medvědí hora', 'Basilej', 'Unterschiedlich', 'Old York', 'Lancastershire', 'Vóloďháza'] + seznam_konicku = ["vařím", "jezdím na kole", "řeším diferenciální rovnice", "koukám z okna", + "tancuji", "programuji", "jezdím vlakem", "nedělám nic"] + seznam_oboru = ["matematiku", "matematiku", "matematiku", "fyziku", "literaturu", + "informatiku", "informatiku", "běhání dokolečka"] + osoby = [] - # 30 je náhodná konstanta, size je použité na víc místech a + # 30 je náhodná konstanta, size je použité na víc místech a # říká, jak velká asi chceme testovací data - for i in range(30 * size): + for i in range(30 * size): pohlavi = rnd.randint(0,1) jmeno = rnd.choice([jmena_m, jmena_f][pohlavi]) prijmeni = rnd.choice([prijmeni_m, prijmeni_f][pohlavi]) prezdivka = rnd.choice(prezdivky) email = "@".join([unidecode.unidecode(jmeno), rnd.choice(domain)]) telefon = "".join([str(rnd.choice([k for k in range(10)])) for i in range(9)]) - narozeni = datetime.date(rnd.randint(1980, 2020), rnd.randint(1, 12), + narozeni = datetime.date(rnd.randint(1980, 2020), rnd.randint(1, 12), rnd.randint(1, 28)) ulic = rnd.choice(seznam_ulic) cp = rnd.randint(1, 99) - ulice = " ".join([ulic, str(cp)]) + ulice = "".join([ulic, str(cp)]) mesto = rnd.choice(seznam_mest) psc = "".join([str(rnd.choice([k for k in range(10)])) for i in range(5)]) - osoby.append(Osoba.objects.create(jmeno = jmeno, prijmeni = prijmeni, - prezdivka = prezdivka, pohlavi_muz = pohlavi, email = email, - telefon = telefon, datum_narozeni = narozeni, ulice = ulice, - mesto = mesto, psc = psc, - datum_registrace = datetime.date(rnd.randint(2019, 2029), + + konicek1 = rnd.choice(seznam_konicku) + popis_orga = "Ve volném čase ".join(konicek1) + popis_orga.join(" a kromě toho taky ") + konicek2 = rnd.choice(seznam_konicku) + popis_orga.join(konicek2) + obor = rnd.choice(seznam_oboru) + popis_orga.join(" Studuji ") + popis_orga.join(obor) + popis_orga.join(" a moc mě to baví.") + + osoby.append(Osoba.objects.create(jmeno = jmeno, prijmeni = prijmeni, + prezdivka = prezdivka, pohlavi_muz = pohlavi, email = email, + telefon = telefon, datum_narozeni = narozeni, ulice = ulice, + mesto = mesto, psc = psc, strucny_popis_organizatora = popis_orga, + datum_registrace = datetime.date(rnd.randint(2019, 2029), rnd.randint(1, 12), rnd.randint(1, 28)))) #TODO pridat foto male a velke. Jak? # Pavel tvrdí, že to necháme a přidáme až do adminu return osoby - + def gen_skoly(): #TODO někdy to přepsat, aby jich bylo více skoly = [] - prvnizs = Skola.objects.create(mesto='Praha', stat='CZ', psc='101 00', + prvnizs = Skola.objects.create(mesto='Praha', stat='CZ', psc='101 00', ulice='Krátká 5', nazev='První ZŠ', je_zs=True, je_ss=False) skoly.append(prvnizs) - skoly.append(Skola.objects.create(mesto='Praha', stat='CZ', psc='101 00', + skoly.append(Skola.objects.create(mesto='Praha', stat='CZ', psc='101 00', ulice='Krátká 5', nazev='První SŠ', je_zs=False, je_ss=True)) - skoly.append(Skola.objects.create(mesto='Praha', stat='CZ', psc='102 00', + skoly.append(Skola.objects.create(mesto='Praha', stat='CZ', psc='102 00', ulice='Dlouhá 5', nazev='Druhá SŠ', je_zs=False, je_ss=True)) - skoly.append(Skola.objects.create(mesto='Praha', stat='CZ', psc='103 00', + skoly.append(Skola.objects.create(mesto='Praha', stat='CZ', psc='103 00', ulice='Široká 3', nazev='Třetí SŠ a ZŠ', je_zs=True, je_ss=True)) - skoly.append(Skola.objects.create(mesto='Ostrava', stat='CZ', psc='700 00', + skoly.append(Skola.objects.create(mesto='Ostrava', stat='CZ', psc='700 00', ulice='Hluboká 42', nazev='Hutní gympl', je_zs=False, je_ss=True)) - skoly.append(Skola.objects.create(mesto='Humenné', stat='SK', psc='012 34', + skoly.append(Skola.objects.create(mesto='Humenné', stat='SK', psc='012 34', ulice='Pltká 1', nazev='Sredná škuola', je_zs=False, je_ss=True)) global zlinska - zlinska = Skola.objects.create(mesto = 'Zlín', stat='CZ', psc='76001', - ulice='náměstí T.G. Masaryka 2734-9', - nazev='Gymnázium a Střední jazyková škola s právem SJZ', + zlinska = Skola.objects.create(mesto = 'Zlín', stat='CZ', psc='76001', + ulice='náměstí T.G. Masaryka 2734-9', + nazev='Gymnázium a Střední jazyková škola s právem SJZ', kratky_nazev="GaSJŠspSJZ", je_zs=True, je_ss=True) skoly.append(zlinska) return skoly @@ -93,8 +109,8 @@ def gen_resitele(rnd, osoby, skoly): for os in osoby: rand = rnd.randint(0, 8) if not (rand % 8 == 0): - resitele.append(Resitel.objects.create(osoba=os, skola=rnd.choice(skoly), - rok_maturity=rnd.randint(2019, 2029), + resitele.append(Resitel.objects.create(osoba=os, skola=rnd.choice(skoly), + rok_maturity=rnd.randint(2019, 2029), zasilat=rnd.choice(Resitel.ZASILAT_CHOICES))) return resitele @@ -111,20 +127,20 @@ def gen_organizatori(rnd, osoby, last_rocnik, users): if (rand % 8 == 0): pusobnost = rnd.randint(1, last_rocnik) od = datetime.date(1993 + pusobnost, rnd.randint(1, 12), rnd.randint(1, 28)) - do = datetime.date(od.year + rnd.randint(1, 6), rnd.randint(1, 12), + do = datetime.date(od.year + rnd.randint(1, 6), rnd.randint(1, 12), rnd.randint(1, 28)) #aktualni organizatori jeste nemaji vyplnene organizuje_do if do.year > datetime.datetime.now().year: do = None - organizatori.append(Organizator.objects.create(osoba=os, + organizatori.append(Organizator.objects.create(osoba=os, organizuje_od=od, organizuje_do=do)) return organizatori def gen_ulohy_do_cisla(rnd, organizatori, resitele, rocnik_cisla, rocniky, size): # ulohy resene v cisle - jaka = ["Šachová", "Černá", "Větrná", "Dlouhá", "Křehká", "Rychlá", + jaka = ["Šachová", "Černá", "Větrná", "Dlouhá", "Křehká", "Rychlá", "Zákeřná", "Fyzikální"] - co = ["kostka", "smršť", "díra", "zrada", "toulka", "tyč", + co = ["kostka", "smršť", "díra", "zrada", "toulka", "tyč", "úloha", "blecha"] sloveso = ["Najděte", "Spočítejte", "Zapište", "Změřte", "Odhadněte"] koho = ["délku", "počet", "množství", "dílky"] @@ -132,9 +148,9 @@ def gen_ulohy_do_cisla(rnd, organizatori, resitele, rocnik_cisla, rocniky, size) jmeno = ["řešení", "tahů", "čísel", "kalhot", "koulí", "hadů"] kde = ["na zemi", "ve vesmíru", "ve vzduchu", "na šňůře", "v letadle"] obor = ["M", "F", "I", "O", "B"] - reseni = ["to je přece jasné", "triviální", "omlouváme se," - "otevřený problém", "neřešitelné", "triviálně triviální", - "použitím věty z prvního semestru na matfyzu", + reseni = ["to je přece jasné", "triviální", "omlouváme se," + "otevřený problém", "neřešitelné", "triviálně triviální", + "použitím věty z prvního semestru na matfyzu", "jednoduše pomocí látky z druhého semestru na matfyzu", "netriviální aplikace diferenciálních rovnic", "zadání je vnitřně" "sporné", "nepopsatelně jednoduché", "pokud jste na to nepřišli," @@ -153,29 +169,29 @@ def gen_ulohy_do_cisla(rnd, organizatori, resitele, rocnik_cisla, rocniky, size) nazev=" ".join([rnd.choice(jaka), rnd.choice(co)]), stav=Problem.STAV_ZADANY, zamereni=rnd.sample(["M", "F", "I", "O", "B"], poc_oboru), - autor=rnd.choice(organizatori), - garant=rnd.choice(organizatori), - kod=str(pi), + autor=rnd.choice(organizatori), + garant=rnd.choice(organizatori), + kod=str(pi), # atributy třídy Uloha - cislo_zadani=cisla[ci-2-1], - cislo_reseni=cisla[ci-1], - cislo_deadline=cisla[ci-1], + cislo_zadani=cisla[ci-2-1], + cislo_reseni=cisla[ci-1], + cislo_deadline=cisla[ci-1], max_body = rnd.randint(1, 8) ) text_zadani = Text.objects.create( na_web = " ".join( - [rnd.choice(sloveso), - rnd.choice(koho), - rnd.choice(ceho), - rnd.choice(jmeno), + [rnd.choice(sloveso), + rnd.choice(koho), + rnd.choice(ceho), + rnd.choice(jmeno), rnd.choice(kde)] ), do_cisla = " ".join( - [rnd.choice(sloveso), - rnd.choice(koho), - rnd.choice(ceho), - rnd.choice(jmeno), + [rnd.choice(sloveso), + rnd.choice(koho), + rnd.choice(ceho), + rnd.choice(jmeno), rnd.choice(kde)] ) ) @@ -183,7 +199,7 @@ def gen_ulohy_do_cisla(rnd, organizatori, resitele, rocnik_cisla, rocniky, size) uloha_zadani = UlohaZadaniNode.objects.create(uloha=p, first_child = zad) p.ulohazadaninode = uloha_zadani otec_syn(cisla[ci-2-1].cislonode, uloha_zadani) - + text_vzoraku = Text.objects.create( na_web = rnd.choice(reseni), do_cisla = rnd.choice(reseni) @@ -198,8 +214,8 @@ def gen_ulohy_do_cisla(rnd, organizatori, resitele, rocnik_cisla, rocniky, size) # reseni ulohy poc_reseni = rnd.randint(size // 2, size * 2) - #poc_resitel = rnd.randint(1, 3) <- k čemu je himbajs tahle proměnná? - # vybereme nahodny vzorek resitelu o delce poctu reseni + #poc_resitel = rnd.randint(1, 3) <- k čemu je himbajs tahle proměnná? + # vybereme nahodny vzorek resitelu o delce poctu reseni # (nebo skoro vsechny resitele, pokud jich je mene nez pocet reseni) for ri in range(poc_reseni): res_vyber = rnd.sample(resitele, rnd.randint(1, 5)) @@ -215,7 +231,7 @@ def gen_ulohy_do_cisla(rnd, organizatori, resitele, rocnik_cisla, rocniky, size) reseni=res, problem=p ) - + return def gen_soustredeni(rnd, resitele, organizatori): @@ -255,8 +271,8 @@ def gen_rocniky(last_rocnik, size): def gen_konfery(size, rnd, organizatori, resitele, soustredeni): konfery = [] for _ in range(1, size): #FIXME Tu range si změňte jak chcete, nevím, co přesně znamená size (asi Anet?) - # Anet: size je parametr udávající velikost testovacích dat a dá se pomocí ní škálovat, - # kolik dat se nageneruje + # Anet: size je parametr udávající velikost testovacích dat a dá se pomocí ní škálovat, + # kolik dat se nageneruje konfera = Konfera.objects.create( nazev=rnd.choice(['Pozorování', 'Zkoumání', 'Modelování', 'Počítání', 'Zkoušení']) + rnd.choice([' vlastností', ' jevů', ' charakteristik']) + rnd.choice([' vektorových prostorů', ' kinetické terorie látek', ' molekulární biologie', ' syntentických stromů']), anotace=lorem.paragraph(), @@ -271,7 +287,7 @@ def gen_konfery(size, rnd, organizatori, resitele, soustredeni): # Konfery_Ucastnici.objects.create(resitel=res, konfera=konfera) konfera.save() konfery.append(konfera) - + konferanode = KonferaNode.objects.create(konfera=konfera) konferanode.save() return konfery @@ -290,21 +306,21 @@ def gen_cisla(rnd, rocniky): mesic_vydani = (ci - 1)*2 + 6 # celociselné dělení mi řekne, jestli to je první nebo druhý rok ročníku vydano = datetime.date(rocnik.prvni_rok + mesic_vydani // 12, - (mesic_vydani - 1) % 12 + 1, + (mesic_vydani - 1) % 12 + 1, + rnd.randint(1, 28)) + deadline = datetime.date(rocnik.prvni_rok + (mesic_vydani + 2) // 12, + (mesic_vydani + 1) % 12 + 1, rnd.randint(1, 28)) - deadline = datetime.date(rocnik.prvni_rok + (mesic_vydani + 2) // 12, - (mesic_vydani + 1) % 12 + 1, - rnd.randint(1, 28)) - + # posledni 2 cisla v rocniku nemaji deadline if (ci + 2 > cisel): deadline = None - + cislo = Cislo.objects.create( rocnik = rocnik, - cislo = str(ci), + cislo = str(ci), datum_vydani=vydano, - datum_deadline=deadline, + datum_deadline=deadline, verejne_db=True ) node2 = CisloNode.objects.create(cislo = cislo, succ = node) @@ -314,19 +330,19 @@ def gen_cisla(rnd, rocniky): otec = False rocnik.rocniknode.first_child = node rocnik.save() - + cisla.append(cislo) rocnik_cisla.append(cisla) return rocnik_cisla def gen_temata(rnd, rocniky, rocnik_cisla, organizatori): jake = ["Hravé", "Fyzikální", "Nejlepší", "Totálně masakrální", - "Šokující", "Magnetické", "Modré", "Překvapivé", + "Šokující", "Magnetické", "Modré", "Překvapivé", "Plasmatické", "Novoroční"] co = ["téma", "záření", "stavení", "jiskření", "jelito", "drama", "kuře", "moře", "klání", "proudění", "čekání"] poc_oboru = rnd.randint(1, 2) - poc_op = rnd.randint(1, 3) + poc_op = rnd.randint(1, 3) rocnik_temata = [] k = 0 @@ -342,8 +358,8 @@ def gen_temata(rnd, rocniky, rocnik_cisla, organizatori): nazev=" ".join([rnd.choice(jake), rnd.choice(co)]), stav=Problem.STAV_ZADANY, zamereni=rnd.sample(["M", "F", "I", "O", "B"], poc_oboru), - autor=rnd.choice(organizatori), - garant=rnd.choice(organizatori), + autor=rnd.choice(organizatori), + garant=rnd.choice(organizatori), kod=str(n), # atributy třídy Téma tema_typ=rnd.choice(Tema.TEMA_CHOICES), @@ -364,9 +380,9 @@ def gen_temata(rnd, rocniky, rocnik_cisla, organizatori): def gen_ulohy_k_tematum(rnd, rocniky, rocnik_cisla, rocnik_temata, organizatori): # ulohy resene v cisle - jaka = ["Šachová", "Černá", "Větrná", "Dlouhá", "Křehká", "Rychlá", + jaka = ["Šachová", "Černá", "Větrná", "Dlouhá", "Křehká", "Rychlá", "Zákeřná", "Fyzikální"] - co = ["kostka", "smršť", "díra", "zrada", "toulka", "tyč", + co = ["kostka", "smršť", "díra", "zrada", "toulka", "tyč", "úloha", "blecha"] sloveso = ["Najděte", "Spočítejte", "Zapište", "Změřte", "Odhadněte"] koho = ["délku", "počet", "množství", "dílky"] @@ -374,9 +390,9 @@ def gen_ulohy_k_tematum(rnd, rocniky, rocnik_cisla, rocnik_temata, organizatori) jmeno = ["řešení", "tahů", "čísel", "kalhot", "koulí", "hadů"] kde = ["na zemi", "ve vesmíru", "ve vzduchu", "na šňůře", "v letadle"] obor = ["M", "F", "I", "O", "B"] - reseni = ["to je přece jasné", "triviální", "omlouváme se," - "otevřený problém", "neřešitelné", "triviálně triviální", - "použitím věty z prvního semestru na matfyzu", + reseni = ["to je přece jasné", "triviální", "omlouváme se," + "otevřený problém", "neřešitelné", "triviálně triviální", + "použitím věty z prvního semestru na matfyzu", "jednoduše pomocí látky z druhého semestru na matfyzu", "netriviální aplikace diferenciálních rovnic", "zadání je vnitřně" "sporné", "nepopsatelně jednoduché", "pokud jste na to nepřišli," @@ -387,7 +403,7 @@ def gen_ulohy_k_tematum(rnd, rocniky, rocnik_cisla, rocnik_temata, organizatori) cisla = rocnik_cisla[k-1] temata = rocnik_temata[k-1] for ci in range(len(cisla)): - cislo = cisla[ci-1] + cislo = cisla[ci-1] mozna_tema_vcn = cislo.cislonode.first_child while mozna_tema_vcn != None: if type(mozna_tema_vcn) != TemaVCisleNode: @@ -395,44 +411,44 @@ def gen_ulohy_k_tematum(rnd, rocniky, rocnik_cisla, rocnik_temata, organizatori) continue else: tema = mozna_tema_vcn.tema - + if not temata[int(tema.kod)-1][1] >= ci+2: mozna_tema_vcn = mozna_tema_vcn.succ continue - + for i in range(1, rnd.randint(1, 4)): poc_op = rnd.randint(1, 4) poc_oboru = rnd.randint(1, 2) p = Uloha.objects.create( - nazev=": ".join([tema.nazev, + nazev=": ".join([tema.nazev, "úloha {}.".format(i)]), nadproblem=tema, stav=Problem.STAV_ZADANY, zamereni=tema.zamereni, - autor=tema.autor, - garant=tema.garant, - kod=str(i), - cislo_zadani=cislo, - cislo_reseni=cisla[ci+2-1], - cislo_deadline=cisla[ci+2-1], + autor=tema.autor, + garant=tema.garant, + kod=str(i), + cislo_zadani=cislo, + cislo_reseni=cisla[ci+2-1], + cislo_deadline=cisla[ci+2-1], max_body = rnd.randint(1, 8) ) - - p.opravovatele.set(rnd.sample(organizatori, poc_op)) - + + p.opravovatele.set(rnd.sample(organizatori, poc_op)) + text_zadani = Text.objects.create( na_web = " ".join( - [rnd.choice(sloveso), - rnd.choice(koho), - rnd.choice(ceho), - rnd.choice(jmeno), + [rnd.choice(sloveso), + rnd.choice(koho), + rnd.choice(ceho), + rnd.choice(jmeno), rnd.choice(kde)] ), do_cisla = " ".join( - [rnd.choice(sloveso), - rnd.choice(koho), - rnd.choice(ceho), - rnd.choice(jmeno), + [rnd.choice(sloveso), + rnd.choice(koho), + rnd.choice(ceho), + rnd.choice(jmeno), rnd.choice(kde)] ) ) @@ -440,7 +456,7 @@ def gen_ulohy_k_tematum(rnd, rocniky, rocnik_cisla, rocnik_temata, organizatori) uloha_zadani = UlohaZadaniNode.objects.create(uloha=p, first_child = zad) p.ulohazadaninode = uloha_zadani otec_syn(mozna_tema_vcn, uloha_zadani) # TODO dělá se podproblém takto??? TODO - + text_vzoraku = Text.objects.create( na_web = rnd.choice(reseni), do_cisla = rnd.choice(reseni) @@ -452,9 +468,9 @@ def gen_ulohy_k_tematum(rnd, rocniky, rocnik_cisla, rocnik_temata, organizatori) while res_tema_vcn.tema != tema: res_tema_vcn = res_tema_vcn.succ otec_syn(res_tema_vcn, uloha_vzorak) - + p.save() - + mozna_tema_vcn = mozna_tema_vcn.succ return @@ -470,7 +486,7 @@ def gen_novinky(rnd, organizatori): novinka = Novinky.objects.create(id=i,autor=rnd.choice(organizatori),text=(text_novinky+", těšíme se na vás!"),zverejneno=rnd.choice([True,False])) novinka.save() return - + def otec_syn(otec, syn): bratr = otec.first_child syn.succ = bratr @@ -487,7 +503,7 @@ def create_test_data(size = 6, rnd = None): # static URL stranky # FIXME: nakopirovat sem vsechny z produkcni databaze s = Site.objects.filter(name="example.com") - f = FlatPage.objects.create(url="/", title="Seminář M&M", + f = FlatPage.objects.create(url="/", title="Seminář M&M", content = "
Vítejte na stránce semináře MaM!
") print(s) f.sites.add(s[0]) @@ -521,33 +537,33 @@ def create_test_data(size = 6, rnd = None): # prijemci prijemci = gen_prijemci(rnd, osoby) - + global zlinska zlinska.kontaktni_osoba=rnd.choice(osoby) zlinska.save() # rocniky rocniky = gen_rocniky(last_rocnik, size) - + # cisla - rocnik_cisla = gen_cisla(rnd, rocniky) - + rocnik_cisla = gen_cisla(rnd, rocniky) + # generování obyčejných úloh do čísel gen_ulohy_do_cisla(rnd, organizatori, resitele, rocnik_cisla, rocniky, size) - + # generování témat, zatím v prvních třech číslech po jednom # FIXME: více témat rocnik_temata = gen_temata(rnd, rocniky, rocnik_cisla, organizatori) - + # generování úloh k tématům ve všech číslech gen_ulohy_k_tematum(rnd, rocniky, rocnik_cisla, rocnik_temata, organizatori) - + #generování soustředění soustredeni = gen_soustredeni(rnd, resitele, organizatori) - + #generování konfer konfery = gen_konfery(size, rnd, organizatori, resitele, soustredeni) - + # TODO: nastavi správně, kolik se čeho generuje, aby rozsahy přibližně odpovídaly # FIXME: misto typu ruzne typy objektu a vnoreni do sebe (Tom nechápe, co je tímto fixme míněno) # TODO: vytvorit temata s ruznymi vlakny