testutils.py: opraveny všechny syntaktické chyby
This commit is contained in:
		
							parent
							
								
									cd0625ef58
								
							
						
					
					
						commit
						6d3acccae8
					
				
					 1 changed files with 155 additions and 115 deletions
				
			
		|  | @ -7,7 +7,7 @@ import django.contrib.auth | ||||||
| from django.db import transaction | from django.db import transaction | ||||||
| import unidecode | import unidecode | ||||||
| 
 | 
 | ||||||
| from seminar.models import Skola, Resitel, Rocnik, Cislo, Problem, Reseni, PrilohaReseni, Nastaveni, Soustredeni, Soustredeni_Ucastnici, Soustredeni_Organizatori, Osoba, Organizator, Prijemce, Tema, Uloha, Konfera, KonferaNode, TextNode, UlohaVzorakNode, RocnikNode, CisloNode, TemaVCisleNode, Text, Hodnoceni | from seminar.models import Skola, Resitel, Rocnik, Cislo, Problem, Reseni, PrilohaReseni, Nastaveni, Soustredeni, Soustredeni_Ucastnici, Soustredeni_Organizatori, Osoba, Organizator, Prijemce, Tema, Uloha, Konfera, KonferaNode, TextNode, UlohaVzorakNode, RocnikNode, CisloNode, TemaVCisleNode, Text, Hodnoceni, UlohaZadaniNode | ||||||
| 
 | 
 | ||||||
| from django.contrib.flatpages.models import FlatPage | from django.contrib.flatpages.models import FlatPage | ||||||
| from django.contrib.sites.models import Site | from django.contrib.sites.models import Site | ||||||
|  | @ -122,7 +122,7 @@ def gen_organizatori(rnd, osoby, last_rocnik, users): | ||||||
| 					organizuje_od=od, organizuje_do=do)) | 					organizuje_od=od, organizuje_do=do)) | ||||||
| 	return organizatori | 	return organizatori | ||||||
| 
 | 
 | ||||||
| def gen_ulohy_do_cisla(rnd, ci, organizatori, resitele, slovnik_cisel, size): | def gen_ulohy_do_cisla(rnd, organizatori, resitele, rocnik_cisla, rocniky, size): | ||||||
| 	# ulohy resene v cisle | 	# 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í"] | 		"Zákeřná", "Fyzikální"] | ||||||
|  | @ -141,63 +141,83 @@ def gen_ulohy_do_cisla(rnd, ci, organizatori, resitele, slovnik_cisel, size): | ||||||
| 		"netriviální aplikace diferenciálních rovnic", "zadání je vnitřně" | 		"netriviální aplikace diferenciálních rovnic", "zadání je vnitřně" | ||||||
| 		"sporné", "nepopsatelně jednoduché", "pokud jste na to nepřišli," | 		"sporné", "nepopsatelně jednoduché", "pokud jste na to nepřišli," | ||||||
| 		"tak jste fakt hloupí"] | 		"tak jste fakt hloupí"] | ||||||
| 				 | 	k = 0 | ||||||
| 	if ci >= 3: #TODO nagenerovat i nody!!! | 	for rocnik in rocniky: | ||||||
| 		for pi in range(1, ((size + 1) // 2) + 1): | 		k+=1 | ||||||
| 			poc_op = rnd.randint(1, 4) # počet opravovatelů | 		cisla = rocnik_cisla[k-1] | ||||||
| 			poc_oboru = rnd.randint(1, 2) | 		for ci in range(3, len(cisla)+1): | ||||||
| 			p = Uloha.objects.create( | 			for pi in range(1, ((size + 1) // 2) + 1): | ||||||
| 				# atributy třídy Problem |  | ||||||
| 				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),  |  | ||||||
| 				# atributy třídy Uloha |  | ||||||
| 				cislo_zadani=slovnik_cisel[ci-2],  |  | ||||||
| 				cislo_reseni=slovnik_cisel[ci],  |  | ||||||
| 				cislo_deadline=slovnik_cisel[ci],  |  | ||||||
| 				max_body = rnd.randint(1, 8) |  | ||||||
| 			) |  | ||||||
| 			p.zadani = " ".join( |  | ||||||
| 				[rnd.choice(sloveso),  |  | ||||||
| 				rnd.choice(koho),  |  | ||||||
| 				rnd.choice(ceho),  |  | ||||||
| 				rnd.choice(jmeno),  |  | ||||||
| 				rnd.choice(kde)] |  | ||||||
| 			) |  | ||||||
| 			 |  | ||||||
| 			#Tomův pokus o opravu bugu: |  | ||||||
| 			text_vzoraku = Text.objects.create( |  | ||||||
| 				na_web = rnd.choice(reseni), |  | ||||||
| 				do_cisla = rnd.choice(reseni) |  | ||||||
| 			) |  | ||||||
| 			vzorak = TextNode.objects.create(text = text_vzoraku) |  | ||||||
| 			uloha_vzorak = UlohaVzorakNode.objects.create(uloha=p, first_child = vzorak) |  | ||||||
| 			p.ulohavzoraknode = uloha_vzorak |  | ||||||
| 			 |  | ||||||
| 
 | 
 | ||||||
| 			p.opravovatele.set(rnd.sample(organizatori,poc_op)) | 				poc_op = rnd.randint(1, 4) # počet opravovatelů | ||||||
| 			p.save() | 				poc_oboru = rnd.randint(1, 2) | ||||||
| 
 | 				p = Uloha.objects.create( | ||||||
| 			# reseni ulohy | 					# atributy třídy Problem | ||||||
| 			poc_reseni = rnd.randint(size // 2, size * 2) | 					nazev=" ".join([rnd.choice(jaka), rnd.choice(co)]), | ||||||
| 			#poc_resitel = rnd.randint(1, 3) <- k čemu je himbajs tahle proměnná?  | 					stav=Problem.STAV_ZADANY, | ||||||
| 			# vybereme nahodny vzorek resitelu o delce poctu reseni  | 					zamereni=rnd.sample(["M", "F", "I", "O", "B"], poc_oboru), | ||||||
| 			# (nebo skoro vsechny resitele, pokud jich je mene nez pocet reseni) | 					autor=rnd.choice(organizatori),  | ||||||
| 			for ri in range(poc_reseni): | 					garant=rnd.choice(organizatori),  | ||||||
| 				res_vyber = rnd.sample(resitele, rnd.randint(1, 5)) | 					kod=str(pi),  | ||||||
| 				# problem a resitele přiřadíme později, ManyToManyField | 					# atributy třídy Uloha | ||||||
| 				# se nedá vyplnit v create() | 					cislo_zadani=cisla[ci-2-1],  | ||||||
| 				res = Reseni.objects.create(forma=rnd.choice(Reseni.FORMA_CHOICES)) | 					cislo_reseni=cisla[ci-1],  | ||||||
| 				res.save() | 					cislo_deadline=cisla[ci-1],  | ||||||
| 				hod = Hodnoceni.objects.create( | 					max_body = rnd.randint(1, 8) | ||||||
| 					body=rnd.randint(0, p.max_body), |  | ||||||
| 					cislo_body=slovnik_cisel[ci],  |  | ||||||
| 					reseni=res, |  | ||||||
| 					problem=p |  | ||||||
| 				) | 				) | ||||||
|  | 
 | ||||||
|  | 				text_zadani = Text.objects.create( | ||||||
|  | 					na_web = " ".join( | ||||||
|  | 					[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(kde)] | ||||||
|  | 					) | ||||||
|  | 				) | ||||||
|  | 				zad = TextNode.objects.create(text = text_zadani) | ||||||
|  | 				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) | ||||||
|  | 				) | ||||||
|  | 				vzorak = TextNode.objects.create(text = text_vzoraku) | ||||||
|  | 				uloha_vzorak = UlohaVzorakNode.objects.create(uloha=p, first_child = vzorak) | ||||||
|  | 				p.ulohavzoraknode = uloha_vzorak | ||||||
|  | 				otec_syn(cisla[ci-1].cislonode, uloha_vzorak) | ||||||
|  | 
 | ||||||
|  | 				p.opravovatele.set(rnd.sample(organizatori,poc_op)) | ||||||
|  | 				p.save() | ||||||
|  | 
 | ||||||
|  | 				# 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  | ||||||
|  | 				# (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)) | ||||||
|  | 					# problem a resitele přiřadíme později, ManyToManyField | ||||||
|  | 					# se nedá vyplnit v create() | ||||||
|  | 					res = Reseni.objects.create(forma=rnd.choice(Reseni.FORMA_CHOICES)) | ||||||
|  | 					#res.save() <- asi smazat | ||||||
|  | 					res.resitele.set(res_vyber) | ||||||
|  | 					res.save() | ||||||
|  | 					hod = Hodnoceni.objects.create( | ||||||
|  | 						body=rnd.randint(0, p.max_body), | ||||||
|  | 						cislo_body=cisla[ci-1], | ||||||
|  | 						reseni=res, | ||||||
|  | 						problem=p | ||||||
|  | 					) | ||||||
|  | 						 | ||||||
| 	return | 	return | ||||||
| 
 | 
 | ||||||
| def gen_soustredeni(rnd, resitele, organizatori): | def gen_soustredeni(rnd, resitele, organizatori): | ||||||
|  | @ -251,10 +271,10 @@ def gen_konfery(rnd, reseni, organizatori, ucastnici, soustredeni): | ||||||
| 	return konfery | 	return konfery | ||||||
| 
 | 
 | ||||||
| def gen_cisla(rnd, rocniky): | def gen_cisla(rnd, rocniky): | ||||||
| 	slovnik_rocnik_cisla = {} | 	rocnik_cisla = [] | ||||||
| 	for rocnik in rocniky: | 	for rocnik in rocniky: | ||||||
| 		otec = True | 		otec = True | ||||||
| 		slovnik_cisel = {} | 		cisla = [] | ||||||
| 		cisel = rnd.randint(4, 8) | 		cisel = rnd.randint(4, 8) | ||||||
| 		node = None | 		node = None | ||||||
| 		for ci in range(1, cisel + 1): | 		for ci in range(1, cisel + 1): | ||||||
|  | @ -289,11 +309,11 @@ def gen_cisla(rnd, rocniky): | ||||||
| 				rocnik.rocniknode.first_child = node | 				rocnik.rocniknode.first_child = node | ||||||
| 				rocnik.save() | 				rocnik.save() | ||||||
| 			 | 			 | ||||||
| 			slovnik_cisel[ci] = cislo | 			cisla.append(cislo) | ||||||
| 		slovnik_rocnik_cisla[rocnik] = slovnik_cisel | 		rocnik_cisla.append(cisla) | ||||||
| 	return slovnik_rocnik_cisla | 	return rocnik_cisla | ||||||
| 
 | 
 | ||||||
| def gen_temata(rnd, rocniky, slovnik_rocnik_cisla, organizatori): | def gen_temata(rnd, rocniky, rocnik_cisla, organizatori): | ||||||
| 	jake = ["Hravé", "Fyzikální", "Nejlepší", "Totálně masakrální", | 	jake = ["Hravé", "Fyzikální", "Nejlepší", "Totálně masakrální", | ||||||
| 					"Šokující", "Magnetické", "Modré", "Překvapivé",  | 					"Šokující", "Magnetické", "Modré", "Překvapivé",  | ||||||
| 					"Plasmatické", "Novoroční"] | 					"Plasmatické", "Novoroční"] | ||||||
|  | @ -302,40 +322,41 @@ def gen_temata(rnd, rocniky, slovnik_rocnik_cisla, organizatori): | ||||||
| 	poc_oboru = rnd.randint(1, 2) | 	poc_oboru = rnd.randint(1, 2) | ||||||
| 	poc_op = rnd.randint(1, 3)		 | 	poc_op = rnd.randint(1, 3)		 | ||||||
| 
 | 
 | ||||||
| 	slovnik_rocnik_temata = {} | 	rocnik_temata = [] | ||||||
|  | 	k = 0 | ||||||
| 	for rocnik in rocniky: | 	for rocnik in rocniky: | ||||||
| 		n = 1 | 		k+=1 | ||||||
| 		temata = {} | 		n = 0 | ||||||
| 		slovnik_cisel = slovnik_rocnik_cisla[rocnik] | 		temata = [] | ||||||
| 		for ci in slovnik_cisel: | 		cisla = rocnik_cisla[k-1] | ||||||
| 			if ci <= 3: | 		for ci in range(1, 3): | ||||||
| 				t = Tema.objects.create( | 			n+=1 | ||||||
| 					# atributy třídy Problem | 			t = Tema.objects.create( | ||||||
| 					nazev=" ".join([rnd.choice(jake), rnd.choice(co)]), | 				# atributy třídy Problem | ||||||
| 					stav=Problem.STAV_ZADANY, | 				nazev=" ".join([rnd.choice(jake), rnd.choice(co)]), | ||||||
| 					zamereni=rnd.sample(["M", "F", "I", "O", "B"], poc_oboru), | 				stav=Problem.STAV_ZADANY, | ||||||
| 					autor=rnd.choice(organizatori),  | 				zamereni=rnd.sample(["M", "F", "I", "O", "B"], poc_oboru), | ||||||
| 					garant=rnd.choice(organizatori),  | 				autor=rnd.choice(organizatori),  | ||||||
| 					kod=str(n), | 				garant=rnd.choice(organizatori),  | ||||||
| 					# atributy třídy Téma | 				kod=str(n), | ||||||
| 					tema_typ=rnd.choice(Tema.TEMA_CHOICES), | 				# atributy třídy Téma | ||||||
| 					rocnik=rocnik | 				tema_typ=rnd.choice(Tema.TEMA_CHOICES), | ||||||
| 				) | 				rocnik=rocnik | ||||||
| 				n+=1 | 			) | ||||||
| 				konec_tematu = min(rnd.randint(ci, 7), len(slovnik_cisel)) | 			konec_tematu = min(rnd.randint(ci, 7), len(cisla)) | ||||||
| 				for i in range(ci, konec_tematu+1): | 			for i in range(ci, konec_tematu+1): | ||||||
| 					node = TemaVCisleNode.objects.create(tema = t) | 				node = TemaVCisleNode.objects.create(tema = t) | ||||||
| 					otec = slovnik_cisel[i].cislonode | 				otec = cisla[i-1].cislonode | ||||||
| 					otec_syn(otec, node) | 				otec_syn(otec, node) | ||||||
| 
 | 
 | ||||||
| 				t.opravovatele.set(rnd.sample(organizatori, poc_op)) | 			t.opravovatele.set(rnd.sample(organizatori, poc_op)) | ||||||
| 				t.save() | 			t.save() | ||||||
| 				temata[n] = (ci, konec_tematu, t) | 			temata.append((ci, konec_tematu, t)) | ||||||
| 		slovnik_rocnik_temata[rocnik] = temata | 		rocnik_temata.append(temata) | ||||||
| 	return slovnik_rocnik_temata | 	return rocnik_temata | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| def gen_ulohy_k_tematum(rocniky, slovnik_rocnik_cisla, slovnik_rocnik_temata): #Tahle funkce je nedodělaná | def gen_ulohy_k_tematum(rnd, rocniky, rocnik_cisla, rocnik_temata, organizatori): | ||||||
| 	# ulohy resene v cisle | 	# 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í"] | 		"Zákeřná", "Fyzikální"] | ||||||
|  | @ -354,19 +375,23 @@ def gen_ulohy_k_tematum(rocniky, slovnik_rocnik_cisla, slovnik_rocnik_temata): # | ||||||
| 		"netriviální aplikace diferenciálních rovnic", "zadání je vnitřně" | 		"netriviální aplikace diferenciálních rovnic", "zadání je vnitřně" | ||||||
| 		"sporné", "nepopsatelně jednoduché", "pokud jste na to nepřišli," | 		"sporné", "nepopsatelně jednoduché", "pokud jste na to nepřišli," | ||||||
| 		"tak jste fakt hloupí"] | 		"tak jste fakt hloupí"] | ||||||
|  | 	k = 0 | ||||||
| 	for rocnik in rocniky: | 	for rocnik in rocniky: | ||||||
| 		slovnik_cisel = slovnik_rocnik_cisla[rocnik] | 		k+=1 | ||||||
| 		slovnik_temat = slovnik_rocnik_temata[rocnik] | 		cisla = rocnik_cisla[k-1] | ||||||
| 		for ci in list(slovnik_cisel)[:-2]: | 		temata = rocnik_temata[k-1] | ||||||
| 			cislo = slovnik_cisel[ci]	 | 		for ci in range(len(cisla)): | ||||||
|  | 			cislo = cisla[ci-1]	 | ||||||
| 			mozna_tema_vcn = cislo.cislonode.first_child | 			mozna_tema_vcn = cislo.cislonode.first_child | ||||||
| 			while mozna_tema_vcn != None: | 			while mozna_tema_vcn != None: | ||||||
| 				if type(mozna_tema_vcn) != TemaVCisleNode: | 				if type(mozna_tema_vcn) != TemaVCisleNode: | ||||||
|  | 					mozna_tema_vcn = mozna_tema_vcn.succ | ||||||
| 					continue | 					continue | ||||||
| 				else: | 				else: | ||||||
| 					tema = mozna_tema_vcn.tema | 					tema = mozna_tema_vcn.tema | ||||||
| 					 | 					 | ||||||
| 				if not slovnik_temat[int(tema.kod)][1] >= ci+2: # Dnes, za přítomnosti dvou svědků Tomáš Domes slíbil, že tento slovník, ve kterém používá jako klíče přirozená čísla, přepíše na normální list. Budiž. Zde jsem také skončil 21. 6. léta Páně 2019 s první vlnou debugování. Bože žehnej těm, kteří toto debugovací břímě převezmou. | 				if not temata[int(tema.kod)-1][1] >= ci+2: | ||||||
|  | 					mozna_tema_vcn = mozna_tema_vcn.succ | ||||||
| 					continue | 					continue | ||||||
| 					 | 					 | ||||||
| 				for i in range(1, rnd.randint(1, 4)): | 				for i in range(1, rnd.randint(1, 4)): | ||||||
|  | @ -380,18 +405,35 @@ def gen_ulohy_k_tematum(rocniky, slovnik_rocnik_cisla, slovnik_rocnik_temata): # | ||||||
| 						zamereni=tema.zamereni, | 						zamereni=tema.zamereni, | ||||||
| 						autor=tema.autor,  | 						autor=tema.autor,  | ||||||
| 						garant=tema.garant,  | 						garant=tema.garant,  | ||||||
| 						opravovatele=rnd.sample(organizatori, poc_op),   |  | ||||||
| 						kod=str(i),  | 						kod=str(i),  | ||||||
| 						cislo_zadani=cislo,  | 						cislo_zadani=cislo,  | ||||||
| 						cislo_reseni=slovnik_cisel[ci+2],  | 						cislo_reseni=cisla[ci+2-1],  | ||||||
| 						cislo_deadline=slovnik_cisel[ci+2],  | 						cislo_deadline=cisla[ci+2-1],  | ||||||
| 						max_body = rnd.randint(1, 8) | 						max_body = rnd.randint(1, 8) | ||||||
| 					) | 					) | ||||||
| 					p.zadani = " ".join([rnd.choice(sloveso), rnd.choice(koho),  | 					 | ||||||
| 						rnd.choice(ceho), rnd.choice(jmeno), rnd.choice(kde)]) | 					p.opravovatele.set(rnd.sample(organizatori, poc_op))   | ||||||
| 					uloha_zadani = UlohaZadaniNode.objects.create(uloha=p) | 					 | ||||||
| 					p.UlohaZadaniNode = uloha_zadani | 					text_zadani = Text.objects.create( | ||||||
| 					otec_syn(mozna_tema_vcn, uloha_zadani) | 						na_web = " ".join( | ||||||
|  | 						[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(kde)] | ||||||
|  | 						) | ||||||
|  | 					) | ||||||
|  | 					zad = TextNode.objects.create(text = text_zadani) | ||||||
|  | 					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( | 					text_vzoraku = Text.objects.create( | ||||||
| 						na_web = rnd.choice(reseni), | 						na_web = rnd.choice(reseni), | ||||||
|  | @ -400,8 +442,7 @@ def gen_ulohy_k_tematum(rocniky, slovnik_rocnik_cisla, slovnik_rocnik_temata): # | ||||||
| 					vzorak = TextNode.objects.create(text = text_vzoraku) | 					vzorak = TextNode.objects.create(text = text_vzoraku) | ||||||
| 					uloha_vzorak = UlohaVzorakNode.objects.create(uloha=p, first_child = vzorak) | 					uloha_vzorak = UlohaVzorakNode.objects.create(uloha=p, first_child = vzorak) | ||||||
| 					p.UlohaVzorakNode = uloha_vzorak | 					p.UlohaVzorakNode = uloha_vzorak | ||||||
| 					#res_tema_vcn =  | 					res_tema_vcn = cisla[ci+2-1].cislonode.first_child | ||||||
| 					res_tema_vcn = slovnik_cisel[ci+2].CisloNode.first_child |  | ||||||
| 					while res_tema_vcn.tema != tema: | 					while res_tema_vcn.tema != tema: | ||||||
| 						res_tema_vcn = res_tema_vcn.succ | 						res_tema_vcn = res_tema_vcn.succ | ||||||
| 					otec_syn(res_tema_vcn, uloha_vzorak) | 					otec_syn(res_tema_vcn, uloha_vzorak) | ||||||
|  | @ -409,6 +450,7 @@ def gen_ulohy_k_tematum(rocniky, slovnik_rocnik_cisla, slovnik_rocnik_temata): # | ||||||
| 					p.save() | 					p.save() | ||||||
| 			 | 			 | ||||||
| 				mozna_tema_vcn = mozna_tema_vcn.succ | 				mozna_tema_vcn = mozna_tema_vcn.succ | ||||||
|  | 	return | ||||||
| 				     | 				     | ||||||
| def otec_syn(otec, syn): | def otec_syn(otec, syn): | ||||||
| 	bratr = otec.first_child | 	bratr = otec.first_child | ||||||
|  | @ -428,6 +470,7 @@ def create_test_data(size = 6, rnd = None): | ||||||
| 	s = Site.objects.filter(name="example.com") | 	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 = "<p>Vítejte na stránce semináře MaM!</p>") | 		content = "<p>Vítejte na stránce semináře MaM!</p>") | ||||||
|  | 	print(s) | ||||||
| 	f.sites.add(s[0]) | 	f.sites.add(s[0]) | ||||||
| 	f.save() | 	f.save() | ||||||
| 
 | 
 | ||||||
|  | @ -466,20 +509,17 @@ def create_test_data(size = 6, rnd = None): | ||||||
| 	rocniky = gen_rocniky(last_rocnik, size) | 	rocniky = gen_rocniky(last_rocnik, size) | ||||||
| 	 | 	 | ||||||
| 	# cisla | 	# cisla | ||||||
| 	slovnik_rocnik_cisla = gen_cisla(rnd, rocniky)	 | 	rocnik_cisla = gen_cisla(rnd, rocniky)	 | ||||||
| 	 | 	 | ||||||
| 	# generování obyčejných úloh do čísel | 	# generování obyčejných úloh do čísel | ||||||
| 	for rocnik in rocniky: | 	gen_ulohy_do_cisla(rnd, organizatori, resitele, rocnik_cisla, rocniky, size) | ||||||
| 		slovnik_cisel = slovnik_rocnik_cisla[rocnik] |  | ||||||
| 		for ci in slovnik_cisel: |  | ||||||
| 			gen_ulohy_do_cisla(rnd, ci, organizatori, resitele, slovnik_cisel, size) |  | ||||||
| 	 | 	 | ||||||
| 	# generování témat, zatím v prvních třech číslech po jednom | 	# generování témat, zatím v prvních třech číslech po jednom | ||||||
| 	# FIXME: více témat | 	# FIXME: více témat | ||||||
| 	slovnik_rocnik_temata = gen_temata(rnd, rocniky, slovnik_rocnik_cisla, organizatori) | 	rocnik_temata = gen_temata(rnd, rocniky, rocnik_cisla, organizatori) | ||||||
| 	 | 	 | ||||||
| 	# generování úloh k tématům ve všech číslech | 	# generování úloh k tématům ve všech číslech | ||||||
| 	gen_ulohy_k_tematum(rocniky, slovnik_rocnik_cisla, slovnik_rocnik_temata) | 	gen_ulohy_k_tematum(rnd, rocniky, rocnik_cisla, rocnik_temata, organizatori) | ||||||
| 
 | 
 | ||||||
| 			# FIXME: misto typu ruzne typy objektu a vnoreni do sebe | 			# FIXME: misto typu ruzne typy objektu a vnoreni do sebe | ||||||
| 			# TODO: vytvorit temata s ruznymi vlakny | 			# TODO: vytvorit temata s ruznymi vlakny | ||||||
|  |  | ||||||
		Loading…
	
		Reference in a new issue
	
	 Tomáš Domes
						Tomáš Domes