From 9374df8c6929db50d65d5334aac60487892534ea Mon Sep 17 00:00:00 2001
From: Mee <me@localhost>
Date: Fri, 17 May 2019 00:29:43 +0200
Subject: [PATCH] =?UTF-8?q?Migrace=20Organizatora,=20aby=20se=20u=C5=BE=20?=
 =?UTF-8?q?nikde=20nepou=C5=BE=C3=ADval=20Djangov=C3=BD=20user?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../migrations/0052_user_to_organizator.py    | 71 +++++++++++++++++++
 1 file changed, 71 insertions(+)
 create mode 100644 seminar/migrations/0052_user_to_organizator.py

diff --git a/seminar/migrations/0052_user_to_organizator.py b/seminar/migrations/0052_user_to_organizator.py
new file mode 100644
index 00000000..15d9102e
--- /dev/null
+++ b/seminar/migrations/0052_user_to_organizator.py
@@ -0,0 +1,71 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.11.15 on 2019-05-16 20:59
+from __future__ import unicode_literals
+
+from django.db import migrations
+
+def spoj_k_organizatorum_osoby(apps, scema_editor):	
+	Organizator = apps.get_model('seminar', 'Organizator')
+	Resitel = apps.get_model('seminar', 'Resitel')
+	for org in Organizator.objects.all():
+		
+		# Spárování organizátora s osobou
+		user = org.user
+		resitele = Resitel.objects.filter(user=user)
+		if resitele.count() != 0:
+			osoba = resitele.first().osoba
+		else:
+			osoba = Osoba(user=user)
+		org.osoba = osoba
+
+		# Přesun informací z organizátora do jeho osoby
+		osoba.prezdivka = org.prezdivka
+		osoba.foto = org.foto
+		osoba.foto_male = org.foto_male
+		
+		# Všechno uložit
+		osoba.save()
+		org.save()
+		
+def fix_problem(apps, schema_editor):
+	Problem = apps.get_model('seminar', 'Problem')
+	Organizator = apps.get_model('seminar', 'Organizator')
+	for pr in Problem.objects.all():
+		if pr.autor_old is not None:
+			pr.autor = Organizator.objects.filter(osoba__user=pr.autor_old).first()
+		else:
+			pr.autor = None
+		if pr.opravovatel is not None:
+			pr.opravovatele.add(Organizator.objects.filter(osoba__user=pr.opravovatel).first())
+		pr.save()
+
+def fix_pohadka(apps, schema_editor):
+	Pohadka = apps.get_model('seminar', 'Pohadka')
+	Organizator = apps.get_model('seminar', 'Organizator')
+	for poh in Pohadka.objects.all():
+		if poh.autor_old is not None:
+			poh.autor = Organizator.objects.filter(osoba__user=poh.autor_old).first()
+		else:
+			poh.autor = None
+		poh.save()
+
+def fix_novinka(apps, schema_editor):
+	Novinky = apps.get_model('seminar', 'Novinky')
+	Organizator = apps.get_model('seminar', 'Organizator')
+	for nov in Novinky.objects.all():
+		nov.autor = Organizator.objects.filter(osoba__user=nov.autor_old).first()
+	
+	
+
+class Migration(migrations.Migration):
+
+	dependencies = [
+		('seminar', '0051_resitel_to_osoba'),
+	]
+
+	operations = [
+		migrations.RunPython(spoj_k_organizatorum_osoby),
+		migrations.RunPython(fix_problem),
+		migrations.RunPython(fix_pohadka),
+		migrations.RunPython(fix_novinka),
+	]