Zprovozněno generování titulů.
This commit is contained in:
		
							parent
							
								
									e402f6c386
								
							
						
					
					
						commit
						31e037f242
					
				
					 3 changed files with 28 additions and 28 deletions
				
			
		|  | @ -1,6 +1,5 @@ | |||
| {% if broken %} | ||||
| %% POZOR! %% Dva resitele maji stejne makro!!! | ||||
| %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% | ||||
| POZOR! Kolize jmen! Dva řešitelé mají stejné makro! | ||||
| {% endif %} | ||||
| 
 | ||||
| {% autoescape off %} | ||||
|  |  | |||
|  | @ -87,8 +87,8 @@ urlpatterns = [ | |||
| 	path('cislo/<int:rocnik>.<int:cislo>/obalky.pdf', | ||||
| 		staff_member_required(views.cisloObalkyView), name='seminar_cislo_obalky'), | ||||
| 
 | ||||
| 	#path('cislo/(?P<rocnik>\d+).(?P<cislo>[0-9-]+)/tituly.tex', | ||||
| 	 #   staff_member_required(views.TitulyView), name='seminar_cislo_titul'), | ||||
| 	path('cislo/<int:rocnik>.<int:cislo>/tituly.tex', | ||||
| 	    	staff_member_required(views.TitulyView), name='seminar_cislo_titul'), | ||||
| 	path('stav', | ||||
| 		staff_member_required(views.StavDatabazeView), name='stav_databaze'), | ||||
| 	path('cislo/<int:rocnik>.<int:cislo>/obalkovani', | ||||
|  |  | |||
|  | @ -855,30 +855,31 @@ def oldObalkovaniView(request, rocnik, cislo): | |||
| 
 | ||||
| ### Tituly | ||||
| 
 | ||||
| # TODO udelat neco jako get_objects_or_404 | ||||
| # FIXME: prepsat, aby nepouzivalo VysledkyK... | ||||
| #def TitulyView(request, rocnik, cislo): | ||||
| #	rocnik_obj = Rocnik.objects.get(rocnik = rocnik) | ||||
| #	resitele = Resitel.objects.filter(rok_maturity__gte = rocnik_obj.prvni_rok) | ||||
| #	cislo_obj = Cislo.objects.get(rocnik = rocnik_obj, cislo = cislo) | ||||
| # | ||||
| #	asciijmena = [] | ||||
| #	broken = False | ||||
| # | ||||
| #	for resitel in resitele: | ||||
| #		try: | ||||
| #			vys = VysledkyKCisluOdjakziva.objects.get(resitel = resitel, cislo = cislo_obj) | ||||
| #			body = vys.body | ||||
| #		except ObjectDoesNotExist: | ||||
| #			body = 0 | ||||
| #		resitel.titul = resitel.get_titul(body) | ||||
| #		resitel.ascii = unicodedata.normalize('NFKD',resitel.jmeno+resitel.prijmeni).encode("ascii","ignore").replace(" ","") | ||||
| #		if resitel.ascii not in asciijmena: | ||||
| #			asciijmena.append(resitel.ascii) | ||||
| #		else: | ||||
| #			broken = True | ||||
| # | ||||
| #	return render(request, 'seminar/archiv/tituly.tex',{'resitele': resitele,'broken':broken},content_type="text/plain") | ||||
| def TitulyView(request, rocnik, cislo): | ||||
| 	rocnik_obj = Rocnik.objects.get(rocnik = rocnik) | ||||
| 	resitele = Resitel.objects.filter(rok_maturity__gte = rocnik_obj.prvni_rok) | ||||
| 	cislo_obj = Cislo.objects.get(rocnik = rocnik_obj, poradi = cislo) | ||||
| 
 | ||||
| 	asciijmena = [] | ||||
| 	jmenovci = False # detekuje, zda jsou dva řešitelé jmenovci (modulo nabodeníčka), pokud ano, vrátí se jako true | ||||
| 	slovnik_s_body = body_resitelu_odjakziva(rocnik_obj, resitele) | ||||
| 
 | ||||
| 	for resitel in resitele: | ||||
| 		resitel.titul = resitel.get_titul(slovnik_s_body[resitel.id]) | ||||
| 		jmeno = resitel.osoba.jmeno+resitel.osoba.prijmeni | ||||
| 		# převedeme jména a příjmení řešitelů do ASCII | ||||
| 		ascii_jmeno_bytes = unicodedata.normalize('NFKD', jmeno).encode("ascii","ignore") | ||||
| 		# vrátí se byte string, převedeme na standardní string | ||||
| 		ascii_jmeno_divnoznaky = str(ascii_jmeno_bytes, "utf-8", "ignore").replace(" ","") | ||||
| 		resitel.ascii = ''.join(a for a in ascii_jmeno_divnoznaky if a.isalnum()) | ||||
| 		if resitel.ascii not in asciijmena: | ||||
| 			asciijmena.append(resitel.ascii) | ||||
| 		else: | ||||
| 			jmenovci = True | ||||
| 	 | ||||
| 	return render(request, 'seminar/archiv/tituly.tex', | ||||
| 		{'resitele': resitele,'jmenovci':jmenovci},content_type="text/plain") | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| ### Soustredeni | ||||
|  |  | |||
		Loading…
	
		Reference in a new issue
	
	 Anet
						Anet